Skip to content

nodef/extra-ffmpeg

Repository files navigation

Decode, encode, transcode, mux, demux, stream, filter, and play media through machine (via "ffmpeg").

Uses setup-ffmpeg to install, if absent.

const ffmpeg = require('extra-ffmpeg');
// ffmpeg.sync(<options>): stdout when done
// ffmpeg(<options>)
// -> Promise {stdout, stderr} when done

// <options>: [{ // see ffmpeg -h
//   outfile|o: // name of output file
// }]


ffmpeg.sync([{y: true}, {i: 'concat:0.mp3|1.mp3'}, {acodec: 'copy', o: 'aud.mp3'}]);
// concat 0.mp3, 1.mp3 to aud.mp3

ffmpeg.sync([
  {y: true, err_detect: 'explode'}, {loop: 1, framerate: 1}, {i: 'img.jpg'}, {i: 'aud.mp3'},
  {vcodec: 'libx264', crf: 0, preset: 'veryfast', tune: 'stillimage',
    vf: 'scale=trunc(iw/2)*2:trunc(ih/2)*2', acodec: 'copy', shortest: true, o: 'vid.mp4'}
]);
// get video vid.mp4 from still image img.jpg and audio aud.mp4

nodef

About

Decode, encode, transcode, mux, demux, stream, filter, and play media through machine (via "ffmpeg").

Topics

Resources

License

Stars

Watchers

Forks