CAMB.AI
App · Voice AI · 13 actions
Make lifelike voice-overs, translate and speak text, transcribe and subtitle recordings, dub videos into other languages, and create sound effects, music and custom voices with CAMB.AI.
Actions
| Action | What it does |
|---|---|
| Clone a voice | Make a new voice from a recording of someone speaking, to use in any speech step. |
| Create subtitles | Make subtitle files for a video in one or more languages, ready to upload with the video. |
| Delete a voice | Permanently delete one of your own voices, such as one made with 'Clone a voice'. |
| Dub a video | Dub a video into another language and save the dubbed video, ready to post or share. |
| Generate a sound effect or music | Describe a sound or a piece of music and get it back as an audio file. |
| Generate speech | Turn text into a natural voice-over and save it as an audio file a later step can attach, upload or post. |
| Get a dubbed video | Collect a dub that was still in progress when 'Dub a video' stopped waiting, or check whether it is ready yet. |
| List voices | List every voice your CAMB.AI account can speak in, your own voices included. |
| Narrate a long text | Turn an article, chapter or script of any length into one narrated audio file, like an audiobook. |
| Separate voice from background | Split a recording into two files: the voices on their own, and the music and background sound on their own. |
| Transcribe a recording | Write down what is said in an audio or video recording, with who said each line and when. |
| Translate and speak | Translate text into another language and have a voice speak the translation. |
| Translate text | Translate text into another language. |
Clone a voice
Make a new voice from a recording of someone speaking, to use in any speech step. Only clone voices you have permission to use.
Inputs
- Voice name
nametextRequired - What to call the voice in the Voice list.
- Recording
recordingtextRequired - 10 to 60 seconds of one person speaking clearly, as MP3, WAV, FLAC or AAC: upload it, pick it from an earlier step, or paste a link.
- Gender
gendertext - The speaker's gender.One of:
2(Female),1(Male),9(Neutral),0(Not specified). Default:0. - Age
agenumber - Roughly how old the speaker is. Leave blank for 30.From 1 to 120.
- Language
languagetext - The language spoken in the recording.
- Description
descriptiontext - Optional notes on the voice, such as its tone.
- Clean up the recording
clean_up_recordingtrue/false - Remove background noise before cloning.
Outputs
nametext- The new voice's name.
statustext- Status of the action execution ("success" on success).
voice_idnumber- The new voice's id, for the Voice field.
Example output
{
"name": "Sam",
"status": "success",
"voice_id": 190455
}Create subtitles
Make subtitle files for a video in one or more languages, ready to upload with the video.
Inputs
- Video or audio link
media_urltextRequired - A public link CAMB.AI can open: a YouTube video, a shared Google Drive file, or a direct link to an MP4, MOV, MP3 or WAV file.
- Spoken language
source_languagetextRequired - The language spoken in it.
- Subtitle languages
target_languageslistRequired - The languages to make subtitles in. Include the spoken language for subtitles of what is actually said.
- File format
subtitle_formattext - SRT works almost everywhere.One of:
srt(SRT · most video players, YouTube and Vimeo),vtt(VTT · web video players),txt(Plain text). Default:srt. - Accuracy
accuracytext - Highest takes longer but catches more of what is said.One of:
fast(Standard · faster),slow(Highest · takes longer). Default:fast.
Outputs
contenttext- The first language's subtitles as text.
content_typetext- The file's media type.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- Every subtitle file, in order.
filenametext- Name of the saved file.
size_bytesnumber- Size of the file in bytes.
source_languagetext- Spoken language.
statustext- Status of the action execution ("success" on success).
subtitle_formattext- srt, vtt or txt.
subtitleslist- One saved subtitle file per language.
urltext- Download link for the saved file.
Example output
{
"content": "1\n00:00:00,500 --> 00:00:02,800\nBienvenidos de nuevo.\n",
"content_type": "application/x-subrip",
"document_ref": "doc_6f7e8d9c",
"documents": [
{
"content_type": "application/x-subrip",
"document_ref": "doc_6f7e8d9c",
"filename": "subtitles-es-es.srt",
"size_bytes": 52,
"url": "/actions/core/serve-document/doc_6f7e8d9c"
}
],
"filename": "subtitles-es-es.srt",
"size_bytes": 52,
"source_language": "en-us",
"status": "success",
"subtitle_format": "srt",
"subtitles": [
{
"content": "1\n00:00:00,500 --> 00:00:02,800\nBienvenidos de nuevo.\n",
"content_type": "application/x-subrip",
"document_ref": "doc_6f7e8d9c",
"filename": "subtitles-es-es.srt",
"language": "es-es",
"size_bytes": 52,
"url": "/actions/core/serve-document/doc_6f7e8d9c"
}
],
"url": "/actions/core/serve-document/doc_6f7e8d9c"
}Delete a voice
Permanently delete one of your own voices, such as one made with 'Clone a voice'. CAMB.AI's own voices can't be deleted.
Inputs
- Voice
voice_idtextRequired - The voice to delete. It must be one of your own.
Outputs
deletedtrue/false- True once it is gone.
statustext- Status of the action execution ("success" on success).
voice_idnumber- The voice deleted.
Example output
{
"deleted": true,
"status": "success",
"voice_id": 190455
}Dub a video
Dub a video into another language and save the dubbed video, ready to post or share.
Inputs
- Video link
video_urltextRequired - A public link CAMB.AI can open: a YouTube video, a shared Google Drive file, or a direct link to an MP4 or MOV file. Audio files work too.
- Spoken language
source_languagetextRequired - The language spoken in it.
- Dub into
target_languagetextRequired - The language to dub it into.
- Accuracy
accuracytext - Highest takes longer but catches more of what is said.One of:
fast(Standard · faster),slow(Highest · takes longer). Default:fast. - Keep background music
keep_background_musictrue/false - On by default. Turn off to drop music playing under the speech.Default:
true.
Outputs
audioobject- The dubbed voice track on its own, saved.
content_typetext- The file's media type.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- The dubbed video and voice track.
dub_statustext- done when the dub is ready, processing while it is not.
dubbing_idtext- The dub's ID, for 'Get a dubbed video'.
filenametext- Name of the saved file.
size_bytesnumber- Size of the file in bytes.
statustext- Status of the action execution ("success" on success).
target_languagetext- The dubbed language.
texttext- The dubbed script as one text.
transcriptlist- What is said in the dub, line by line.
urltext- Download link for the saved file.
videoobject- The dubbed video, saved.
video_linktext- CAMB.AI's own link to the dubbed video. It expires.
video_savedtrue/false- False when the video is over 200 MB and was not saved; use video_link instead.
Example output
{
"audio": {
"content_type": "audio/wav",
"document_ref": "doc_7b20e4d2",
"filename": "camb-dub-es-es-voice.wav",
"size_bytes": 1921024,
"url": "/actions/core/serve-document/doc_7b20e4d2"
},
"content_type": "video/mp4",
"document_ref": "doc_7b20e4d1",
"documents": [
{
"content_type": "video/mp4",
"document_ref": "doc_7b20e4d1",
"filename": "camb-dub-es-es.mp4",
"size_bytes": 8912896,
"url": "/actions/core/serve-document/doc_7b20e4d1"
},
{
"content_type": "audio/wav",
"document_ref": "doc_7b20e4d2",
"filename": "camb-dub-es-es-voice.wav",
"size_bytes": 1921024,
"url": "/actions/core/serve-document/doc_7b20e4d2"
}
],
"dub_status": "done",
"dubbing_id": "a8f3c2e1-4b5d-4e6f-9a7b-1c2d3e4f5a6b",
"filename": "camb-dub-es-es.mp4",
"size_bytes": 8912896,
"status": "success",
"target_language": "es-es",
"text": "Bienvenidos de nuevo.",
"transcript": [
{
"end": 2.8,
"speaker": "SPEAKER_0",
"start": 0.5,
"text": "Bienvenidos de nuevo."
}
],
"url": "/actions/core/serve-document/doc_7b20e4d1",
"video": {
"content_type": "video/mp4",
"document_ref": "doc_7b20e4d1",
"filename": "camb-dub-es-es.mp4",
"size_bytes": 8912896,
"url": "/actions/core/serve-document/doc_7b20e4d1"
},
"video_link": "https://storage.camb.ai/runs/48213/dubbed.mp4",
"video_saved": true
}Generate a sound effect or music
Describe a sound or a piece of music and get it back as an audio file.
Inputs
- Description
prompttextRequired - What it should sound like. Short, concrete descriptions work best.
- Kind
sound_typetext - A sound effect, or music.One of:
sound(Sound effect),music. Default:sound. - Length in seconds
durationnumber - How long a sound effect lasts, up to 10 seconds. Leave blank for 8. Music picks its own length.From 1.0 to 10.0.
Outputs
content_typetext- The file's media type.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- The saved audio file, ready to attach.
filenametext- Name of the saved file.
size_bytesnumber- Size of the file in bytes.
sound_typetext- sound or music.
statustext- Status of the action execution ("success" on success).
urltext- Download link for the saved file.
Example output
{
"content_type": "audio/wav",
"document_ref": "doc_1a2b3c4d",
"documents": [
{
"content_type": "audio/wav",
"document_ref": "doc_1a2b3c4d",
"filename": "camb-sound-rain-on-a-tin-roof.wav",
"size_bytes": 1536044,
"url": "/actions/core/serve-document/doc_1a2b3c4d"
}
],
"filename": "camb-sound-rain-on-a-tin-roof.wav",
"size_bytes": 1536044,
"sound_type": "sound",
"status": "success",
"url": "/actions/core/serve-document/doc_1a2b3c4d"
}Generate speech
Turn text into a natural voice-over and save it as an audio file a later step can attach, upload or post.
Inputs
- What to say
texttextRequired - The script to read out, up to 3,000 characters. For longer pieces, use 'Narrate a long text'.
- Voice
voice_idtext - Which CAMB.AI voice speaks, your own voices included. Leave blank for CAMB.AI's default voice.
- Language
languagetextRequired - The language the text is written in; the voice speaks it with this accent. To speak it in another language, use 'Translate and speak'.One of:
ab-ge(Abkhazian (Georgia)),fub-cm(Adamawa Fulfulde (Cameroon)),ady-ru(Adyghe (Russia)),af-za(Afrikaans (South Africa)),ala-ng(Alago (Nigeria)),sq-al(Albanian (Albania)),adx-cn(Amdo Tibetan (China)),am-et(Amharic (Ethiopia)),xmv-mg(Antankarana Malagasy (Madagascar)),ar-dz(Arabic (Algeria)), and 305 more. Default:en-us. - Speech model
speech_modeltext - Leave blank to use CAMB.AI's standard model for your language.One of:
mars-8.1-pro-beta(MARS 8.1 Pro · most natural, 300+ languages (beta)),mars-8.1-flash-beta(MARS 8.1 Flash · quicker, 300+ languages (beta)),mars-pro(MARS Pro · natural, 33 languages),mars-flash(MARS Flash · fastest, 33 languages),mars-instruct(MARS Instruct · follows tone directions, 142 languages). - Tone of voice
tonetext - Optional directions for the delivery, such as 'Warm, calm and reassuring'. Uses MARS Instruct.
- Speed
speednumber - How fast the voice speaks: 1 is its natural pace, 0.5 half as fast, 2 twice as fast. Leave blank for 1.From 0.5 to 2.0.
- File format
audio_formattext - WAV plays anywhere and suits editing; AAC is a much smaller file for the web and phones.One of:
wav(WAV · plays anywhere, best for editing),aac(AAC · much smaller, for the web and phones),flac(FLAC · lossless, smaller than WAV). Default:wav.
Outputs
audio_formattext- The saved file's format, e.g. wav.
charactersnumber- How many characters were spoken.
content_typetext- The file's media type.
credits_usednumber- CAMB.AI credits this took, when CAMB.AI says.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- The saved audio file, ready to attach.
filenametext- Name of the saved file.
languagetext- The language spoken.
size_bytesnumber- Size of the file in bytes.
speech_modeltext- The model that spoke.
statustext- Status of the action execution ("success" on success).
urltext- Download link for the saved file.
voice_idnumber- The voice that spoke.
Example output
{
"audio_format": "wav",
"characters": 24,
"content_type": "audio/wav",
"credits_used": 24,
"document_ref": "doc_5d1f0c2a",
"documents": [
{
"content_type": "audio/wav",
"document_ref": "doc_5d1f0c2a",
"filename": "camb-speech-welcome-to-the-team.wav",
"size_bytes": 245804,
"url": "/actions/core/serve-document/doc_5d1f0c2a"
}
],
"filename": "camb-speech-welcome-to-the-team.wav",
"language": "en-us",
"size_bytes": 245804,
"speech_model": "mars-flash",
"status": "success",
"url": "/actions/core/serve-document/doc_5d1f0c2a",
"voice_id": 147320
}Get a dubbed video
Collect a dub that was still in progress when 'Dub a video' stopped waiting, or check whether it is ready yet.
Inputs
- Dubbing ID
dubbing_idtextRequired - The dubbing ID from 'Dub a video'.
Outputs
audioobject- The dubbed voice track on its own, saved.
content_typetext- The file's media type.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- The dubbed video and voice track.
dub_statustext- done when the dub is ready, processing while it is not.
dubbing_idtext- The dub's ID, for 'Get a dubbed video'.
filenametext- Name of the saved file.
size_bytesnumber- Size of the file in bytes.
statustext- Status of the action execution ("success" on success).
target_languagetext- The dubbed language.
texttext- The dubbed script as one text.
transcriptlist- What is said in the dub, line by line.
urltext- Download link for the saved file.
videoobject- The dubbed video, saved.
video_linktext- CAMB.AI's own link to the dubbed video. It expires.
video_savedtrue/false- False when the video is over 200 MB and was not saved; use video_link instead.
Example output
{
"audio": {
"content_type": "audio/wav",
"document_ref": "doc_7b20e4d2",
"filename": "camb-dub-es-es-voice.wav",
"size_bytes": 1921024,
"url": "/actions/core/serve-document/doc_7b20e4d2"
},
"content_type": "video/mp4",
"document_ref": "doc_7b20e4d1",
"documents": [
{
"content_type": "video/mp4",
"document_ref": "doc_7b20e4d1",
"filename": "camb-dub-es-es.mp4",
"size_bytes": 8912896,
"url": "/actions/core/serve-document/doc_7b20e4d1"
},
{
"content_type": "audio/wav",
"document_ref": "doc_7b20e4d2",
"filename": "camb-dub-es-es-voice.wav",
"size_bytes": 1921024,
"url": "/actions/core/serve-document/doc_7b20e4d2"
}
],
"dub_status": "done",
"dubbing_id": "a8f3c2e1-4b5d-4e6f-9a7b-1c2d3e4f5a6b",
"filename": "camb-dub-es-es.mp4",
"size_bytes": 8912896,
"status": "success",
"target_language": "",
"text": "Bienvenidos de nuevo.",
"transcript": [
{
"end": 2.8,
"speaker": "SPEAKER_0",
"start": 0.5,
"text": "Bienvenidos de nuevo."
}
],
"url": "/actions/core/serve-document/doc_7b20e4d1",
"video": {
"content_type": "video/mp4",
"document_ref": "doc_7b20e4d1",
"filename": "camb-dub-es-es.mp4",
"size_bytes": 8912896,
"url": "/actions/core/serve-document/doc_7b20e4d1"
},
"video_link": "https://storage.camb.ai/runs/48213/dubbed.mp4",
"video_saved": true
}List voices
List every voice your CAMB.AI account can speak in, your own voices included.
Inputs
None.
Outputs
countnumber- How many voices there are.
statustext- Status of the action execution ("success" on success).
voiceslist- The voices, as CAMB.AI lists them.
Example output
{
"count": 1,
"status": "success",
"voices": [
{
"age": 35,
"description": "A rich, warm voice brimming with emotion.",
"gender": "Male",
"language": "en-us",
"name": "Gary",
"voice_id": 147320
}
]
}Narrate a long text
Turn an article, chapter or script of any length into one narrated audio file, like an audiobook.
Inputs
- Text
texttextRequired - The text to narrate. Paste it, pick it from an earlier step, or upload a .txt or .docx file.
- Language
languagetextRequired - The language the text is written in.
- Narrator
voice_idtext - The voice that narrates. Leave blank for CAMB.AI's default voice.
- Title
titletext - Optional. Names the audio file and the narration in CAMB.AI Studio.
Outputs
content_typetext- The file's media type.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- The saved audio file, ready to attach.
duration_secondsnumber- How long the narration runs, in seconds.
filenametext- Name of the saved file.
languagetext- The language narrated.
size_bytesnumber- Size of the file in bytes.
statustext- Status of the action execution ("success" on success).
urltext- Download link for the saved file.
voice_idnumber- The narrator's voice.
Example output
{
"content_type": "audio/wav",
"document_ref": "doc_9c4d2e10",
"documents": [
{
"content_type": "audio/wav",
"document_ref": "doc_9c4d2e10",
"filename": "camb-the-lighthouse-keeper.wav",
"size_bytes": 14155776,
"url": "/actions/core/serve-document/doc_9c4d2e10"
}
],
"duration_seconds": 312.4,
"filename": "camb-the-lighthouse-keeper.wav",
"language": "en-us",
"size_bytes": 14155776,
"status": "success",
"url": "/actions/core/serve-document/doc_9c4d2e10",
"voice_id": 147320
}Separate voice from background
Split a recording into two files: the voices on their own, and the music and background sound on their own.
Inputs
- Recording
recordingtextRequired - An MP3, WAV, FLAC or AAC file: upload one, pick one from an earlier step, or paste a link to one.
Outputs
backgroundobject- Everything but the voices.
content_typetext- The file's media type.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- The voice file, then the background.
filenametext- Name of the saved file.
size_bytesnumber- Size of the file in bytes.
statustext- Status of the action execution ("success" on success).
urltext- Download link for the saved file.
voiceobject- The voices on their own.
Example output
{
"background": {
"content_type": "audio/wav",
"document_ref": "doc_0a1b2c3e",
"filename": "interview-background.wav",
"size_bytes": 2457644,
"url": "/actions/core/serve-document/doc_0a1b2c3e"
},
"content_type": "audio/wav",
"document_ref": "doc_0a1b2c3d",
"documents": [
{
"content_type": "audio/wav",
"document_ref": "doc_0a1b2c3d",
"filename": "interview-voice.wav",
"size_bytes": 2457644,
"url": "/actions/core/serve-document/doc_0a1b2c3d"
},
{
"content_type": "audio/wav",
"document_ref": "doc_0a1b2c3e",
"filename": "interview-background.wav",
"size_bytes": 2457644,
"url": "/actions/core/serve-document/doc_0a1b2c3e"
}
],
"filename": "interview-voice.wav",
"size_bytes": 2457644,
"status": "success",
"url": "/actions/core/serve-document/doc_0a1b2c3d",
"voice": {
"content_type": "audio/wav",
"document_ref": "doc_0a1b2c3d",
"filename": "interview-voice.wav",
"size_bytes": 2457644,
"url": "/actions/core/serve-document/doc_0a1b2c3d"
}
}Transcribe a recording
Write down what is said in an audio or video recording, with who said each line and when.
Inputs
- Recording
recordingtextRequired - The audio or video to transcribe: upload a file, pick one from an earlier step, or paste a public link to one.
- Spoken language
languagetextRequired - The language spoken in the recording.
- Accuracy
accuracytext - Highest takes longer but catches more of what is said.One of:
fast(Standard · faster),slow(Highest · takes longer). Default:fast.
Outputs
duration_secondsnumber- When the last line ends, in seconds.
languagetext- The spoken language.
segmentslist- Each line, with its speaker and timing.
speakerslist- The speakers heard, in order of first line.
statustext- Status of the action execution ("success" on success).
texttext- Everything said, as one text.
Example output
{
"duration_seconds": 3.6,
"language": "en-us",
"segments": [
{
"end": 1.9,
"speaker": "SPEAKER_0",
"start": 0.4,
"text": "Thanks for joining."
},
{
"end": 3.6,
"speaker": "SPEAKER_0",
"start": 2.1,
"text": "Let's get started."
}
],
"speakers": [
"SPEAKER_0"
],
"status": "success",
"text": "Thanks for joining. Let's get started."
}Translate and speak
Translate text into another language and have a voice speak the translation. Returns the audio file and the translated text.
Inputs
- What to say
texttextRequired - The text to translate and speak.
- From
source_languagetextRequired - The language the text is written in.
- Into
target_languagetextRequired - The language to speak it in.
- Voice
voice_idtext - Which CAMB.AI voice speaks, your own voices included. Leave blank for CAMB.AI's default voice.
- Formality
formalitytext - Formal or informal wording, such as 'usted' or 'tú' in Spanish. Leave blank to let CAMB.AI decide.One of:
1(Formal),2(Informal). - Speech model
speech_modeltext - Leave blank to use CAMB.AI's standard model for your language.One of:
mars-8.1-pro-beta(MARS 8.1 Pro · most natural, 300+ languages (beta)),mars-8.1-flash-beta(MARS 8.1 Flash · quicker, 300+ languages (beta)),mars-pro(MARS Pro · natural, 33 languages),mars-flash(MARS Flash · fastest, 33 languages),mars-instruct(MARS Instruct · follows tone directions, 142 languages). - Speed
speednumber - How fast the voice speaks: 1 is its natural pace, 0.5 half as fast, 2 twice as fast. Leave blank for 1.From 0.5 to 2.0.
- File format
audio_formattext - WAV plays anywhere and suits editing; AAC is a much smaller file for the web and phones.One of:
wav(WAV · plays anywhere, best for editing),aac(AAC · much smaller, for the web and phones),flac(FLAC · lossless, smaller than WAV). Default:wav.
Outputs
audio_formattext- The saved file's format, e.g. wav.
content_typetext- The file's media type.
credits_usednumber- CAMB.AI credits this took, when CAMB.AI says.
document_reftext- Reference to the saved file, for a later step to attach.
documentslist- The saved audio file, ready to attach.
filenametext- Name of the saved file.
size_bytesnumber- Size of the file in bytes.
source_languagetext- Translated from.
speech_modeltext- The model that spoke.
statustext- Status of the action execution ("success" on success).
target_languagetext- Spoken in.
translated_texttext- The translation that was spoken.
urltext- Download link for the saved file.
voice_idnumber- The voice that spoke.
Example output
{
"audio_format": "wav",
"content_type": "audio/wav",
"credits_used": 22,
"document_ref": "doc_3e9a41b7",
"documents": [
{
"content_type": "audio/wav",
"document_ref": "doc_3e9a41b7",
"filename": "camb-es-es-bienvenido-al-equipo.wav",
"size_bytes": 221228,
"url": "/actions/core/serve-document/doc_3e9a41b7"
}
],
"filename": "camb-es-es-bienvenido-al-equipo.wav",
"size_bytes": 221228,
"source_language": "en-us",
"speech_model": "mars-flash",
"status": "success",
"target_language": "es-es",
"translated_text": "\u00a1Bienvenido al equipo!",
"url": "/actions/core/serve-document/doc_3e9a41b7",
"voice_id": 147320
}Translate text
Translate text into another language.
Inputs
- Text
texttextRequired - The text to translate.
- From
source_languagetextRequired - The language the text is written in.
- Into
target_languagetextRequired - The language to translate it into.
- Formality
formalitytext - Formal or informal wording, such as 'usted' or 'tú' in Spanish. Leave blank to let CAMB.AI decide.One of:
1(Formal),2(Informal).
Outputs
source_languagetext- Translated from.
statustext- Status of the action execution ("success" on success).
target_languagetext- Translated into.
translated_texttext- The translation.
Example output
{
"source_language": "en-us",
"status": "success",
"target_language": "fr-fr",
"translated_text": "Votre commande a \u00e9t\u00e9 exp\u00e9di\u00e9e ce matin."
}