const API_KEY = process.env.RENDI_API_KEY;
const submit = await fetch("https://api.rendi.dev/v1/run-ffmpeg-command", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-KEY": API_KEY,
},
body: JSON.stringify({
input_files: {
in_1: "https://storage.rendi.dev/sample/sample.avi",
},
output_files: {
out_1: "compressed.mp4",
},
ffmpeg_command:
"-i {{in_1}} -c:v libx264 -preset slow -crf 28 -c:a aac -b:a 96k {{out_1}}",
}),
});
const { command_id } = await submit.json();
while (true) {
const res = await fetch(`https://api.rendi.dev/v1/commands/${command_id}`, {
headers: { "X-API-KEY": API_KEY },
});
const data = await res.json();
if (data.status === "SUCCESS") {
console.log("Compressed URL:", data.output_files.out_1.storage_url);
break;
}
if (data.status === "FAILED") throw new Error("Command failed");
await new Promise((r) => setTimeout(r, 2000));
}