Log in

View Full Version : Modifications of x265


LigH
13th August 2024, 10:03
A little overview over modifications of x265:

Yuuki-Asuna mod by msg7086 (https://github.com/msg7086/x265-Yuuki-Asuna) - appears to be obsolete, last release: Feb. 2019

aMod by DJATOM (https://github.com/DJATOM/x265-aMod)
Patman mod by Patman86 (https://github.com/Patman86/x265-Mod-by-Patman)
both with: extended progress bar; XLENGTH y4m tag support; Avisynth scripts reader; Vapoursynth scripts reader

Did I miss any?

Boulder
13th August 2024, 17:25
jpsdr's mod has some more things on top of Patman86's mod.
https://github.com/jpsdr/x265/tree/x265_mod

Then there's the "Kyouko" branch forked from the Yuuki-Asuna mod, which has some experimental stuff.
https://github.com/AmusementClub/x265/tree/Kyouko

I posted a patch earlier in the x265 thread to use with MABS containing changes from both of these branches, I don't know if it applies to the most recent sources as there's plenty of changes now.

qyot27
13th August 2024, 21:53
I mean, the Patman mod is just a combination of patches from the Yuuki branch and DJATOM, squashed into a single commit with no proper attribution or history.

I've largely kept the Yuuki patches refreshed¹ against current master (publicly at https://github.com/qyot27/x265/commits/Yuuki). I think there might have been a small handful that were so broken it made no sense to continue limping them along, but I can't remember which ones.

¹generally this happens every six months or so, while I'm rebuilding my cross compilation environment after moving to the latest version of Ubuntu.

Yuuki-Asuna mod by msg7086 (https://github.com/msg7086/x265-Yuuki-Asuna) - appears to be obsolete, last commit Feb. 2019
Releases aren't commits (and the builds were Asuna, anyway, not Yuuki).

benwaggoner
15th August 2024, 21:03
y4m tag support

x265 has always had solid y4m support in my use, correctly reading frame size, bit depth, etc. Is there something that didn't work that other builds have made possible?

LigH
15th August 2024, 21:11
XLENGTH y4m tag support

The Y4M header tag XLENGTH has been explained by DJATOM once (http://forum.doom9.net/showthread.php?p=1934636#post1934636), it's like a vague suggestion how many frames should be expected. This helps a progress estimation for piped input.

Multimedia Wiki: YUV4MPEG2 (https://wiki.multimedia.cx/index.php/YUV4MPEG2) mentions tags starting with an X to be comments or private extensions.

qyot27
15th August 2024, 21:32
x265 has always had solid y4m support in my use, correctly reading frame size, bit depth, etc. Is there something that didn't work that other builds have made possible?
It's referring to this:
https://github.com/qyot27/x265/commit/9d0dee39dd4ac84b8db17c374d6b14d5810a1dff

If an application writes the framecount of the stream to the XLENGTH tag in the y4m stream, this patch allows x265 to read said value when intaking y4m as a pipe from that application, so that you get the normal % display and frame progress counter. Compare against piping out of FFmpeg to x265, where the framecount is unknown and there is no progress counter.

ffmpeg -v 0 -i test.ext -f yuv4mpegpipe - | x265 --preset ultrafast --tune zerolatency --crf 18 -o testframecount.ext - --y4m
vs
vspipe test.vpy - -c y4m | x265 --preset ultrafast --tune zerolatency --crf 18 -o testframecount.ext - --y4m
or
avs2yuv test.avs -o - | x265 --preset ultrafast --tune zerolatency --crf 18 -o testframecount.ext - --y4m
(avs2yuv here is https://github.com/DJATOM/avs2yuv, since it has native *nix support)

benwaggoner
15th August 2024, 22:49
The Y4M header tag XLENGTH has been explained by DJATOM once (http://forum.doom9.net/showthread.php?p=1934636#post1934636), it's like a vague suggestion how many frames should be expected. This helps a progress estimation for piped input.

Multimedia Wiki: YUV4MPEG2 (https://wiki.multimedia.cx/index.php/YUV4MPEG2) mentions tags starting with an X to be comments or private extensions.
Ah, that would be helpful!

LigH
26th August 2024, 18:18
Compare against piping out of FFmpeg to x265, where the framecount is unknown and there is no progress counter.

(avs2yuv here is https://github.com/DJATOM/avs2yuv, since it has native *nix support)

https://github.com/DJATOM/avs2yuv/releases/tag/0.30 does not produce an XLENGTH flag.

Z2697
31st August 2024, 18:52
My "updated Yuuki mod"
I got new aq-modes too! Yay!
https://github.com/Mr-Z-2697/x265-Yuuki-Asuna

Selur
1st September 2024, 05:19
Good to know, thanks.

Guest
1st September 2024, 12:08
My "updated Yuuki mod"
I got new aq-modes too! Yay!
https://github.com/Mr-Z-2697/x265-Yuuki-Asuna

So where is this file ??

The only one I could find was from back in May....

Sorry, found it...x265-Yuuki-3.6+84-lol.7z

MeteorRain
21st July 2025, 05:22
In case it's not obvious, I'm no longer updating Yuuki and Asuna mod in terms of new features.
I may still push some changes to the existing branches, but in no way they are for new features such as x265 4.x.
All my future updates (if any) will be based on 3.4 and 3.5 branches.
Please kindly find alternatives or make your own forks.