Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > High Efficiency Video Coding (HEVC)

Reply
 
Thread Tools Search this Thread Display Modes
Old 24th January 2021, 14:06   #7961  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,578
Quote:
Originally Posted by benwaggoner View Post
Chromaloc seems like a big misfire to me at this point, since so many encoders and decoders don't actually encode/decode differently based on the parameter. Other than for HDR Blu-Ray, which requires chromaloc 2, I recommend leaving it at the default for broader compatibility.

At 4K resolutions, getting it wrong is pretty hard to see, but the lower the frame size, the more screen area an error will take up.
True, but the thing is that he was using chromaloc 2 in x265 but his input (the AVS Script output) wasn't, so it was just wrong. Either he specifies the normal 4:2:0 or he converts it to type2 and specifies chromaloc 2. That's what I meant
FranceBB is online now   Reply With Quote
Old 25th January 2021, 10:43   #7962  |  Link
outhud
Registered User
 
Join Date: Aug 2018
Posts: 21
Quote:
Originally Posted by LigH View Post
Success! With the great support of Christopher Degawa, main supporter of the media-autobuild suite, I was able to tweak my workflow until I could build an x265 binary with Yuuki-Asuna mod (Asuna branch = based on v3.4-stable). It required some pkgconfig tuning and I found a way to use the "video decoders only" light ffmpeg build as already used by m-ab-s in its x264 binary (option 6); so it should contain support for AVS input, VPY input, LAVF input, MP4 output (L-SMASH), MKV output (Haali, obsolete), and ZIMG scaling.
Very nice! Thank you.
outhud is offline   Reply With Quote
Old 25th January 2021, 14:31   #7963  |  Link
K.i.N.G
Registered User
 
Join Date: Aug 2009
Posts: 90
Has anyone done any re-tests recently to see if SAO has improved?
It's been a while since I've tested it and concluded not to use it (removed too much detail)
K.i.N.G is offline   Reply With Quote
Old 25th January 2021, 16:28   #7964  |  Link
microchip8
ffx264/ffhevc author
 
microchip8's Avatar
 
Join Date: May 2007
Location: Belgium
Posts: 1,782
Quote:
Originally Posted by K.i.N.G View Post
Has anyone done any re-tests recently to see if SAO has improved?
It's been a while since I've tested it and concluded not to use it (removed too much detail)
there hasn't been any work on SAO for a long time. So doubtful
__________________
TV: Samsung 50" QE50Q60T AVR: Yamaha RX-V481 5.1 CD Player: Yamaha CD-S300 DAB+ Tuner: Yamaha T-D500 BD Player: Samsung UBD-M8500 UHD Speakers: Klipsch 5.1 Reference Phono: Audio-Technica AT-LP120XUSB
microchip8 is offline   Reply With Quote
Old 25th January 2021, 19:30   #7965  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,490
Quote:
Originally Posted by microchip8 View Post
there hasn't been any work on SAO for a long time. So doubtful
There was --limit-sao, which provided a pretty nice performance boost without material quality loss when SAO was limited to only I and P frames.

SAO can definitely be helpful at moderate-low bitrates. But the x265 implementation has fixed parameters for SAO. Adjusting them some based on bitrate or QP or content analysis could make it a more reliable net benefit even at high bitrates and high detail.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 26th January 2021, 21:43   #7966  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,244
Quote:
Originally Posted by LigH View Post
Update with correct version numbering

x265 3.4+13-g729a838d3+41 (Asuna)

Code:
x265 [info]: HEVC encoder version 3.4+13-g729a838d3+41
x265 [info]: build info [Windows][GCC 10.2.0][64 bit] Asuna 8bit+10bit+12bit
x265 [info]: (lsmash 2.16.1)
x265 [info]: (libavformat 58.65.101)
x265 [info]: (libavcodec  58.117.101)
x265 [info]: (libavutil   56.63.101)
Thanks! Any chance you can include 32-Bit binary as well, as you used to do?
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊
LoRd_MuldeR is offline   Reply With Quote
Old 26th January 2021, 22:23   #7967  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,490
Quote:
Originally Posted by LoRd_MuldeR View Post
Thanks! Any chance you can include 32-Bit binary as well, as you used to do?
What's your use case for a 32-bit version?
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 27th January 2021, 23:37   #7968  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,244
Quote:
Originally Posted by benwaggoner View Post
What's your use case for a 32-bit version?
I usually include 32-Bit and 64-Bit binaries with my GUI, so we can pick the "best" one for the specific machine at runtime.

Of course, you could ask whether it still makes sense to support 32-Bit systems these days. But the code for supporting multiple architectures is already there in the GUI, so I don't see much reason to drop this feature.

...unless it becomes too cumbersome to obtain 32-Bit encoder binaries

