There is a moment in any edit when you need a fridge door. Or a cricket. Or the murmur of a café at eight in the morning. And there is a very common way of solving it: find it on YouTube, pull the audio, trim it.
It works. And it has three problems you don't see until it's too late.
The first is the licence. A video being public does not make it free. That sound belongs to someone — whoever recorded it, or the library they took it from — and using it in something you publish is exactly the case that licence either covers or forbids. Nobody is going to come after you for an edit twelve people watch; the problem shows up when the thing works.
The second is technical. That audio has been through lossy compression, sometimes twice, and it carries whatever else was playing: a voice in the background, the reverb of a room that isn't yours, music. Trimming removes none of that.
And the third is the one that eats the most time: it is never the length you need. You need four seconds and you have eleven, or the other way round.
You describe the sound in words and a WAV comes out:
curl -X POST https://api.uttera.ai/v1/audio/sfx \
-H "Authorization: Bearer $UTTERA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"fridge door opening and closing, kitchen ambience","seconds":4}' \
-o fridge.wav
Four seconds, because you asked for four. No background voices. Nobody else's room.
⚠ The model understands English far better than Spanish. You can send "translate":
true and we translate before generating, and tell you in the X-Prompt header what text
was actually used. It is worth looking at: sometimes the translation is what explains why
you got something else.
And if you like one, the seed reproduces it. The response carries X-Seed; send it
again with the same description and you get the same sound. That is what lets you adjust
the length without losing the take that already convinced you.
The interesting part isn't the fridge door: it's the kitchen. And a kitchen is not one sound, it's several that overlap.
First you ask for the plan:
curl -X POST https://api.uttera.ai/v1/audio/sfx/plan \
-H "Authorization: Bearer $UTTERA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"morning kitchen: someone makes coffee","seconds":20}'
You get back a list of events with their moment and their length: the background ambience across all twenty seconds, the fridge at second 4, the coffee machine from 9 onwards. It generates nothing yet.
That is on purpose. You can read the plan, drop what you don't want, move an event two
seconds, rewrite its description — and only then send it to be generated, against
/v1/audio/sfx/scene.
The response carries the mix and every piece on its own, all in WAV. The separate pieces are there because the moment you take this into an editor you are going to want the coffee machine quieter, and with the mix already rendered you can't.
Worth saying, because the opposite is selling smoke:
403.Every audio we generate carries an inaudible watermark saying a machine made it. It cannot be switched off: Article 50(2) of the EU AI Act requires it.
Worth knowing for two opposite reasons. The first is that if you hand that sound to a client, it is marked, and you should be able to tell them. The second is the good one: you can prove it. The day someone argues about where that audio came from, the mark answers. Ripped off YouTube, the only thing you can prove is where you ripped it from.
Anything to add or correct? Write to support@uttera.ai. If you correct us, we edit the post and credit you.