Home > encode, x264, x264-bin > x264 rev2348+704 tMod

x264 rev2348+704 tMod

7th July 2013, Sunday Leave a comment Go to comments

Sources on GitHub: https://github.com/astrataro/x264_tMod,
and on BitBucket:

Ad: new binary host is http://tmod.nmm-hd.org.

Download: x264_rev2348+704_tMod.7z

1. <patches/TriAQ> More aggressive ( and actually more accurate ) Haali’s AQ strength limiting.
2. <patches/qpmax&qpmin> Use --qpmin and --qpmax <integer>:<integer>:<integer> to set different values for I/P/B frames, as requested here.

Categories: encode, x264, x264-bin
  1. 8th July 2013, Monday at 01,39pm UTC

    Thanks ❤

  2. Frederico Cengarle
    9th July 2013, Tuesday at 07,38pm UTC

    Is there a Taro build that can support interlace encoding?

    • 10th July 2013, Wednesday at 12,30am UTC

      Yes, all full builds (currently FFmpeg ones) support interlaced encoding by --tff/bff.

  3. B4NE
    12th July 2013, Friday at 02,26am UTC

    how about libfdk…i know libfdk is non-free setting on ffmpeg…though i see an option here in the full help…but get errors when I try and use…

    I have built my own ffmpeg with libfdk and libx264…though there are certain things missing from libx264 that you can’t do, that you can in an x264.exe….such as a qp file.

    So I was hoping to use this instead.

    • 14th July 2013, Sunday at 05,11am UTC

      The problem is many (though not all) x264-audio features stopped working after FFmpeg’s api changes. The best way is to update x264-audio’s codes, but currently official x264-audio stops developing, and I personally do not have enough free time to do this job. You could try building with some old FFmpeg version (mainly before avcodec_decode_audio4’s implementation). Or if you would like to use x264 options in FFmpeg via libx264, there is also -x264opts to use anything you can use in x264 binary, e.g. -x264opts aq2-strength=0.5, though you need to build your own libx264, and change some FFmpeg codes to fit x264-tMod (device, AQ stuffs, etc.).

      • B4NE
        14th July 2013, Sunday at 05,30am UTC

        O wow…i thought it might come down to something like that so I’ve been trying to build a x264 myelf…but the above sounds to be a little above my skill lvl, right now i am unable to even compile x264 with ffms..seems that no matter what I do either x264 can’t find ffms when just adding to my prefix dir komisar’s libpack… and using cflags and ldflags… or if i try and dl and compile ffms myself, configure can’t find…or if it does find libav …says libav doesnt work…ahh the frustration lol…so guess I’ll just have to stick to separate encoders for now…thanks though

  4. Aythinkid
    19th July 2013, Friday at 07,30am UTC

    Sorry for the late replay about the aq-ipb-factor, basically, due the way how bframes are distribuited, they get more affected by the qcomp value and mbtree, especially with –b-adapt 2, thus if you have grain/dithering in scenes with a lot of motion you will see that giving an higher AQ value on the bframes will help you on getting about the same visual quality with a less filesize, since your are increasing the bitrate where is more needed. Also thanks for the –qpmin/max i will test it right away. Also, is possible to use AQ-mode 1 with aq-strength X:Y ? Where X is the value for the luma and Y the value for the chroma? This should help especially with animes, cuz if you have a source free of banding you can give less bitrate on the flat zones of the chroma channel without harm the visual quality, while if you have a source with a lot of chroma banding you can increase the quality of the flat zones in the chroma channel without increase the quality of the luma channel, since it is not needed.

    • 19th July 2013, Friday at 06,03pm UTC

      Interesting and really guiding thoughts about aq-factors! Thanks and I’ll take some tests later.

      About aq-strength=luma:chroma, I’ll take a view on that. But it may not be that simple as qpmin/max. AQ’s qp re-calculate depends much on DCT energy, and I need to be as careful as I can when making any changes to make sure it does not affect other stuffs. And currently my concern is that energy is calculated based on both Luma and Chroma planes, if we only touches the strength which is basically a factor of merged luma+chroma energy for calculating aq-related qp-offset, I’m not certain if it is a good idea to do so, or it would be better to use separate factors for Luma/Chroma planes when calculating energy….

      • Aythinkid
        20th July 2013, Saturday at 05,52am UTC

        OK! i tried the qpmin/max, i have been alble to save about the 30% of the filesize getting the same visual quality (of course everyone has his own concept of visual quality). Here what i did: I made varius encodes with a constant QP with –ipratio 1.0 –pbratio 1.0 and –chroma-qp-offset 0 and i picked 3 of the results, the first was like “i can’t see the difference from the loseless and the lossy” and i used that qp for the I-frames, the second was like “i can see some difference, but it is worth the loss of filesize” and i used that qp for the P-frames, and the third was like “There is no way that i can see this difference during playback, and i used that qp for the B-frames. After that i gave a very high AQ value to all the frames. This way the flat zones where forced at that constant QP while the edges where leaved at their destiny. The static layer of grain in the source was perfect!! and no banding was created. I still have to do some experiment about this, but i’m getting what i wanted. About the DCT energy, is it possible/easier to change the way how –choroma-qp-offset works instead of AQ-strength? Something like –choroma-qp-offset edge:flat using the complexity mask from AQ mode? I can’t code x264 but i can make an avs function like QTGMC, so i somehow understand how you feel, so i can’t do nothing more than make experiments and give you good or bad ideas.

      • 31st August 2013, Saturday at 04,02pm UTC

        Sorry for the late reply. chroma-qp-offset is a constant value that cannot be adjust per slice/mb. Actually the need of quality difference between chroma and luma has already been considered in psy-RDO, though it only changes the default global chroma-qp-offset. And I also have one concern that if the complexity of luma and chroma differs largely, should I use luma or chroma to make the decision for chroma-qp-offset. AQ takes both into account, but that may not be what you want.

  5. eric888a
    31st July 2013, Wednesday at 07,14am UTC

    x264_64_tMod_10bit fails to output High10 stream on haswell platforms; it generates correct output when forcing –profile high10(with avs4x264mod)
    maybe it was AVX2’s asm code issue,I’m not sure.

    • 31st August 2013, Saturday at 03,47pm UTC

      Looks weird for me. Currently I don’t have a Haswell processor to test, but it is hard to believe any asm codes would touch profile decision….

  6. Genno
    1st August 2013, Thursday at 09,12pm UTC

    is possible to force x264 on using the same header when all the commands and are the same?

  7. 2nd August 2013, Friday at 05,02am UTC


  8. Genno
    6th August 2013, Tuesday at 04,48pm UTC

    I believe that the patch i’m looking fo is called “–stitchable” “Don’t optimize headers based on video content. Ensures ability to recombine a segmented encode.”

    • 31st August 2013, Saturday at 03,46pm UTC

      Yes, that might be what you want.

  9. Azx
    16th August 2013, Friday at 01,49pm UTC

    Can’t it support avs input now? I tried full and use avs as input but failed.

    Another question, can I use Chinese here? Thanks.

    • 31st August 2013, Saturday at 03,45pm UTC

      Works for me. Any error message prompted?

  10. 18th August 2013, Sunday at 02,32pm UTC

    simply, extract the h264 streams with ie eac3to, attach them with copy /b file1.h264+file2.h264 final.h264

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: