Skip to content

HEVC Codec Support Issue for Older LG Smart TVs (e.g. 55LB674V.AEU) #152

@b-01

Description

@b-01

I have a LG Smart TV (55LB674V.AEU) from 2014, and whenever I tried to play videos over DLNA, I noticed that some files were not playing (the screen just stayed black). After some investigation, I narrowed it down to HEVC encoded videos. H264 files were all playing fine. I then checked the product specifications and confirmed that my TV does not support HEVC encoded videos.

Further investigation of the plugin profile for LG Smart TVs showed that the DirectPlayProfile lists hevc as supported codecs - so Jellyfin never tries to transcode HEVC files for any LG TVs, even though my TV does not support it:

src/Jellyfin.Plugin.Dlna/Profiles/Xml/LG Smart TV.xml#L38:

<DirectPlayProfile container="ts,mpegts,avi,mkv,m2ts" audioCodec="aac,ac3,eac3,mp3,dca,dts" videoCodec="h264,hevc" type="Video" />

src/Jellyfin.Plugin.Dlna/Profiles/Xml/LG Smart TV.xml#L39:

<DirectPlayProfile container="mp4,m4v" audioCodec="aac,ac3,eac3,mp3,dca,dts" videoCodec="h264,mpeg4,hevc" type="Video" />

As a quick fix, I changed both lines to remove hevc and now everything works fine. However, I have to make these changes whenever the major version of the DLNA plugin changes, as it creates a new folder in the plugins directory.

My question is: How can I help to better identify my TV (as there is an Identification block in the XML) in order to create a new XML profile - either for my specific TV model or for LG TVs without HEVC support? How can i get the HttpHeader from my TV? What other methods for identification exist?

  <Identification>
    <FriendlyName>LG</FriendlyName>
    <Headers>
      <HttpHeaderInfo name="User-Agent" value="LG" match="Substring" />
    </Headers>
  </Identification>

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions