Skip to main content

downloadMedia()

Downloads a rendered video, audio or still to the disk of the machine this API is called from.

If you want to let the user download a result to their machine, use renderMediaOnLambda() -> downloadBehavior instead.

ts
import { downloadMedia } from "@remotion/lambda";
 
const { outputPath, sizeInBytes } = await downloadMedia({
bucketName: "remotionlambda-r42fs9fk",
region: "us-east-1",
renderId: "8hfxlw",
outPath: "out.mp4",
onProgress: ({ totalSize, downloaded, percent }) => {
console.log(
`Download progress: ${totalSize}/${downloaded} bytes (${(
percent * 100
).toFixed(0)}%)`
);
},
});
 
console.log(outputPath); // "/Users/yourname/remotion-project/out.mp4"
console.log(sizeInBytes); // 21249541
ts
import { downloadMedia } from "@remotion/lambda";
 
const { outputPath, sizeInBytes } = await downloadMedia({
bucketName: "remotionlambda-r42fs9fk",
region: "us-east-1",
renderId: "8hfxlw",
outPath: "out.mp4",
onProgress: ({ totalSize, downloaded, percent }) => {
console.log(
`Download progress: ${totalSize}/${downloaded} bytes (${(
percent * 100
).toFixed(0)}%)`
);
},
});
 
console.log(outputPath); // "/Users/yourname/remotion-project/out.mp4"
console.log(sizeInBytes); // 21249541

Arguments​

An object with the following properties:

region​

The AWS region in which the render has performed.

bucketName​

The bucket name in which the render was stored. This should be the same variable you used for renderMediaOnLambda() or renderStillOnLambda().

renderId​

The ID of the render. You can retrieve this ID by calling renderMediaOnLambda() or renderStillOnLambda().

outPath​

Where the video should be saved. Pass an absolute path, or it will be resolved relative to your current working directory.

onProgress​

optional

Callback function that gets called with the following properties:

  • totalSize in bytes
  • downloaded number of bytes downloaded
  • percent relative progress between 0 and 1

customCredentials​

optional, available from v3.2.23

If the render was saved to a different cloud, pass an object with the same endpoint, accessKeyId and secretAccessKey as you passed to renderMediaOnLambda() or renderStillOnLambda().

Return value​

Returns a promise resolving to an object with the following properties:

outputPath​

The absolute path of where the file got saved.

sizeInBytes​

The size of the file in bytes.

See also​