-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
vo_gpu_next/d3d11: --d3d11-output-format=auto
selects the wrong output format
#14242
Comments
I guess we can add a output depth check in libplacebo and prefer matching format. Note that in many cases you will still get dithering in monitor, because while they can accept 8-bit signal, the actual output is another story. This we cannot do anything about. |
I just assumed it's an issue because d3d11's behavior is inconsistent with vulkan, which does output rgba8 (which seems like the more "correct" thing to do but I dunno honestly). I also tried opengl, but opengl seems to be broken in its own way, since the log doesn't show a selected format and the stats screen just shows "fbo".
Setting |
There is |
This is unrelated to output format. This part of the log shows the depth for the file format and the subsequent fbo-format precision.
I didn't say that it did. I'm just saying that the stats screen fails to display a format and just says "fbo" in plaintext. This is off-topic to this issue and would need to be its own separate issue. I just made an off-hand comment about how other APIs treat the output format for comparison. |
|
not this sh*t again... |
See #14242 (comment) |
Huh? I don't think it dithers if the output is already 10bit... If I don't set 10bit manually in MPV the image loses some detail compared to setting to 10bit and ordered in MPV (though it's been about 7 months since I last tested). I assume AMD is using a speed focused algorithm and the more expensive MPV options work out better quality. |
That would be correct. @norinoriko |
No shit. This is not relevant to this issue. I'm not complaining about banding here, because there's no banding regardless of whether or not mpv selects rgba8 or rgb10_a2 (for all of the reasons I already reiterated, for the former case mpv is already dithering by default, and for the latter case both mpv and the GPU are dithering since the output has a higher bit-depth than the display). I'm demonstrating a point that if you manually configure mpv to select the correct output format, you get less unnecessary filtering/noise which is always a net-positive. The core of the issue here is the output format selection does not match the device bit-depth. |
Well, the funniest thing just happened actually. Ever since AMD 24.6.1,
I can also confirm that selecting this output format enables built-in driver dithering, so now the behavior perfectly mirrors Since |
Nice. Thanks for the info!
Too bad they didn't write that into their patch notes. |
This comment was marked as resolved.
This comment was marked as resolved.
Duplicate of #10881 See: #10881 (comment) |
mpv Information
Other Information
Reproduction Steps
Expected Behavior
libplacebo selects rgba8 because that's the configured bit depth of the device.
Actual Behavior
libplacebo selects rgb10_a2 instead, which results in the driver having to apply its own dithering in addition to whatever mpv is doing.
--d3d11-output-format=rgba8
has to be stated explicitly.Log File
mpv.log
Sample Files
No response
I carefully read all instruction and confirm that I did the following:
--log-file=output.txt
.The text was updated successfully, but these errors were encountered: