Skip to content
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

Color depth documentation #23

Open
letalvoj opened this issue Feb 25, 2020 · 4 comments
Open

Color depth documentation #23

letalvoj opened this issue Feb 25, 2020 · 4 comments

Comments

@letalvoj
Copy link

I can not find meaning of the color depth constants (4,8). What does it mean?

@jakehilborn
Copy link
Owner

jakehilborn commented Mar 6, 2020

Displayplacer is a wrapper on Apple's Quartz Display Services APIs. As far as I can tell, color_depth means bits. 4bit color, vs 8bit color, or for some newer monitors 10bit color.

Just speculating here, I think 4 bit maps to Apple's old system setting where you could select colors=Millions and 8 bit was colors=Billions.

@patters-match
Copy link

patters-match commented Mar 6, 2023

I was wondering the same thing. I have a Dell S2722QC and a 2016 MacBook 12" that will only support 4K if I change the monitor's USB-C Prioritisation from High Data Speed to High Resolution, which drops the monitor's hub down from USB3.2Gen1 to USB2.0. This is rather constraining since Apple only equipped this MacBook with a single USB-C port.

This limitation is apparently because this particular MacBook only supports DisplayPort 1.2 HBR2, and not DisplayPort 1.4 HBR3. However, from what I have read I should be able to send 3840x2160@30Hz in 24bit colour while still leaving a pair of the four high speed lanes free for the monitor's USB3.2 hub. Instead it only offers me a frankly useless double-wide 1920x2160@60Hz, or lower resolutions while in High Data Speed Prioritization. What's frustrating is that if it has adequate bandwidth for 1920x2160@60Hz then it should be capable of 3840x2160@30Hz, since both outputs imply the same number of pixels/second. I would be happy with 4K@30Hz since this MacBook gets very hot outputting at 4K@60Hz.

Whether I use displayplacer to set colour_depth 4 or color_depth 8, if I inspect the monitor's current mode description it remains a 30bit signal. Is there a way to force macOS to output 24bit? Using the Option key when opening Display Settings doesn't help. I'm pretty sure this monitor's LCD panel isn't even HDR capable, so although its driver board can process HDR inputs, a viewer cannot see the difference.

@phuclv90
Copy link

@patters-match I've noticed the bit depth issue and reported here #134
Even the value 4 is probably wrong, because 16-bit color has more than 4 bits per channel

@huyz
Copy link

huyz commented Mar 30, 2024

I get strange behavior. If I turn on HDR in the System Settings, the color depth switches from 8 to 7. And then even when I tried disabling HDR, it stays on 7.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants