Hi, On KDE Plasma 5.27.5 on Linux (both with Wayland and X), when going to "System Settings -> Display and Monitor -> Display Configuration", there is no setting to adjust the HDMI Content Type bit. Such an option already exists in the Intel graphics control panel on MS Windows. And the Intel graphics driver on Linux also supports configuring the Content Type bit (AMD and NVIDIA still pending): * https://bugs.freedesktop.org/show_bug.cgi?id=104506 * https://gitlab.freedesktop.org/drm/amd/-/issues/830 * https://gitlab.freedesktop.org/xorg/driver/xf86-video-nouveau/-/issues/399 * https://bugs.freedesktop.org/show_bug.cgi?id=104510 But KDE Plasma does not have a UI setting to adjust it. To elaborate: Many HDMI TVs can be switched into a "PC Mode". This usually requires adjustments via the TVs OSD (on screen display) Menu and remote control. In PC Mode, most of the TVs built-in image processing is being disabled and the TV no longer applies chroma subsampling (YCbCr 4:2:0 or 4:2:2). This allows to display an unaltered RGB image with 4:4:4 chroma, which is desirable for use as a computer monitor. Having to adjust the setting via the TV's OSD Menu every time when using a computer is cumbersome though. This can be automated by sending the IT content type bit via HDMI. This will automatically make the TV go into PC Mode when the computer is sending the HDMI signal to the TV. Submitting this into the "kwin" queue. If it needs to be moved to a different queue, please feel free to move it to the appropriate queue. Regards
I don't think we need an option for this, we should just set the correct content type bit to put the TV into "PC Mode". Currently we're setting it to "Graphics", unless a fullscreen application with a different content type is open, but I'd be fine with just hardcoding it to something else if that helps. Which content type are you setting on Windows, to enable "PC Mode"? I assume it's "Game"? I sadly can't test it myself, as the property doesn't seem to be supported when I connect my laptop to the TV through a USB C dock
Hi, Thanks a lot for the fast reply and for setting this to confirmed. Apparently it was also renamed from "Unable to configure HDMI Content Type bit" to "Set the HDMI Content Type bit to "PC mode"". Changing it back to "Unable to configure HDMI Content Type bit" though, because: (In reply to Zamundaaa from comment #1) > I don't think we need an option for this, we should just set the correct > content type bit to put the TV into "PC Mode". Currently we're setting it to > "Graphics", unless a fullscreen application with a different content type is > open, but I'd be fine with just hardcoding it to something else if that > helps. > > Which content type are you setting on Windows, to enable "PC Mode"? I assume > it's "Game"? I sadly can't test it myself, as the property doesn't seem to > be supported when I connect my laptop to the TV through a USB C dock
Hi, Thanks a lot for the fast reply and for setting this to confirmed and for considering this. Apparently the title was renamed from "Unable to configure HDMI Content Type bit" to "Set the HDMI Content Type bit to "PC mode"". Changing it back to "Unable to configure HDMI Content Type bit" , because: (In reply to Zamundaaa from comment #1) > I don't think we need an option for this, we should just set the correct > content type bit to put the TV into "PC Mode". Currently we're setting it to > "Graphics", unless a fullscreen application with a different content type is > open, but I'd be fine with just hardcoding it to something else if that > helps. Hardcoding it would not be ideal. Because some users might use a KDE Plasma computer as a HTPC for example, i.e. might want the connected TV to be in Movie Mode instead. In PC Mode, most of the TVs built-in image processing is being disabled, which is beneficial for computer content, but is not necessarily beneficial for video content. Also, some users in some cases might not want to specify any HDMI content type, so that the video modes and picture settings on the TV can be controlled manually by the user via the TVs built-in OSD menu, without the graphics driver interfering. For those reasons, the HDMI content type probably should not be specified by default. A user configurable option would be preferrable. It could be added to "System Settings -> Display and Monitor -> Display Configuration", via an additional drop-down, similar to the already existing "RGB Range" drop-down. > Which content type are you setting on Windows, to enable "PC Mode"? I assume > it's "Game"? I sadly can't test it myself, as the property doesn't seem to > be supported when I connect my laptop to the TV through a USB C dock In the Intel graphics control center on MS Windows, there is an option called "IT Content". It can only be set to "Enabled" or "Disabled". Therefore it's not clear which specific HDMI content type is being used there. According to https://patchwork.freedesktop.org/series/41876 , the HDMI content type apparently could be one of the following: * No Data (probably means no content type specified) * Graphics * Photo * Cinema * Game On MS Windows, when setting "IT Content = Disabled", it is probably using "HDMI Content Type = No Data". On MS Windows, when setting "IT Content = Enabled", it is probably using "HDMI Content Type = Graphics". But this is an assumption. It's probably not "Game" for the latter. Because many TVs also have a Game Mode, which is not necessarily the same as PC Mode. (In reply to Zamundaaa from comment #1) > Currently we're setting it to "Graphics", > unless a fullscreen application with a different content type is open How is it being determined which HDMI content type should be used for some fullscreen apps? Is the HDMI content type being specified by the fullscreen app? Or is some logic built into KDE Plasma which decides which HDMI content type to use for certain fullscreen apps? By default, KDE Plasma probably should not specify the HDMI content type. A user configurable option would be preferrable. It could be added to "System Settings -> Display and Monitor -> Display Configuration", via an additional drop-down, similar to the already existing "RGB Range" drop-down. Regards
Please feel free to ignore/delete the incomplete comment #2: https://bugs.kde.org/show_bug.cgi?id=470629#c2 Comment #3 is the complete comment: https://bugs.kde.org/show_bug.cgi?id=470629#c3
PS: According to https://drmdb.emersion.fr/properties/3233857728/content%20type it's the "ContentType" drm property. And KDE Plasma also already seems to be aware of this "ContentType" drm property in some way, according to: * https://invent.kde.org/plasma/kwin/-/blob/master/src/backends/drm/drm_connector.cpp But there is no UI setting for it in "System Settings -> Display and Monitor -> Display Configuration". It would be appreciated if a "Content Type" drop-down could be added to "System Settings -> Display and Monitor -> Display Configuration" to adjust this drm property. Changed the title from: * "Unable to configure HDMI Content Type bit " to: * "Unable to configure "ContentType" drm property" Regards
> On MS Windows, when setting "IT Content = Enabled", it is probably using "HDMI Content Type = Graphics". If that automatically triggers the PC mode, then this bug report shouldn't exist, as we're already setting it to "Graphics". > How is it being determined which HDMI content type should be used for some fullscreen apps? Is the HDMI content type being specified by the fullscreen app? Yes, apps can specify a content type for their window. For that reason I do not think that a setting for this makes sense, as media players will change the TV into the "video" mode as appropriate.
Hi, Thanks for clarifying the default behavior of KDE Plasma. Is it documented somewhere since when KDE Plasma defaults to this behavior and why this behavior was made the default? The bug report would still be valid, since it is reporting that there is no UI option for users to alter the default behavior. And with Wayland, users would also not be able to alter the behavior via the terminal (please feel free to correct if wrong). (In reply to Zamundaaa from comment #6) > Yes, apps can specify a content type for their window. For that reason I do > not think that a setting for this makes sense, as media players will change > the TV into the "video" mode as appropriate. That would be outside of KDE Plasma's control though? Because not all media player apps are part of KDE Plasma. And as such, KDE Plasma can not ensure that all media players will behave this way, right? Is there a known list of apps which change the content type on their own? Not every user might want the TV to automatically switch from one mode to another mode just because an app decides to do so. Whereas some users might be fine with that. As such, adding a drop-down, which allows users to set the content type, would be preferrable. That said: Perhaps KDE Plasma's current default behavior could be retained and could be named "Automatic" on the new "Content Type" drop-down in "System Settings -> Display and Monitor -> Display Configuration"? That way the "Content Type" drop-down would allow to choose from: * Automatic * None * Graphics * Photo * Cinema * Game Would that work? And would selecting a specific content type from that drop-down (other than Automatic) prevent apps from changing the content type? Or would apps still be able to change the content type on their own, even if the user has selected a specific content type from that drop-down? Regards
Support for content type (both app -> compositor and compositor -> display) has been implemented in 5.27. There is no reasoning behind it except for what I already told you. > Is there a known list of apps which change the content type on their own? I know mpv supports the protocol, and Chromium developers have expressed interest early on too, but there is no list. > Not every user might want the TV to automatically switch from one mode to another mode just because an app decides to do so. Whereas some users might be fine with that. As such, adding a drop-down, which allows users to set the content type, would be preferable. I don't think it's preferable, as every low level option that we add requires maintenance and adds to the confusion of users looking at the display settings. The current options in there are justified because they're necessary to make broken or imperfect displays work properly (adaptive sync wouldn't be a setting if it didn't cause flicker on some displays, and overscan and rgb range are historical problems that should've never existed), but content type is a very different thing from those. I'm open to adjust the current behavior to improve the user experience, and if using the content type from fullscreen apps actually causes problems then changing that or adding an option for it can be discussed, but I'd like to avoid adding an option if it's not really necessary.
I found something interesting in the EDID of my TV: > Supported Content Types: > Game So it doesn't support the "Graphics" content type. I wonder what yours supports. To find out, could you attach the edid, or the output of edid-decode for your TV? It should be at > /sys/class/drm/card1/card1-HDMI-A-1/edid or similar (card number and connector name may need adjusting)
Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone!
This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone!
Reopening this after some delay. (In reply to Zamundaaa from comment#1 and comment #9) > I sadly can't test it myself, as the property doesn't seem to be > supported when I connect my laptop to the TV through a USB C dock > [...] > I found something interesting in the EDID of my TV: >> Supported Content Types: >> Game > So it doesn't support the "Graphics" content type. And does the connected display do anything when setting the "ContentType" drm property to "Game"? Does it automatically turn on/switch into "Game" mode? (In reply to Zamundaaa from comment #9) > I wonder what yours supports. To find out, could you attach the edid, > or the output of edid-decode for your TV? It should be at >> /sys/class/drm/card1/card1-HDMI-A-1/edid > or similar (card number and connector name may need adjusting) What tool should be used to decode the EDID file? If it's edid-decode, then would need to check first how to install it, as there apparently was a recent change: https://git.linuxtv.org/edid-decode.git/commit/?id=cd4bba870bee3775d2bc811d1089fb3206437176 (In reply to Zamundaaa from comment #8) > I don't think it's preferable, as every low level option that we add > requires maintenance and adds to the confusion of users looking at the > display settings. The current options in there are justified because they're > necessary to make broken or imperfect displays work properly (adaptive sync > wouldn't be a setting if it didn't cause flicker on some displays, and > overscan and rgb range are historical problems that should've never > existed), but content type is a very different thing from those. > > I'm open to adjust the current behavior to improve the user experience, and > if using the content type from fullscreen apps actually causes problems then > changing that or adding an option for it can be discussed, but I'd like to > avoid adding an option if it's not really necessary. The GUI of the official Intel Graphics Command Center for MS Windows has an option to adjust the content type: * https://www.intel.com/content/www/us/en/products/docs/graphics/graphics-command-center.html The setting was previously called "IT Content": * https://www.intel.com/content/dam/support/us/en/images/graphics/29572_image1.jpg Now the setting is called "Text Content": * https://www.intel.com/content/dam/support/us/en/images/graphics/87657_image1.png The setting can be set to "On" or "Off". And it always seems to default to "On". When clicking the "Learn More" button on the setting, it states the following: > "What is it? > > When enabled, your display will not apply any of its built-in algorithms > to your content. When disabled, your display will use its own image > processing algorithms for image quality enhancements. This works only > for consumer electronic (CE) displays such as displays with HDMI. > Supports content type profiles for gaming, movie, photo and text viewing > modes. > > Why use it? > > Disable this to allow your display to choose automatic modes when gaming, > watching movies, or viewing photos. If your display is capable, it will > automatically select the correct viewing mode for the content and switches > modes when a new content source is selected." If the official GUI for MS Windows on hundreds of thousands of Intel computers has such a setting, then why should such a setting not also be available on KDE Plasma?
(In reply to NW from comment #12) > Reopening this after some delay. > > (In reply to Zamundaaa from comment#1 and comment #9) > > I sadly can't test it myself, as the property doesn't seem to be > > supported when I connect my laptop to the TV through a USB C dock > > [...] > > I found something interesting in the EDID of my TV: > >> Supported Content Types: > >> Game > > So it doesn't support the "Graphics" content type. > > And does the connected display do anything when setting the "ContentType" > drm property to "Game"? > > Does it automatically turn on/switch into "Game" mode? I can now test it, that amdgpu added proper support for it, and yes, it does automatically switch into game mode if I set the content type to that. It also switches to game mode with the unsupported "Graphics" content type that we currently set unconditionally, but that might just be a fallback specific to this TV. > What tool should be used to decode the EDID file? > > If it's edid-decode, then would need to check first how to install it, as > there apparently was a recent change: > https://git.linuxtv.org/edid-decode.git/commit/ > ?id=cd4bba870bee3775d2bc811d1089fb3206437176 Yes, edid-decode. In some distros there's also di-edid-decode, from libdisplay-info. > If the official GUI for MS Windows on hundreds of thousands of Intel > computers has such a setting, then why should such a setting not also be > available on KDE Plasma? You mistake "forced on users by a big company" with "good". The Intel UI is not something most users ever see, and last time I saw a friend try to make a display configuration work with it under Windows, it was pretty bad and confusing to be frank.
I checked, and apparently libdisplay-info doesn't have any API to get the supported content types from the HDMI-specific data block yet. Once it does, we could automatically choose the "Game" content type over "Graphics" if only the former is supported.
(In reply to Zamundaaa from comment #13) > The Intel UI is > not something most users ever see, and last time I saw a friend try to make > a display configuration work with it under Windows, it was pretty bad and > confusing to be frank. Nowadays the Intel Graphics Command Center on MS Windows 11 actually is no longer being used to configure the resolution / orientation / refresh rate / scaling of connected displays. That is now being handled via the native Windows Settings app. The Intel Graphics Command Center only offers the settings that the native Windows Settings app does not have, such as RGB range (0-255 or 16-235), color depth (8 / 10 / 12 bit), color format (RGB / YCbCr 4:4:4 / YCbCr 4:2:2 / YCbCr 4:2:0) for example. And HDMI content type of course. (In reply to Zamundaaa from comment #13) > You mistake "forced on users by a big company" with "good". Actually the Intel Graphics Command Center (or MS Windows) does not simply force the HDMI content type setting. Because it at least offers users a choice. Unlike KDE Plasma, which currently forces the "Graphics" HDMI content type and thus forces connected TVs into the PC and/or Game mode. While it's very much appreciated that KDE Plasma is able to configure the HDMI content type setting and while setting it to "Graphics" by default is not necessarily an issue, forcing it and not allowing users to change it is an issue. Because some users might not want a TV to use the PC and/or Game mode. Because: While these modes might provide the cleanest image and lowest input lag, they might not provide the same color accuracy as other modes like "Movie" for example, which some users might prefer, especially for HTPC use-cases. Therefore a "Content Type" drop-down with the following values should be added to "System Settings > Display & Monitor > Display Configuration" (basically below or above the "RGB range" drop-down) to adjust the corresponding ContentType drm property: * Automatic (= current behavior where "Graphics" is set by default) * None (= not setting the ContentType drm property at all, i.e. leaving it disabled) * Graphics * Photo * Cinema * Game Can this (or something similar) be implemented?
> Actually the Intel Graphics Command Center (or MS Windows) does not simply force the HDMI content type setting I wasn't talking about the setting, but the terrible GUI app. > While it's very much appreciated that KDE Plasma is able to configure the HDMI content type setting and while setting it to "Graphics" by default is not necessarily an issue, forcing it and not allowing users to change it is an issue. Because some users might not want a TV to use the PC and/or Game mode. Because: While these modes might provide the cleanest image and lowest input lag, they might not provide the same color accuracy as other modes like "Movie" for example, which some users might prefer, especially for HTPC use-cases. Movie modes do not provide color accuracy on TVs. The PC mode is the one where most of the processing is disabled, and color gets displayed without any changes. Anyways, you're writing a lot of text about complete hypotheticals. This bug report initially was about getting the TV to switch into PC mode automatically, now it's about preventing it. What do you actually want? Adding an option just for the sake of adding the option is out of the question. The display settings GUI is already way more crowded than it should be. Adding a CLI option would be possible, but quite frankly there are a lot of better things to do for me.
(In reply to Zamundaaa from comment #16) > I wasn't talking about the setting, but the terrible GUI app. Intel just released a new MS Windows GUI app for 11th Gen and later processors/graphics by the way, which is now called Intel Graphics Software: https://www.intel.com/content/www/us/en/products/docs/discrete-gpus/arc/software/graphics-software.html Regarding: (In reply to Zamundaaa from comment #16) > Movie modes do not provide color accuracy on TVs. The PC mode is the one > where most of the processing is disabled, and color gets displayed without > any changes. Nope, that's exactly the reason for why the PC mode is less color accurate. Because it bypasses most or all of the color management. The PC mode is often also not able to display 24 fps content properly, as it typically remains in a native 60 Hz panel refresh rate (on TVs that do not support VRR). Which means the PC mode is not really suitable for movie content. The only benefit of the PC mode is that it typically allows for full 4:4:4/RGB color without chroma subsampling and that it typically lowers the input lag, both being due to bypassing things such as color management and picture processing and so on. Which is good for computer usage, but not for movie usage. (In reply to Zamundaaa from comment #16) > This bug > report initially was about getting the TV to switch into PC mode > automatically No, it wasn't. Please feel free to quote the part which stated that. It was (and still is) about allowing to manually configure KDE Plasma to set the ContentType drm property, so that it doesn't need to be set via the TV's remote control. The automation part is about not having to do it via the TV's remote control. It's not about setting and forcing it automatically. Simply wasn't aware that KDE Plasma is already setting it automatically with no way to change it (which also does not seem to be documented anywhere). KDE Plasma should not set this automatically, at least not without a way to change it, i.e. it should not force it. (In reply to Zamundaaa from comment #16) > What do you actually want? > Adding an option just for the sake of adding the option is out of the > question. To elaborate on the request: Switching a TV into PC mode typically requires to rename the TV's input label from e.g. "HDMI1" to "PC", which requires several remote control button presses and is inconvenient. When a KDE Plasma computer is connected to a TV via a HDMI switch (together with other non-PC HDMI devices), then all those devices use the same HDMI input on the TV. Having to rename the TV's input label every time the KDE Plasma computer is being turned on and off would be very inconvenient. When a KDE Plasma computer is directly connected to a TV via HDMI and is the single source for watching content, then it would be inappropriate to always have KDE Plasma forcefully and automatically switch the TV into the PC mode (for the reasons explained above), at least as long as there is no way to disable/change it. It would be fine if KDE Plasma would automatically set the ContentType drm property by default. But if it is doing so, it should allow to disable or alter this behavior (via GUI). (In reply to Zamundaaa from comment #16) > The display settings GUI is already way more crowded than it > should be. It isn't. The existence of the RGB range drop-down for example is a unique and very important advantage of KDE Plasma. Intel graphics often automatically output limited (16-235) RGB range even though the display expects full (0-255) RGB, which results in incorrect black levels and a washed out picture. KDE Plasma currently is the only Wayland desktop environment which allows to manually set it to the correct full (0-255) RGB output via a GUI, which is a huge advantage over other Linux desktop environments. It's not clear why adding an additional Content Type GUI drop-down would be problematic. On the contrary, it would be very beneficial. > (In reply to Zamundaaa from comment #16) > Adding a CLI option would be possible While a CLI option would be better than no option, it wouldn't necessarily be the best UX (but would still be a appreciated). A GUI option would make for the best UX though.