

Within -filter_complex, you can string filters together, and they will be applied one after the other to one stream, the other, or both.Īlthough this is a step in the right direction, the result isn't very subtle. Of interest is the -filter_complex construct, which sits between the inputs and the output. I'll assume the video you'll be using is a 720p (1280x720) MP4 video called example.mp4.įigure 2: The movie marked with a gigantic watermark. It is a PNG with a transparent background. To illustrate how filters work, I'll show you how to use a logo to watermark a video.

You can apply filters to whole audio or video streams or only to certain parts, use them to merge several streams into one in interesting ways, and do much more.

One of the most powerful FFmpeg features is its effects pipeline, or "filters," as they are known by FFmpeg users. It can be used to change the frame rate, switch in and out audio and subtitle tracks, and even cut up and re-arrange sequences within a movie. However, FFmpeg can do much more than that. The instruction ffmpeg -i input.mp4 output.webmĬonverts an MP4 video file into a WebM video file. In its simplest form, that is what it does. You've probably used FFmpeg before for converting video and audio files between formats. You can do dozens, nay, scores of things with your videos, without ever having to open a graphical video-editing application. The same goes, believe or not, for video editing. That would work if you only had one file, but what would you do if you had a filesystem with hundreds of files scattered all over the place? You would never consider seriously trawling through every directory and subdirectory, opening each file in turn, and clicking through the search-and-replace process, would you? A Bash script using find and sed would be the way to go.

Say you have to change every instance of "Bill" in a 100-page text file to "Gary." Sure, you could use the search-and-replace feature in your text editor. How much better? Well, it makes stuff easier to batch process, for starters. Below is the video associated with this article.
