Skip to main content

getSilentParts()

Also available as a 2min video
Remove silence from videos programmatically

getSilentParts()v4.0.18

note

This function is meant to be used in Node.js applications. It cannot run in the browser.

Gets the silent parts of a video or audio in Node.js. Useful for cutting out silence from a video.

Example

silent-parts.mjs
ts
import { getSilentParts } from "@remotion/renderer";
 
const { silentParts, durationInSeconds } = await getSilentParts({
src: "./bunny.mp4",
noiseThresholdInDecibels: -20,
minDurationInSeconds: 1,
});
 
console.log(silentParts); // [{startInSeconds: 0, endInSeconds: 1.5}]
silent-parts.mjs
ts
import { getSilentParts } from "@remotion/renderer";
 
const { silentParts, durationInSeconds } = await getSilentParts({
src: "./bunny.mp4",
noiseThresholdInDecibels: -20,
minDurationInSeconds: 1,
});
 
console.log(silentParts); // [{startInSeconds: 0, endInSeconds: 1.5}]

Arguments

An object which takes the following properties:

source

string

A local video or audio file path.

noiseThresholdInDecibels

number, optional

The threshold in decibels. If the audio is below this threshold, it is considered silent. The default is -20. Must be less than 30.

minDurationInSeconds

number, optional

The minimum duration of a silent part in seconds. The default is 1.

logLevel

"info" | "warn" | "error" | "verbose", optional

The log level. The default is "info".

Return Value

The return value is an object with the following properties:

silentParts

An array of objects with the following properties:

  • startInSeconds: The start time of the silent part in seconds.
  • endInSeconds: The end time of the silent part in seconds.

audibleParts

The inverse of the silentParts array.
An array of objects with the following properties:

  • startInSeconds: The start time of the audible part in seconds.
  • endInSeconds: The end time of the audible part in seconds.

durationInSeconds

The time length of the media in seconds.

See also