typetext
{
"podcast_style": "professional studio podcast with a single host speaking into a microphone, modern setup, warm lighting, restaurant background",
"podcaster_prompt": "You are a toddler giving questionable advice on how to run a restaurants based on an experience at a playground",
"voice_id": "Deep_Voice_Man"
}npm install replicate
REPLICATE_API_TOKEN environment variable:export REPLICATE_API_TOKEN=r8_XDR**********************************
This is your API token. Keep it to yourself.
import Replicate from "replicate";
const replicate = new Replicate({
auth: process.env.REPLICATE_API_TOKEN,
});
Run avocado/podcast-clip-generator using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const input = {
podcast_style: "professional studio podcast with a single host speaking into a microphone, modern setup, warm lighting, restaurant background",
podcaster_prompt: "You are a toddler giving questionable advice on how to run a restaurants based on an experience at a playground",
voice_id: "Deep_Voice_Man"
};
const output = await replicate.run("avocado/podcast-clip-generator", { input });
console.log(output);
To learn more, take a look at the guide on getting started with Node.js.
pip install replicate
REPLICATE_API_TOKEN environment variable:export REPLICATE_API_TOKEN=r8_XDR**********************************
This is your API token. Keep it to yourself.
import replicate
Run avocado/podcast-clip-generator using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run(
"avocado/podcast-clip-generator",
input={
"podcast_style": "professional studio podcast with a single host speaking into a microphone, modern setup, warm lighting, restaurant background",
"podcaster_prompt": "You are a toddler giving questionable advice on how to run a restaurants based on an experience at a playground",
"voice_id": "Deep_Voice_Man"
}
)
print(output)
To learn more, take a look at the guide on getting started with Python.
REPLICATE_API_TOKEN environment variable:export REPLICATE_API_TOKEN=r8_XDR**********************************
This is your API token. Keep it to yourself.
Run avocado/podcast-clip-generator using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \
-H "Authorization: Bearer $REPLICATE_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Prefer: wait" \
-d $'{
"input": {
"podcast_style": "professional studio podcast with a single host speaking into a microphone, modern setup, warm lighting, restaurant background",
"podcaster_prompt": "You are a toddler giving questionable advice on how to run a restaurants based on an experience at a playground",
"voice_id": "Deep_Voice_Man"
}
}' \
https://api.replicate.com/v1/models/avocado/podcast-clip-generator/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
Object output with 4 properties
Hi everyone! So today I wanna tell you how to run a restaurant because I figured it out at the playground yesterday. First, you gotta have a really long line like the slide, and make everyone wait their turn even if they're crying. That's how you know it's popular! Then, just like when Tommy hogged all the sandbox toys, you should only give people one fork and make them share. It saves money! Oh, and the most important thing - if someone asks for something you don't have, just throw sand at them and run away. That's what I do when kids want my juice box. Also, make sure to close randomly for nap time because grown-ups need naps too, even if people are still hungry. Trust me, I'm three and I know these things. The playground taught me that if you're loud enough and run around a lot, people will pay attention to you, and that's basically what restaurants do, right? Anyway, that's my business advice. Now I gotta go eat some goldfish crackers. Bye!
{
"id": "gdbky2n085rme0ct5qz9ah5tb8",
"model": "avocado/podcast-clip-generator",
"version": "hidden",
"input": {
"podcast_style": "professional studio podcast with a single host speaking into a microphone, modern setup, warm lighting, restaurant background",
"podcaster_prompt": "You are a toddler giving questionable advice on how to run a restaurants based on an experience at a playground",
"voice_id": "Deep_Voice_Man"
},
"logs": "Generating podcast script...\nScript generated (958 characters)\nGenerating speech audio...\nAudio generated: /tmp/cog-runner-tmp-3902082295/be46ddeca6eb8615/tmpi8eoz5ic.mp3\nGenerating podcast host image...\nImage generated: /tmp/cog-runner-tmp-3902082295/646e6ed94550071c/out-0.webp\nGetting audio duration...\nAudio duration: 57.82 seconds\nSplitting audio into 4 chunks...\nffmpeg version 7.1.1 Copyright (c) 2000-2025 the FFmpeg developers\n built with gcc 13.2.1 (Alpine 13.2.1_git20240309) 20240309\n configuration: --pkg-config-flags=--static --extra-cflags=-fopenmp --extra-ldflags='-fopenmp -Wl,--allow-multiple-definition -Wl,-z,stack-size=2097152' --toolchain=hardened --disable-debug --disable-shared --disable-ffplay --enable-static --enable-gpl --enable-version3 --enable-fontconfig --enable-gray --enable-iconv --enable-lcms2 --enable-libaom --enable-libaribb24 --enable-libass --enable-libbluray --enable-libdav1d --enable-libdavs2 --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libharfbuzz --enable-libjxl --enable-libkvazaar --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librabbitmq --enable-librav1e --enable-librsvg --enable-librtmp --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpl --enable-libvpx --enable-libvvenc --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxevd --enable-libxeve --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-openssl\n libavutil 59. 39.100 / 59. 39.100\n libavcodec 61. 19.101 / 61. 19.101\n libavformat 61. 7.100 / 61. 7.100\n libavdevice 61. 3.100 / 61. 3.100\n libavfilter 10. 4.100 / 10. 4.100\n libswscale 8. 3.100 / 8. 3.100\n libswresample 5. 3.100 / 5. 3.100\n libpostproc 58. 3.100 / 58. 3.100\n[mp3 @ 0x76f647ad4ac0] Estimating duration from bitrate, this may be inaccurate\nInput #0, mp3, from '/tmp/cog-runner-tmp-3902082295/be46ddeca6eb8615/tmpi8eoz5ic.mp3':\n Metadata:\n encoder : Lavf58.29.100\n Duration: 00:00:57.82, start: 0.000000, bitrate: 128 kb/s\n Stream #0:0: Audio: mp3 (mp3float), 32000 Hz, mono, fltp, 128 kb/s\nStream mapping:\n Stream #0:0 -> #0:0 (copy)\nOutput #0, mp3, to '/tmp/audio_chunk_0.mp3':\n Metadata:\n TSSE : Lavf61.7.100\n Stream #0:0: Audio: mp3, 32000 Hz, mono, fltp, 128 kb/s\nPress [q] to stop, [?] for help\n[out#0/mp3 @ 0x76f647ad1580] video:0KiB audio:235KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.258127%\nsize= 235KiB time=00:00:15.01 bitrate= 128.3kbits/s speed=1.11e+03x \nCreated chunk 1/4: /tmp/audio_chunk_0.mp3\nffmpeg version 7.1.1 Copyright (c) 2000-2025 the FFmpeg developers\n built with gcc 13.2.1 (Alpine 13.2.1_git20240309) 20240309\n configuration: --pkg-config-flags=--static --extra-cflags=-fopenmp --extra-ldflags='-fopenmp -Wl,--allow-multiple-definition -Wl,-z,stack-size=2097152' --toolchain=hardened --disable-debug --disable-shared --disable-ffplay --enable-static --enable-gpl --enable-version3 --enable-fontconfig --enable-gray --enable-iconv --enable-lcms2 --enable-libaom --enable-libaribb24 --enable-libass --enable-libbluray --enable-libdav1d --enable-libdavs2 --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libharfbuzz --enable-libjxl --enable-libkvazaar --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librabbitmq --enable-librav1e --enable-librsvg --enable-librtmp --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpl --enable-libvpx --enable-libvvenc --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxevd --enable-libxeve --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-openssl\n libavutil 59. 39.100 / 59. 39.100\n libavcodec 61. 19.101 / 61. 19.101\n libavformat 61. 7.100 / 61. 7.100\n libavdevice 61. 3.100 / 61. 3.100\n libavfilter 10. 4.100 / 10. 4.100\n libswscale 8. 3.100 / 8. 3.100\n libswresample 5. 3.100 / 5. 3.100\n libpostproc 58. 3.100 / 58. 3.100\n[mp3 @ 0x78159a20dac0] Estimating duration from bitrate, this may be inaccurate\nInput #0, mp3, from '/tmp/cog-runner-tmp-3902082295/be46ddeca6eb8615/tmpi8eoz5ic.mp3':\n Metadata:\n encoder : Lavf58.29.100\n Duration: 00:00:57.82, start: 0.000000, bitrate: 128 kb/s\n Stream #0:0: Audio: mp3 (mp3float), 32000 Hz, mono, fltp, 128 kb/s\nStream mapping:\n Stream #0:0 -> #0:0 (copy)\nOutput #0, mp3, to '/tmp/audio_chunk_1.mp3':\n Metadata:\n TSSE : Lavf61.7.100\n Stream #0:0: Audio: mp3, 32000 Hz, mono, fltp, 128 kb/s\nPress [q] to stop, [?] for help\n[out#0/mp3 @ 0x78159a20a580] video:0KiB audio:235KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.257509%\nsize= 236KiB time=00:00:15.02 bitrate= 128.5kbits/s speed=1.27e+03x \nCreated chunk 2/4: /tmp/audio_chunk_1.mp3\nffmpeg version 7.1.1 Copyright (c) 2000-2025 the FFmpeg developers\n built with gcc 13.2.1 (Alpine 13.2.1_git20240309) 20240309\n configuration: --pkg-config-flags=--static --extra-cflags=-fopenmp --extra-ldflags='-fopenmp -Wl,--allow-multiple-definition -Wl,-z,stack-size=2097152' --toolchain=hardened --disable-debug --disable-shared --disable-ffplay --enable-static --enable-gpl --enable-version3 --enable-fontconfig --enable-gray --enable-iconv --enable-lcms2 --enable-libaom --enable-libaribb24 --enable-libass --enable-libbluray --enable-libdav1d --enable-libdavs2 --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libharfbuzz --enable-libjxl --enable-libkvazaar --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librabbitmq --enable-librav1e --enable-librsvg --enable-librtmp --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpl --enable-libvpx --enable-libvvenc --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxevd --enable-libxeve --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-openssl\n libavutil 59. 39.100 / 59. 39.100\n libavcodec 61. 19.101 / 61. 19.101\n libavformat 61. 7.100 / 61. 7.100\n libavdevice 61. 3.100 / 61. 3.100\n libavfilter 10. 4.100 / 10. 4.100\n libswscale 8. 3.100 / 8. 3.100\n libswresample 5. 3.100 / 5. 3.100\n libpostproc 58. 3.100 / 58. 3.100\n[mp3 @ 0x74bc6eff3ac0] Estimating duration from bitrate, this may be inaccurate\nInput #0, mp3, from '/tmp/cog-runner-tmp-3902082295/be46ddeca6eb8615/tmpi8eoz5ic.mp3':\n Metadata:\n encoder : Lavf58.29.100\n Duration: 00:00:57.82, start: 0.000000, bitrate: 128 kb/s\n Stream #0:0: Audio: mp3 (mp3float), 32000 Hz, mono, fltp, 128 kb/s\nStream mapping:\n Stream #0:0 -> #0:0 (copy)\nOutput #0, mp3, to '/tmp/audio_chunk_2.mp3':\n Metadata:\n TSSE : Lavf61.7.100\n Stream #0:0: Audio: mp3, 32000 Hz, mono, fltp, 128 kb/s\nPress [q] to stop, [?] for help\n[out#0/mp3 @ 0x74bc6eff0580] video:0KiB audio:235KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.258127%\nsize= 235KiB time=00:00:15.00 bitrate= 128.4kbits/s speed=2.73e+03x \nCreated chunk 3/4: /tmp/audio_chunk_2.mp3\nffmpeg version 7.1.1 Copyright (c) 2000-2025 the FFmpeg developers\n built with gcc 13.2.1 (Alpine 13.2.1_git20240309) 20240309\n configuration: --pkg-config-flags=--static --extra-cflags=-fopenmp --extra-ldflags='-fopenmp -Wl,--allow-multiple-definition -Wl,-z,stack-size=2097152' --toolchain=hardened --disable-debug --disable-shared --disable-ffplay --enable-static --enable-gpl --enable-version3 --enable-fontconfig --enable-gray --enable-iconv --enable-lcms2 --enable-libaom --enable-libaribb24 --enable-libass --enable-libbluray --enable-libdav1d --enable-libdavs2 --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libharfbuzz --enable-libjxl --enable-libkvazaar --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librabbitmq --enable-librav1e --enable-librsvg --enable-librtmp --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpl --enable-libvpx --enable-libvvenc --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxevd --enable-libxeve --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-openssl\n libavutil 59. 39.100 / 59. 39.100\n libavcodec 61. 19.101 / 61. 19.101\n libavformat 61. 7.100 / 61. 7.100\n libavdevice 61. 3.100 / 61. 3.100\n libavfilter 10. 4.100 / 10. 4.100\n libswscale 8. 3.100 / 8. 3.100\n libswresample 5. 3.100 / 5. 3.100\n libpostproc 58. 3.100 / 58. 3.100\n[mp3 @ 0x7f7ef6e5aac0] Estimating duration from bitrate, this may be inaccurate\nInput #0, mp3, from '/tmp/cog-runner-tmp-3902082295/be46ddeca6eb8615/tmpi8eoz5ic.mp3':\n Metadata:\n encoder : Lavf58.29.100\n Duration: 00:00:57.82, start: 0.000000, bitrate: 128 kb/s\n Stream #0:0: Audio: mp3 (mp3float), 32000 Hz, mono, fltp, 128 kb/s\nStream mapping:\n Stream #0:0 -> #0:0 (copy)\nOutput #0, mp3, to '/tmp/audio_chunk_3.mp3':\n Metadata:\n TSSE : Lavf61.7.100\n Stream #0:0: Audio: mp3, 32000 Hz, mono, fltp, 128 kb/s\nPress [q] to stop, [?] for help\n[out#0/mp3 @ 0x7f7ef6e57580] video:0KiB audio:200KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.302356%\nsize= 201KiB time=00:00:12.81 bitrate= 128.4kbits/s speed=2.19e+03x \nCreated chunk 4/4: /tmp/audio_chunk_3.mp3\nGenerating 4 video chunks sequentially...\nGenerating video for chunk 1/4...\nChunk 1/4 completed: /tmp/cog-runner-tmp-3902082295/c12738282ea44557/tmpeoirz5w7.mp4\nGenerating video for chunk 2/4...\nChunk 2/4 completed: /tmp/cog-runner-tmp-3902082295/2fd23432e3461a5a/tmps0w61jrn.mp4\nGenerating video for chunk 3/4...\nChunk 3/4 completed: /tmp/cog-runner-tmp-3902082295/fc3430f4df3d2a0b/tmprr4n_s3o.mp4\nGenerating video for chunk 4/4...\nChunk 4/4 completed: /tmp/cog-runner-tmp-3902082295/74977905a3a3e7fd/tmpktyd0jeq.mp4\nMerging video chunks together...\nFinal video merged: /tmp/cog-runner-tmp-3902082295/ed7c93a37889273e/output.mp4\nAdding captions to video...\nCaptions added: /tmp/cog-runner-tmp-3902082295/772f43d71fc8a9b1/output.mp4\nPipeline complete!",
"output": {
"audio": "https://replicate.delivery/xezq/AEwx1lIif0X1GSETMJRXiCPVPI3bNeOGlr5YNfNfbryCGQPWB/tmpi8eoz5ic.mp3",
"image": "https://replicate.delivery/xezq/reHZofRArjjc9kGBEcw1Ov7xL0rS5ZWOdrAME9VtHd5gB0jVA/out-0.webp",
"script": "Hi everyone! So today I wanna tell you how to run a restaurant because I figured it out at the playground yesterday. First, you gotta have a really long line like the slide, and make everyone wait their turn even if they're crying. That's how you know it's popular! Then, just like when Tommy hogged all the sandbox toys, you should only give people one fork and make them share. It saves money! Oh, and the most important thing - if someone asks for something you don't have, just throw sand at them and run away. That's what I do when kids want my juice box. Also, make sure to close randomly for nap time because grown-ups need naps too, even if people are still hungry. Trust me, I'm three and I know these things. The playground taught me that if you're loud enough and run around a lot, people will pay attention to you, and that's basically what restaurants do, right? Anyway, that's my business advice. Now I gotta go eat some goldfish crackers. Bye!",
"video": "https://replicate.delivery/xezq/G7odbwSf8n1UKiSOvt9Qbizie6nJLrn8psHO58f8zOqADoHrA/output.mp4"
},
"data_removed": false,
"error": null,
"source": "web",
"status": "succeeded",
"created_at": "2025-10-29T03:24:13.249Z",
"started_at": "2025-10-29T03:24:13.655897Z",
"completed_at": "2025-10-29T03:47:44.602826Z",
"urls": {
"cancel": "https://api.replicate.com/v1/predictions/gdbky2n085rme0ct5qz9ah5tb8/cancel",
"children": "https://api.replicate.com/v1/predictions/gdbky2n085rme0ct5qz9ah5tb8/children",
"get": "https://api.replicate.com/v1/predictions/gdbky2n085rme0ct5qz9ah5tb8",
"root": "https://api.replicate.com/v1/predictions/gdbky2n085rme0ct5qz9ah5tb8",
"web": "https://replicate.com/p/gdbky2n085rme0ct5qz9ah5tb8"
},
"metrics": {
"predict_time": 1410.946929575,
"total_time": 1411.353826827
}
}