You have 10,000 videos that need to have a logo overlayed, subtitles burned in from srt files, and a standard copyright notice attached to the end. Then you need to make three different versions of each, at different sizes and codec settings. It's a quarter to five on Friday night.
Option 1, you spend all weekend doing it in a GUI app, and you have no life.
Audio and video filters are invoked in separate chains. And without enclosing quotes, whitespace will break the chain.
ffmpeg -i 00021.MTS -c:v libx264 -preset ultrafast -crf 0 -vf "fade=in:0:500, scale=384:218" -af afade=in:0:300 scaled.avi
Don't worry, all you did is increase verbosity. The Shift had no effect, but the + increased it. Press - to cycle back to a lower verbosity level.
Press ? to see a list of all available commands.
If you want to not worry about accidental keypresses, you can add -nostdin to the command. Don't do this if one of your inputs is a pipe.
dvd_subtitle indicates an image-based subtitle. You can skip it, or overlay it on the video, or convert it to a text subtitle.
To skip it, add -map -s.
To overlay it, add -filter_complex "[0:0]yadif[v];[v][0:2]overlay"
To convert to text subtitle, see https://stackoverflow.com/a/36327919/5726027
First, if you just want information about a file, you should probably use "ffprobe", not "ffmpeg". Otherwise you'll get an answer, but you'll also have an error return status.
As to your real question: By convention, ffmpeg reserves STDOUT for binary video and audio data only. Everything else, including all the possible kinds of ...
What a fade out does is fade the volume from input level to 0 and then keep it at 0 for the rest of the track. Similarly, what a fade in does is fade the volume from 0 to input level and it mutes the volume from the start of the track upto the fade in start time.
When you applied the fade in after the fade out, the 2nd fade filter is working with a muted ...
You can do it with a combination of the crop & pad video filters:
Both filters use the same format: width:height:x-offset:y-offset
In the crop filter, you want width to be same as the video's input width (you can use the variable in_w). You want to crop 60 pixels (30*2) from the ...
You would carry that out, like this:
ffmpeg -i in.mp4 -filter_complex \
setpts=PTS+1/TB/FRAME_RATE delays the overlay by 1 frame. Change the 1 to adjust delay.
format=yuva444p makes sure there's ...