Applying multiple filters at once in ffmpeg

I have a video that I am trying to apply two filters to. I want to rotate the video 90 degrees clockwise followed by scaling it down from 1280 x 720 to 720 x 576 with letterboxing.

I also want to rotate the input file, then put the output file in a temporary folder for the other filter to use the file in the temporary folder to scale and pad, then overwrite it.

Below are the commands I am currently trying:

-i "<FullSourceFileName>" -vf "transpose=1" -r 30 -qscale 0 -acodec copy -f avi "C:\FfmpegTemp\Temp.avi"

And:

-i "C:\FfmpegTemp\Temp.avi" -filter:v "scale=1280*min(720/1280\,576/720):720*min(720/1280\,576/720), pad=720:576:(720-1280*min(720/1280\,576/720))/2:(576-720*min(720/1280\,576/720))/2" -vcodec rawvideo  -y "<OutputFileName>.avi"

Solution 1:

You already use two filters in your second example. They are separated by a comma.

Adding all three into the -vf parameter it looks like this:

-i "<FullSourceFileName>" -vf "transpose=1, scale=1280*min(720/1280\,576/720):720*min(720/1280\,576/720), pad=720:576:(720-1280*min(720/1280\,576/720))/2:(576-720*min(720/1280\,576/720))/2" -r 30 -qscale 0 -acodec copy -f avi -vcodec rawvideo  -y "<OutputFileName>.avi"