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>
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
hevcas 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:
src/Jellyfin.Plugin.Dlna/Profiles/Xml/LG Smart TV.xml#L39:
As a quick fix, I changed both lines to remove
hevcand 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 thepluginsdirectory.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?