[x86_64] Dropped frames with passthrough enabled on Intel DG2

  • I'm currently running a Dg2 (Arc A310) system with LE 13, and it works pretty well. HDR and audio passthrough works! (... with the HDMI 10-bit max patch applied)

    But I have an issue where the playback of 23.976p 2160p HDR content drops frames (= av corrections) pretty constantly every 12 to 18 minutes. The hardware is more than capable of decoding even AV1 8k60 hdr content, so it shouldn't be a hardware "is too slow" issue.

    The logs also do not indicate anything wrong. The 23p HDMI mode, "3840x2160 with 3840x2160 @ 23.976025 Hz," looks good.

    I know with passthrough enabled, Kodi is not able to resample the audio on the fly to accommodate for drifting due to framerates not matching (content =/= display). But is this even a thing on the hardware? I was under the impression that Intel (and AMD) have pretty good HDMI timings, so a frame-drop-less playback is pretty much plug and play. Whereas Nvidia needs hdmi clock tunings...

    Did this change? Is this different on Linux?

    Is there anything I can do? It drops frames regardless of the audio codec used for passthrough.

    Does the setting "maxpassthroughoffsyncduration" help?

    Or is the only thing i should test an EDID mod with different HDMI timings?

    Any help is appreciated! Thanks! :)

    (The attached log is with playback through a plugin (pm4K) - however, the dropped frame issue also happens with playback through Kodi without any plugin in the chain. It was just the log that I had flying around.)

  • This describes our generally recommended configuration: https://wiki.libreelec.tv/configuration/4k-hdr .. using adjust-refresh with the mode whitelist gives the best experience. There is no need to set anything in advancedsettings.xml.

    There is one outstanding audio bug https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10199 for which there is a workaround hack available while we continue to pester Intel devs about a fix: https://github.com/LibreELEC/LibreELEC.tv/pull/8588.

  • Thanks for your response!

    I have adjust-refreshrate enabled with all the modes I need selected... LE/Kodi also switches to them just fine... but while playback is running, it drops frames constantly. Audio (with passthrough) is not a problem... it's all about video framedrops...


    I guess I need to tinker with modified EDID...

  • For anyone interested.

    While testing the custom EDID, I found that Kodi in its "default" version does not accept those custom 23p modes due to the calculation done by the Kodi code.

    I made a fix and opened a PR, there I also explained the problem in more detail => https://github.com/xbmc/xbmc/pull/28080


    With that fix applied, Kodi now "accepts" new custom modes.

    I'm currently testing an EDID created with CRU with a slightly altered 23p mode.

    This site is very useful for custom mode timings => https://www.monitortests.com/pixelclock.php

    I noticed how important the blanking values (horizontal and vertical) are... Vertical above 80 and horizontal above 180 for audio passthrough to be working fine...