-
Notifications
You must be signed in to change notification settings - Fork 151
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: PAHighMotionQualityBoostMode=1 Now Breaks My Encoder [RX6950XT] #495
Comments
Could you please provide the other settings used for your recording such as the resolution and framerate? |
2560x1440 downscaled to 1792x1008 (also tried standard resolutions)
60fps Bicubic
Also I tested with only EnablePreAnalysis=true PAHighMotionQualityBoostMode=1 and same result. It lags my whole PC, it becomes stuttery, just pressing the Windows button takes a second to come up and it lags coming up.. so yeah. Not good ! 23.12.1 was, if I recall by memory, the last driver it worked well on.
|
PAHighMotionQualityBoostMode=1 it work only if you change the "PAEngineType" to dx11 or dx12 but well use more cpu i dont know why. |
Very interesting, thank you for your discovery!
On Sep 8, 2024 12:27 p.m., Ryu0833 ***@***.***> wrote:
PAHighMotionQualityBoostMode=1 it work only if you change the "PAEngineType" to dx11 or dx12 but well use more cpu i dont know why.
PAEngineType=1=>dx11
PAEngineType=4=>dx12
|
Update PAEngineType=4 and PAHighMotionQualityBoostMode=1 works for desktop but as soon as you load into a game and record a test, it skips frames like crazy. Literally unusable.. Hopefully we can find a way to fix this because that would put AMD closer to NVIDIA in terms of encoding in H264. AMF Settings: EnablePreAnalysis=true PAEngineType=4 PAHighMotionQualityBoostMode=1 PASceneChangeDetectionEnable=false PAPerceptualAQMode=1 PATemporalAQMode=1 PACAQStrength=2 EnableVBAQ=false RateControlPreanalysisEnable=0 MaxNumRefFrames=4 BReferenceEnable=1 MaxConsecutiveBPictures=1 BPicturesPattern=1 OBS settings: 1664x936 |
1=Host(uses cpu resources) 4=OpenCL ''Host(1) |
Interesting, I'll play around with these PAEngineTypes
On Sep 8, 2024 2:53 p.m., Johl ***@***.***> wrote:
PAHighMotionQualityBoostMode=1 it work only if you change the "PAEngineType" to dx11 or dx12 but well use more cpu i dont know why. PAEngineType=1=>dx11 PAEngineType=4=>dx12
1=host(uses cpu resources) 4=OpenCL
''Host(1)
DX11(3)
OpenCL(4)
Vulkan(10)
DX12(11)''
|
tldr is tho, PAHMQB doesnt seem to be suitable for real time encoding, on past drivers it would only work if paired with lookahead, but 'recently' there was a change that made it to work(probably?) even without, and thats why it causes overloading issues now. It might run well on RDNA3, i dunno, mines a 6650 XT. |
Hmmm interesting.. Hopefully they find a way to make it work as it's much better with it from past experiencesOn Sep 8, 2024 4:02 p.m., Johl ***@***.***> wrote:
Interesting, I'll play around with these PAEngineTypesOn Sep 8, 2024 2:53 p.m., Johl @.> wrote: PAHighMotionQualityBoostMode=1 it work only if you change the "PAEngineType" to dx11 or dx12 but well use more cpu i dont know why. PAEngineType=1=>dx11 PAEngineType=4=>dx12 1=host(uses cpu resources) 4=OpenCL ''Host(1) DX11(3) OpenCL(4) Vulkan(10) DX12(11)'' —Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.>
tldr is tho, PAHMQB doesnt seem to be suitable for real time encoding, on past drivers it would only work if paired with lookahead, but 'recently' there was a change that made it to work(probably?) even without, and thats why it causes overloading issues now.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: ***@***.***>
|
what's more interesting is that I was running using PAHMQB without the Lookahead in 23.12.1 drivers and prior drivers without any problems and now yeah... impossible to do so. I have an RX6950XT |
@LingWinny it been always working with Lookahead when lookahead=0 PAHMQP dont work |
Makes sense, thanks for the clarification.On Sep 8, 2024 7:08 p.m., Ryu0833 ***@***.***> wrote:
@LingWinny it been always working with Lookahead when lookahead=0 PAHMQP dont work
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Incorrect.
@LingWinny While newer drivers most likely set a minimum amount of lookahead instead of the auto-disable. |
Sorry, I will reply here instead of Email from now on. @lextra2 |
Mhh, maybe motion estimation was set differently with 2023 driver if high motion quality mode was enabled? Try |
This is wayyyy blockier with those settings. Here's the best settings I could've come up with in terms of quality with the newer drivers and I even tested without PA. EnablePreAnalysis=true PAEngineType=4 PASceneChangeDetectionEnable=false PAPerceptualAQMode=1 PATemporalAQMode=1 PACAQStrength=2 EnableVBAQ=false RateControlPreanalysisEnable=0 MaxNumRefFrames=4 BReferenceEnable=1 MaxConsecutiveBPictures=1 BPicturesPattern=1 Unfortunately, doesn't work with PAHighMotionQualityBoostMode=1 anymore. I was using the settings shown above + PAHMQB before and it was really smooth looking. I'd say close to on par with NVIDIA's Pascal. But it's the best AMD's H264 can do for now... which is pretty bad.. reminds me of the first NVIDIA's encoders in terms of quality which is pretty bad in 2024.. |
@LingWinny hello for your setting"EnablePreAnalysis=true PAEngineType=4 PASceneChangeDetectionEnable=false PAPerceptualAQMode=1 PATemporalAQMode=1 PACAQStrength=2 EnableVBAQ=false RateControlPreanalysisEnable=0 MaxNumRefFrames=4 BReferenceEnable=1 MaxConsecutiveBPictures=1 BPicturesPattern=1" there some point you wann to change for some commend to work
*my suggestion is :
B) RateControlPreanalysisEnable=0 EnablePreAnalysis=true PAEngineType=4 PALookAheadBufferDepth=20 C) RateControlPreanalysisEnable=0 EnablePreAnalysis=true PAEngineType=4 PALookAheadBufferDepth=20 try and choose the setting give you the best video quality i hope it helps you get the best video quality |
My streaming is very fast paced.. Without PA it just cannot keep up. I have tested these for months now. My settings were the best I could do. PATemporalAQMode=1-2 PAPerceptualAQMode=1 PACAQStrength=0-1 are the only ones that may seem placebo to me. AdaptiveMiniGOP=true hurts the quality. Thank you for the infos though ! |
"HQ" presets use |
After testing PAQ=0-1 TAQ=0-1-2 PACAQ=0-1-2 in every combination I could. My settings were still better looking for what I do. Thanks anyways ! |
for my streaming the best settings after many test was without PreAnalysis:
and try use this to Help you understand the priorities if you want more info vist this wiki:https://github.com/GPUOpen-LibrariesAndSDKs/AMF/wiki/AMF%20Encoder%20Settings%20and%20Tuning%20in%20FFmpeg |
"HQ" presets use EnablePreAnalysis=true |
We're talking about streaming here, so CBR only. |
Those settings were not as good.. not even close unfortunately. Also, EnforceHRD=true FillerDataEnable=true are already set to true by default when you use CBR (which you HAVE to if you're streaming). |
UPDATE
I don't have drops in frames compared to yours. My 6950XT handles PA just fine. Sorry if your system is struggling. Tested all my evening but still back to the start! We'll just have to wait for AMD to fix PAHMQB. As [rhutsAMD] said, it is broken. Just edited this to add that I'm not using useless lines of code here. Made sure to not write something that was already off or on by default. |
Incorrect. HQcbr & HQvbr are "HQ" presets and therefore use |
Don't reply my name, I wasn't talking to you. I know YOU knew what we were talking about but Ryu was way off here. Don't no shit me. |
My bad. GitHubs quoting is just terrible. |
no worries mate ! |
@LingWinny |
Interesting.. I'll give it a try once I find some time and I'll update y'all with what happens ! |
It works..? PAEngineType=4 is a must otherwise it will overload the encoder |
Nice to hear ;) |
Try The docs say this under
For CBR with filler data enabled, size obviously doesn't matter, since it is constant. |
I'll test this too, thanks ! |
PAHMQB improves the visual quality of the image but takes high amount of GPU resources and is known to throttle performance significantly. In the original issue comment, it seems the user is trying to record a video at 60 FPS in OBS. According to internal tests, enabling PAHMQB gives an encoder output FPS of 16-20. Since OBS is a real time application, it will record at the pre-set FPS (60 in this case) and hence we see a lag since the encoder cannot produce frames at 60 FPS. Having said the above, PAHMQB does not cause any corruption in the video. It leads to frames drops in the output bitstream recorded with OBS because of the difference in encoder speed and the output recording frame rate set in OBS.
|
Well, is there a way to optimize it's performance and to try and compete with the other manufacturer's encoders ? I'm willing to put the time to help you guys because I really want to love AMD but man... H264 looks so much worst than the competitor's.. |
PAHMQB improves image quality at the cost of extensive computation. This encoding feature is suitable for certain offline encoding applications that can tolerate significant time costs, but it is not suitable for applications like OBS, which have strict real-time frame rate requirements. We are continuously improving the video quality of the H.264 encoder. Please stay tuned. |
Describe the bug
As soon as I put PAHighMotionQualityBoostMode=1 in my lines (EnablePreAnalysis=true PASceneChangeDetectionEnable=false PAPerceptualAQMode=1 PATemporalAQMode=1 PACAQStrength=2 EnableVBAQ=false MaxNumRefFrames=3 BReferenceEnable=1 MaxConsecutiveBPictures=1 BPicturesPattern=1) it makes my whole PC lag. Cannot close obs64.exe I have to End Task.
I just want to note that earlier this year I was using PAHighMotionQualityBoostMode=1 with my other lines without issues and it was the best I could make H264 look.
To Reproduce
Steps to reproduce the behavior:
AMF/FFmpeg options: EnablePreAnalysis=true PAHighMotionQualityBoostMode=1 PASceneChangeDetectionEnable=false PAPerceptualAQMode=1 PATemporalAQMode=1 PACAQStrength=2 EnableVBAQ=false MaxNumRefFrames=3 BReferenceEnable=1 MaxConsecutiveBPictures=1 BPicturesPattern=1'
Setup (please complete the following information):
Debug Log (please upload or paste):
Expected behavior
Expected a nice smooth stream as it was before.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
The text was updated successfully, but these errors were encountered: