VideoHelp Forum




+ Reply to Thread
Results 1 to 16 of 16
  1. According to MeGUI, the command line for bt709 is:
    Code:
    -colorprim bt709 -transfer bt709 -colormatrix bt709
    But these aren't things that exist according to the ffmpeg command line.

    What's the deal?
    Quote Quote  
  2. Those are just metadata VUI flags; they don't do anything to the actual video. But they might affect playback, depending on the player setup

    In ffmpeg libx264 you can call most x264cli commands with -x264opts or -x264params . The syntax is slightly different than x264cli

    eg. the equivalent for ffmpeg libx264 would be
    Code:
    -x264opts colorprim=bt709:transfer=bt709:colormatrix=bt709
    Quote Quote  
  3. I'm not sure I understand. There are multiple versions of x264 with different options?

    And yeah I know what it does. I've had some things play back in the wrong space before, so I always like to specify.
    Quote Quote  
  4. Originally Posted by koberulz View Post
    I'm not sure I understand. There are multiple versions of x264 with different options?
    x264cli is what megui uses

    ffmpeg libx264 uses the same x264 library, but the interface is built around ffmpeg

    The options are basically the same if you use the same snapshot (complied the library at the same time), just slightly different names and syntax . (There are a few things missing in ffmpeg libx264)
    Quote Quote  
  5. Why are there two different ones?
    Quote Quote  
  6. Originally Posted by koberulz View Post
    Why are there two different ones?
    I don't understand the question ...

    It's not really "different." x264 is the same encoder library used for both

    In theory you should get the same results if you use the same snapshot. e.g. if r3000 was used for x264, and r3000 for libx264 , you should get same results if you use the same settings


    ffmpeg does a bunch of other things, like audio, different containers, different codecs, filters etc.... libx264 is one of the modules that you can compile for ffmpeg . (you can compile other things for ffmpeg too, other libraries)
    Quote Quote  
  7. But why lib and cli, with different commands, instead of just one x264 thing with one set of commands?
    Quote Quote  
  8. Originally Posted by koberulz View Post
    But why lib and cli, with different commands, instead of just one x264 thing with one set of commands?
    I don't know, ask a ffmpeg developer

    I'm guessing slightly different interface, or to make it compatible. It's not just libx264, all libraries can have slightly different syntax when used in ffmpeg. eg. libx265 (x265), libvpx-vp9 (vpxenc)

    Some switches/commands have equivalents for the same thing. eg. -g 250 in ffmpeg is max gop length, and not necessarily codec specific (--keyint 250 in x264cli) , but -x264opts keyint=250 also does the same thing
    Quote Quote  
  9. Originally Posted by koberulz View Post
    I'm not sure I understand. There are multiple versions of x264 with different options?
    ffmpeg is a CLI front end for hundreds of different encoders, decoders, filters, etc. Some configuration parameters are offered by ffmpeg directly (it translates them to each encoder's syntax; bitrate, for example). But some are not covered by ffmpeg directly, you have to specify that those should be passed directly to the encoder. "-x264opts" for passing stuff to the x264 encoder, for example.
    Last edited by jagabo; 4th May 2020 at 11:52.
    Quote Quote  
  10. Why is this producing a .264 file that's flagged as BFF?
    Code:
    ffmpeg -i G1HD2.avi -vcodec libx264 -crf 20 -preset slow -pix_fmt yuv420p -force_key_frames 00:08:06.000,00:25:41.000,00:51:12.200,00:57:07.600,00:58:18.600,01:15:04.240 -sar 1:1 -x264opts level=4.1:colorprim=bt709:transfer=bt709:colormatrix=bt709:tff G1HD.264
    Is it fixable without re-encoding?
    Quote Quote  
  11. What does MediaInfo report?
    Add -flags +ilme+ildct -top 1 to the commandline. Does it still encode BFF?
    Code:
    ffmpeg -i G1HD2.avi -vcodec libx264 -flags +ilme+ildct -top 1 -crf 20 -preset slow -pix_fmt yuv420p -force_key_frames 00:08:06.000,00:25:41.000,00:51:12.200,00:57:07.600,00:58:18.600,01:15:04.240 -sar 1:1 -x264opts level=4.1:colorprim=bt709:transfer=bt709:colormatrix=bt709:tff G1HD.264
    Quote Quote  
  12. MediaInfo says it's BFF, that's how I knew what happened.
    Quote Quote  
  13. What does the "flags" thing do?
    Quote Quote  
  14. Originally Posted by koberulz View Post
    What does the "flags" thing do?
    ilme is for interlaced motion estimation , ildct is for interlaced dct

    x264opts tff=1 should encode TFF
    Quote Quote  
  15. It already has x624opts tff, and that didn't work. The new one does though.

    What's DCT?
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!