Sorry, you need to enable JavaScript to visit this website.

YCbCr 4:2:0 over HDMI

4 posts / 0 new
Phil Hamilton's picture
Starter
Phil Hamilton

Aug 11, 2016 - 02:01am

  • Hi,

     

    I have been trying to figure out how I can output YCbCr 4:2:0 over HDMI instead of RGB with Intel graphics?

     
    I have a Sony TV, which supports 3840x2160p 60hz, but the TV will only accept YCbCr at that resolution, but Intel Linux Driver only outputs at RGB. So the TV displays "Unsupported signal, Check your device output".
     
    Just to answer the typical questions: I have a UHD TV with HDMI 2.0 ports, HDMI 2.0 cable (tried multiple) and an Intel NUC6i7KYK (Skull Canyon). The HDMI cable is plugged into the HDMI 2.0 port on the NUC then straight into the TV (no AVR).
    I can confirm this works as Running Windows 10 allows 3840x2160p at 60hz without issue (because Intel Graphics Control Panel supports YCbCr)
     
    I have tried Ubuntu 16.04 (with all available updates) and the latest 16.10 daily build.
    I installed LibreELEC Milhouse nightly which is using Linux Kernel 4.7.0 (I wanted to try a newer kernel... still not resolved).
     
    The TV supports RGB at 1080p and 2160p 30hz, but not at 2160p 60hz.
    The TV specs shows (YCbCr4:2:0 8bit) for 2160p 60hz. But from what I can't seem to figure out is why I can't get 2160p at 30hz, when that should accept RGB?
     
    My main goal is to get 3840x2160 at 60hz
     
    Does anyone know if this is possible already or is there something I can install or patch to accomplish this?

     

    Thanks.

    Aug 11, 2016 - 02:01am
  • Hello - apologies for the delay - I haven't been in a posistion to find the answer to this for a while.
    I did some asking around, and the answer would appear to be:

    - This is technically possible but hasn't been implemented
    - The driver that would need to be patched is the i915.ko kernel module
    - I don't know if there are any plans to implement it.

    Oct 04, 2016 - 07:57am
  • It has been awhile since the last comment on this subject. I am curious if anything was done on this subject since? Is there any support yet for YUV 4:2:0?

    Aug 22, 2018 - 09:07am
  • Not that I have heard. I have seen multiple patches that add support... but nothing has been merged into the kernel

    Aug 22, 2018 - 04:05pm
  • I have managed to get this working with great help of Shashank from Intel. Following are the steps on Ubuntu 16.04:

    - get latest kernel from git clone git://anongit.freedesktop.org/drm-tip
    - patch the kernel with patches from  https://patchwork.freedesktop.org/series/36068/ (patch -p1 < patch_file)
    - compile the kernel following this instructions: https://wiki.ubuntu.com/KernelTeam/GitKernelBuild
    - reboot and enjoy 4K@60Hz
     
    In special case where your TV/EDID can support a max clock of 340Mhz (4k@30 clock), and shows 4k@60 using YCBCR4:2:0 output:
    - get the xserver sources code: apt-get source xserver-xorg-core
    - build dependences for compiling new X: sudo apt-get build-dep xserver-xorg-core
    - edit hw/xfree86/modes/xf86Modes.c and add "return;" after first function declaration of xf86ValidateModesClocks
    - compile new xserver: dpkg-buildpackage -rfakeroot -b and install resulting packages (more info can be found on: https://www.cmiss.org/cmgui/wiki/BuildingUbuntuPackagesFromSource
    - install new xserver and kernel: sudo dpkg -i *.deb
     
    Sep 07, 2018 - 01:34am