Hi all the ****,
please can you download this HD file?
https://www.dropbox.com/s/kqxojm4hu3188ni/ORIGINAL.MXF
this is original recording of the camera.
Now I have also this 2 files:
https://www.dropbox.com/s/1ojiid25v37ugio/ORIGINAL.avi
https://www.dropbox.com/s/3l6azz4f24jpv6i/ORIGINAL.wav
they are the video part, but in MJPEG, and the audio part (ch1 and ch2 only) but in wav
Please can you encode using as source original.avi + original.wav - with FFMPEG (strangely ffmbc don't work with hd files) - so that if possible obtain anhother original2.MXF "similar" at the original.mxf?
thanks thanks thanks
Try StreamFab Downloader and download from Netflix, Amazon, Youtube! Or Try DVDFab and copy Blu-rays! or rip iTunes movies!
+ Reply to Thread
Results 1 to 30 of 59
Thread
-
-
-
-
Most professional NLE's can. Sony Vegas, Premiere Pro etc.... "Sony" makes your camera too, so it makes sense they would be compatible
Standalone programs would be Mainconcept / Rovi Totalcode, Telestream Episode
https://groups.google.com/forum/#!msg/ffmbc-discuss/gEdJiVjcOks/lzOzUezkUX4J
I've been trying to fix that for quite some time now. There is some difference for sure but isolating it will take time and I'm not sure Ill have any free. -
poison can I ask you a catkindness? p
please can you tell me the commandline to convert the original HD mxf file in SD.mxf ?
time ago semms to me you purposed:
ffmpeg -i input.mxf -vf crop=1440:1080:240:0,yadif=1:0,scale=720:576,color matrix=bt709:bt601,interlace -pix_fmt yuv422p -an -f rawvideo - | ffmbc -f rawvideo -pix_fmt yuv422p -s 720x576 -r 25 -i - -tff -target imx50 -aspect 4:3 output.mxf
but I wonder: are you shure to use the 1440 setting? (input source is 1920x1080) because of the hd-->sd conversion I ask what is for you the best commandline that keep quality high at the minimun artefacts
And, for second, the commanline to convert the HD .avi (https://www.dropbox.com/s/1ojiid25v37ugio/ORIGINAL.avi) in SD mp4?
I can hipothize the commanline but I'm afraid I do not set the correct parameters for the maximum preservation of quality
thanks -
If you recall, the crop was for 4:3 conversion. If you want to keep 16:9, leave the crop out, and change the -aspect to 16:9 instead of 4:3
The only reason for piping was ffmbc didn't have a re-interlace filter. There is a new ffmbc out, it might have it now -
I am testing it now, there is a -vf tinterlace filter which ffmbc has (note that Tinterlace, not interlace like ffmpeg), but the -vf yadif filter in ffmbc is problematic, missing a frame (you need to double rate deinterlace to 50p before you scale and re-interlace to 50 fields /s interlaced ) . I would stick with the pipe method for now which produces correct output
I read somewhere Baptiste thought ffmpeg was too bulky full of junk or something along those lines (not streamlined enough, full with bunch of redundant code and filters, and everything with the kitchen sink and cat litter boxes)
But nothing is stopping you from doing a custom ffmbc build of specified filters and codecs of your own, since all sources are availableLast edited by poisondeathray; 14th Jul 2014 at 14:40.
-
Code:
ffmpeg.exe -y -i "%CD%\%~n1.mxf" -map_channel 0.1.0 -map_channel 0.2.0 -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 256k -aspect 16:9 out.mp4
this commandline convert mxf to mp4 hd-->hd
and If I want convert to an mp4 sd, but using a mix of filters that can "detail" a little the image but not too, or do you know a best method to convert from hd to sd with this type of file? but with no loss of detail, or aliasing, considering that in this case my source is not the .mjpeg avi file but the original mxf file recorded by the camera -
interlaced hd to interlaced sd ? or interlaced hd to progressive sd ? progressive 50p sd will have more vertical detail
you can't really compare image of sd to hd . You can sharpen it a bit, but will produce ringing artifacts if you do it too much. Especially bad for interlaced content (line twittering) . Or you can use a different resizing kernal, like lanczos3 or spline36 - but again sharper resizer is usually "bad" for interlaced sd . -
-
interlaced hd => interlaced sd . Not much you can do. If you sharpen too much , will produce artifacts on especially with interlaced content will be "twittering" artifacts. This is not an ffmpeg issue, it's a more general issue with interlaced SD. In fact , many people apply a vertical blur or low pass filter to make it smoother. Too much fine detail is bad for interlaced SD
I don't know what invert field order does with morgan. It might change TFF => BFF, that sounds like what it might be doing -
ah ok, so starting from
Code:Code:ffmpeg.exe -y -i "%CD%\%~n1.mxf" -map_channel 0.1.0 -map_channel 0.2.0 -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 256k -aspect 16:9 out.mp4
-
Technically all you need to do is add to -filter_complex is w=720:h=576 , because you already have interl=1 (which is interlaced aware scaling) , but I'm not sure if the end result is as good as deinterlacing, scaling, re-interlacing. If it's just separating the fields, resizing the fields , and weaving, the result will be worse. You can run some tests and compare
And you should convert HD to SD colors 709=>601 using colormatrix; you can add it to filter_complex: colormatrix=bt709:bt601
And the flags should be bt470bg for SD, not bt709 for x264 optsLast edited by poisondeathray; 14th Jul 2014 at 15:27.
-
so the first commandline, the one that use filtercomplex should be:
but I'm not able to insert the w=720:h=576, I don't know the correct sintax, in the red part the error, please can u correct me?^ thanks
Code:ffmpeg.exe -y -i v:\galvanina\c0015.mxf -c:v libx264 -profile:v high422 -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1 -filter_complex crop=out_h=1080:y=0,w=720:h=576,scale=interl=1:colormatrix=bt709:bt601:in_range=tv:out_range=tv -pix_fmt yuv422 -aspect 16:9 out.mp4
-
So you are encoding AVC 422 ?, not 420 ? . Should be -pix_fmt yuv422p , not yuv422
You don't need to specify in/out range, because this is XDCAMHD422 source
Add bt470bg flags for SD (not important, just metadata)
Code:ffmpeg.exe -y -i v:\galvanina\c0015.mxf -c:v libx264 -profile:v high422 -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1:colorprim=bt470bg:transfer=bt470bg:colormatrix=bt470bg -filter_complex scale=w=720:h=576:interl=1,colormatrix=bt709:bt601 -pix_fmt yuv422p -aspect 16:9 out.mp4
And I think deinterlace, resize, re-interlace is better method quality wise, but you can compare with your own eyes
Code:-filter_complex yadif=1:0,scale=w=720:h=576,colormatrix=bt709:bt601,interlace
If you want sharper scaling, more detail, but higher risk of interlaced "line twittering", you can use lanczos scaling with -sws flags lanczos . But for interlaced content, sharp = no goodLast edited by poisondeathray; 14th Jul 2014 at 16:14.
-
Code:
ffmpeg.exe -y -i v:\galvanina\c0015.mxf -c:v libx264 -profile:v high422 -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1 -filter_complex yadif=1:0,scale=w=720:h=576,colormatrix=bt709:bt601,interlace -pix_fmt yuv422p -aspect 16:9 out.mp4
and so if would like try-compare the "old" method of deinterlacing, scaling, re-interlacing how I have change the line^? -
Code:
ffmpeg.exe -y -i v:\galvanina\c0015.mxf -c:v libx264 -profile:v high422 -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1 -filter_complex yadif=1:0,scale=w=720:h=576,colormatrix=bt709:bt601,interlace -pix_fmt yuv422p -aspect 16:9 out.mp4
-
-
Code:
ffmpeg.exe -y -i v:\test\c0027.mxf -c:v libx264 -profile:v high422 -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1 -filter_complex yadif=1:0,scale=w=720:h=576,colormatrix=bt709:bt601,interlace -sws_flags lanczos -pix_fmt yuv422p -aspect 16:9 v:\out2.mp4
-
ffmpeg.exe -y -i v:\test\c0027.mxf -c:v libx264 -profile:v high422 -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1 -filter_complex yadif=1:0,scale=w=720:h=576,colormatrix=bt709:bt60 1,sws_flags lanczos,interlace -pix_fmt yuv422p -aspect 16:9 v:\out2.mp4
but this don't work -
add "flags=lanczos" to filter_complex
Code:-filter_complex yadif=1:0,scale=w=720:h=576:flags=lanczos,colormatrix=bt709:bt601,interlace
-
Note ffmpeg's -vf interlace always applies vertical low pass (ie. blurring)
A vertical lowpass filter is always applied in order to avoid twitter effects and reduce moiré patterns. -
Code:
ffmpeg.exe -y -i v:\test\c0027.mxf -c:v libx264 -profile:v high422 -level:v 4.1 -g 33 -bf 1 -crf 18 -flags +ildct+ilme -top 1 -x264opts tff=1 -filter_complex yadif=1:0,scale=w=720:h=576:flags=lanczos,colormatrix=bt709:bt601,interlace -pix_fmt yuv422p -aspect 16:9 v:\out.mp4