Hi
for kindess, I have some .mxf of my cats:
C0001.mxf
C0002.mxf
C0003.mxf
C0004.mxf
C0005.mxf
etc...
for each .mxf file I need to apply this commandline of ffmpeg:
I wonder: can I encode all .mxf files in sequence so that I get one output.mp4 as the soum of all .mxf input files in continuous?Code:ffmpeg.exe -y -i input.mxf -filter_complex "[0:1] [0:2] amerge,volume=1" -c:v libx264 -profile:v main -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1:colorprim=bt709:transfer=bt709:colormatrix=bt709 -filter_complex crop=out_h=1080:y=0,scale=interl=1:in_range=tv:out_range=tv -pix_fmt yuv420p -c:a libvo_aacenc -b:a 256k -aspect 16:9 output.mp4
thanks
+ Reply to Thread
Results 1 to 4 of 4
-
-
Did you mean appending them all end to end (one output for many inputs) ? or batch encoding one by one (one output per input) ?
If you mean 1 output joined, you join the mxf files together first with concatenate, then apply the current commandline to the one mxf
https://trac.ffmpeg.org/wiki/Concatenate
Code:ffmpeg -f concat -i mylist.txt -c copy output.mxf
file '/PATH/C0001.mxf'
file '/PATH/C0002.mxf'
file '/PATH/C0003.mxf'
.
.
If you meant one by one, so each mxf generates one mp4, you batch encode them
Code:for %a in ("*.mxf") do ffmpeg.exe -y -i "%a" -filter_complex "[0:1] [0:2] amerge,volume=1" -c:v libx264 -profile:v main -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1:colorprim=bt709:transfer=bt709:colormatrix=bt709 -filter_complex crop=out_h=1080:y=0,scale=interl=1:in_range=tv:out_range=tv -pix_fmt yuv420p -c:a libvo_aacenc -b:a 256k -aspect 16:9 "%~na.mp4"
Last edited by poisondeathray; 30th Jan 2015 at 19:22.