(Another possible use case is Avisynth input: If you want to use "official" AviSynth 2.6, you'll be locked to 32-Bit. And yes, I know there is Avisynth+ as well as VapurSynth now)
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 27th January 2021 at 23:52.
LoRd_MuldeR is offline   Reply With Quote
Old 28th January 2021, 01:47   #7969  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,490
Quote:
Originally Posted by LoRd_MuldeR View Post
I usually include 32-Bit and 64-Bit binaries with my GUI, so we can pick the "best" one for the specific machine at runtime.

Of course, you could ask whether it still makes sense to support 32-Bit systems these days. But the code for supporting multiple architectures is already there in the GUI, so I don't see much reason to drop this feature.
At higher resolutions and presets, x265 can use more than 2 GB; some of my 8K tests used >>4GB of RAM. And 64-bit is just faster overall. The only use case where I can imagine 32-bit being "best" is running a 32-bit OS. If you are still supporting 32-bit OSes, you'd need a 32-bit build.

Quote:
(Another possible use case is Avisynth input: If you want to use "official" AviSynth 2.6, you'll be locked to 32-Bit. And yes, I know there is Avisynth+ as well as VapurSynth now)
And just piping from 32-bit AVS to a 64-bit encoding process is trivial. I've been doing that for more than a decade. The piping overhead is generally a lot smaller than the 64-bit encoding performance boost.

Not that I have any skin in the game or anything, just an aversion to 32-bit for anything performance-critical .
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 28th January 2021, 02:30   #7970  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,244
Quote:
Originally Posted by benwaggoner View Post
The only use case where I can imagine 32-bit being "best" is running a 32-bit OS. If you are still supporting 32-bit OSes, you'd need a 32-bit build.
That's exactly the point. The GUI program is 32-Bit, so can run on 32-Bit as well as 64-Bit platforms. At the same time, the encoder binary will be selected, at runtime, based on the actual CPU architecture.

So "best" means we select the 64-Bit binary, if we detect that we are running on 64-Bit system; otherwise 32-Bit binary will be selected.

As said before: You can argue that support for 32-Bit OS is mostly irrelevant these days. But since support for multiple CPU architectures has already been implemented in the GUI, supporting 32-Bit OS pretty much comes for free.

(provided 32-Bit encoder binaries are easily available )

Quote:
Originally Posted by benwaggoner View Post
And just piping from 32-bit AVS to a 64-bit encoding process is trivial.
Yeah, sure. But I was referring to LigH's "Asuna" x265 build, which features built-in Avisynth support. And if you want to use built-in Avisynth input, your Avisynth DLL has to match the "bitness" of the x265 binary.

(If you pipe from Avs2YUV or similar tool, then we don't need Avisynth support in x265 to begin with)
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 28th January 2021 at 02:38.
LoRd_MuldeR is offline   Reply With Quote
Old 28th January 2021, 02:49   #7971  |  Link
aegisofrime
Registered User
 
Join Date: Apr 2009
Posts: 478
@Ligh, thanks very much for your build! I gotta ask, did you notice any memory leak issues? I did an overnight encode, only to wake up and find that x265.exe has ate most of my RAM. Did a bit of googling and found that DJATOM might have fixed the memory leak, not sure the same bit of code is in your code base?

https://github.com/staxrip/staxrip/issues/445
aegisofrime is offline   Reply With Quote
Old 28th January 2021, 03:32   #7972  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 376
Yuuki Asuna mod merged my early VS reader works. After some testing from StaxRip users and devs it was found that vspipe's strategy of requesting new frames doesn't work well, I tried different approach to the problem and now it seems no leaks spotted. You can get my build on github and try it. If leak still occurs, describe in details how to reproduce it.
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 29th January 2021, 12:04   #7973  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,659
I will try to build it again as soon as I get a fix for rust / cargo failing.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 29th January 2021, 16:23   #7974  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,359
Quote:
Originally Posted by DJATOM View Post
Yuuki Asuna mod
Quoted just to hail you.

Can you please explain me the meaning of the files inside your x265 build on GitHub? The ones with the processor suffix are self explanatory, I need clarifications about:

x265-x64-v3.4+65-aMod-gcc10.2.1.exe
x265-x64-v3.4+65-aMod-gcc10.2.1-opt-znver1.exe
x265-x64-v3.4+65-aMod-gcc10.2.1-opt-znver2.exe

Moreover, can you explain me how your builds are different from the LigH one? AVS support, etc?

Thanks.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 29th January 2021, 17:10   #7975  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 376
CPU-specific builds made with (for example, zen2 = -march=znver2) compiler flag which should optimize program for specific CPU microarchitecture. Non-opt build is just generic build without such flag.
As for differences, I tried to make commits descriptive. But yeaр, it contains 2 frameserver readers (Avisynth+/Vapoursynth) and y4m reader understand vspipe's XLENGTH header, which "says" how much frames x265 should expect from it.
LigH just uses another mod for his builds. I'm not saying that my build/mod is superior, it just contains certain feature set that I'm using for my needs. That's it.
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 29th January 2021, 18:01   #7976  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,359
Quote:
Originally Posted by DJATOM View Post
But yeaр, it contains 2 frameserver readers (Avisynth+/Vapoursynth) and y4m reader understand vspipe's XLENGTH header, which "says" how much frames x265 should expect from it.
Thank you for your answer.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 29th January 2021, 22:10   #7977  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,490
Just curious - has anyone done any perf benchmarking of x265 on ARM processors? With the Apple M1 and workstation successors coming, and the AWS Graviton EC2 instances, it seems we're on the verge of high-performance ARM w/ SIMD compute becoming available. Obviously x265 has a HUGE amount of x64 assembly optimizations, but has some ARM as well. Anyone do any testing or have any data?

I don't imagine that peak ARM perf is anywhere near the latest Ryzen, but perhaps fps/watt is interesting?
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 29th January 2021, 22:54   #7978  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 376
My friend recently bought a new mac mini with m1 chip, here some numbers on the same source
M1 with 8 gb ram (lpddr4x 4266 mhz) : 5.27 fps
3700x with 32 gb ram (3666 mhz ram oc): 7.73 fps
It was 1080p 8 bit bdmv, encoded in 10 bit mode.
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070

Last edited by DJATOM; 29th January 2021 at 22:57.
DJATOM is offline   Reply With Quote
Old 29th January 2021, 23:08   #7979  |  Link
Ritsuka
Registered User
 
Join Date: Mar 2007
Posts: 80
x265 had almost no arm64 assembly. Apple contributed a patch to HandBrake with some neon intrinsics. Unfortunately there seems no one interesting in getting it merged upstream.
Ritsuka is offline   Reply With Quote
Old 29th January 2021, 23:29   #7980  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 376
He used that patch: https://imgur.com/a/ArgJEEe
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 13:47.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.