b-jesch / skin.estuary.modv2

A Skin for Matrix/Nexus/Omega
Other
99 stars 32 forks source link

Version selector Audio Codec Flag issue. #158

Closed C4Wiz closed 4 months ago

C4Wiz commented 4 months ago

In wall view the Atmos flag is Honored, but in the version selector and videoinfo screens it is not.

See attached screenshots:

screenshot00003 screenshot00004 screenshot00005

b-jesch commented 4 months ago

Atmos detection is by filename (contains "atmos" within). Normally TrueHD is the right output as this comes from media info by Kodi core (VideoPlayer.AudioCodec, ListItem.AudioCodec). Mediainfo returns for this files TRUEHD as codec info too:

e.g. Retribution.mkv:

Audio #1 ID : 2 Format : MLP FBA 16-ch Format/Info : Meridian Lossless Packing FBA with 16-channel presentation Commercial name : Dolby TrueHD with Dolby Atmos Codec ID : A_TRUEHD ...

In the next versions I plan to remove the codec information by file name. This will also affect DTS-X.

C4Wiz commented 4 months ago

I understand that, i have atmos in the file name and it is not detected properly is what im saying. Why would you remove filename detection if kodi does not do it natively?

b-jesch commented 4 months ago

Because natively it's TrueHD (and Dolby Atmos included in most cases). Detection of any kind via file name is fakeable and doesn't reflect what is actually inside.

C4Wiz commented 4 months ago

Because natively it's TrueHD (and Dolby Atmos included in most cases). Dedection of any kind via file name is fakeable and doesn't reflect what is actually inside.

so the only way to know if the movie you are going to watch is atmos or truehd is to play the movie and see what comes up on the reciever display?

that makes no sense to me! the point of file name detection is to add what kodi can not natively!

if someone wants to fake having atmos thats on them, why remove it for those of us that rely on it for proper cataloging?

C4Wiz commented 4 months ago

but since this is your skin and you know it in and out, do you mind telling me how to fix it for my own use?

b-jesch commented 4 months ago

;) So we both have a different view point of such things. That's life. But I accept your point of view too and I'm sure finding a proper solution. For now there is to much file name detection of audio codecs what have to simplified anyway: https://github.com/b-jesch/skin.estuary.modv2/blob/b6224f2cbc0a1952b395527a5a708cf8efe8800a/xml/Variables.xml#L1694-L1733

C4Wiz commented 4 months ago

This fixed the issue!

so i created this:

<variable name="Container6_AudioCodecFlagVar">
        <value condition="String.Contains(Container(6).ListItem.Filenameandpath,ATMOS)">flags/audiocodec/atmos.png</value>
        <value condition="String.Contains(Container(6).ListItem.Filenameandpath,DTS-X)">flags/audiocodec/dts-x.png</value>
        <value condition="String.Contains(Container(6).ListItem.Filenameandpath,DTSX)">flags/audiocodec/dts-x.png</value>
        <value>$INFO[Container(6).ListItem.AudioCodec,flags/audiocodec/,.png]</value>
    </variable>

then added this to Includes_DialogSelect.xml

                    <control type="group">
                <left>-30</left>
                <right>200</right>
                <bottom>0</bottom>
                <height>70</height>
                <visible>Control.HasFocus(6)</visible>
                <include content="MediaFlagsInfoDialogLeft">
                    <param name="align" value="left" />
                    <param name="infolabel_prefix" value="Container(6)." />
                    <param name="show_ratings" value="false" />
                    <param name="resolution_var" value="$VAR[Container6_3DFlagVar]" />
                    <param name="audiocodec_var" value="$VAR[Container6_AudioCodecFlagVar]" />
                </include>
b-jesch commented 4 months ago

Has been fixed: https://github.com/b-jesch/skin.estuary.modv2/commit/baf07da458e6504228296260dd6134f93e9b5e38