Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Atmos + 5.1 in same set support #1577

Closed
matthuisman opened this issue Jun 12, 2024 · 3 comments
Closed

Atmos + 5.1 in same set support #1577

matthuisman opened this issue Jun 12, 2024 · 3 comments
Labels
Type: Feature non-breaking change which adds functionality

Comments

@matthuisman
Copy link
Contributor

Describe the feature

In Kodi 21 - the below still only adds the 5.1 rep set.
The Atmos is no where to be found.
I've had to keep my proxy enabled that pulls out the atmos into its own adaptionset

<AdaptationSet subsegmentAlignment="true" subsegmentStartsWithSAP="1" id="2" lang="en" contentType="audio">
	<ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" cenc:default_KID="01008cdc-b959-8130-cf60-da54230e5e65" value="cenc"/>
	<ContentProtection schemeIdUri="urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95">
		<cenc:pssh>AAA...</cenc:pssh>
	</ContentProtection>
	<ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed">
		<cenc:pssh>AAA....</cenc:pssh>
	</ContentProtection>
	<Representation mimeType="audio/mp4" audioSamplingRate="48000" bandwidth="258610" codecs="ec-3" id="a11">
		<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="6"/>
		<BaseURL>a/1_791d8c/a11.mp4</BaseURL>
		<SegmentBase timescale="48000" presentationTimeOffset="390379990" indexRange="658-30593">
			<Initialization range="0-657"/>
		</SegmentBase>
	</Representation>
	<Representation mimeType="audio/mp4" audioSamplingRate="48000" bandwidth="642610" codecs="ec-3" id="a13">
		<SupplementalProperty schemeIdUri="tag:dolby.com,2018:dash:EC3_ExtensionType:2018" value="JOC"/>
		<SupplementalProperty schemeIdUri="tag:dolby.com,2018:dash:EC3_ExtensionComplexityIndex:2018" value="16"/>
		<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="6"/>
		<BaseURL>a/1_791d8c/a13.mp4</BaseURL>
		<SegmentBase timescale="48000" presentationTimeOffset="390379990" indexRange="660-30595">
			<Initialization range="0-659"/>
		</SegmentBase>
	</Representation>
</AdaptationSet>

Motivation

support atmos correctly in MAX

Are you willing to contribute in development?

No

Should a possible backport be considered?

No

@matthuisman matthuisman added the Type: Feature non-breaking change which adds functionality label Jun 12, 2024
@CastagnaIT
Copy link
Collaborator

you need to verify if both representation's are atmos before,
have you verified if the first representation its really an atmos despite its missing the SupplementalProperty JOC ? it could be a oversight of the provider that forgot only to add JOC on repr?

if not, on dolby specs the normal 5.1 stream and atmos stream must be placed on differents AdaptationSet's

@matthuisman
Copy link
Contributor Author

the first rep is not atmos. 2nd rep is atmos

HBO does this.
If its not actually correct - I can keep with my method to pull the ATMOS to its own adapation set :)

@CastagnaIT
Copy link
Collaborator

CastagnaIT commented Jun 13, 2024

i have investigated a bit better
so in the past i took as reference this example:
https://ott.dolby.com/OnDelKits/DDP/Dolby_Digital_Plus_Online_Delivery_Kit_v1.5/Documentation/Content_Creation/SDM/help_files/topics/ddp_mpeg_dash_c_mpd_xmp_single_av_atmos.html
but that example was not multibitrate, and i didn't notice that exists other examples,
the documentation is not so explicit about this...

this is a multibitrate example
https://ott.dolby.com/OnDelKits/DDP/Dolby_Digital_Plus_Online_Delivery_Kit_v1.5/Test_Signals/example_streams/DASH/OnDemand/MPD/Holi_25fps_example_1_clean.mpd
thats similar to your mpd

for multibitrate cases when the bitrate start to decreasing, the atmos characteristics start to be less or none
atmos requires high bitrates to be fully supported in a stream

so imo it's right to keep everything in a single AdaptationSet
since at lower bitrate (for worst network condition cases) is equal to less or none characteristics

if network condition is good ISA should be able to select the higher bandwidth audio repr (bandwidth="642610" in your mpd) and set atmos label to the audio track
using the "fixed resolution" stream selection, it force select the higher audio bitrate so atmos label should be shown, this can be a sure confirmation

but yes, if you want to allow users to select lower bitrates streams from GUI that are without atmos characteristics,
it is right to hack the manifest to split streams in to differents AdaptationSet's, but why?

@CastagnaIT CastagnaIT closed this as not planned Won't fix, can't repro, duplicate, stale Jul 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Feature non-breaking change which adds functionality
Projects
None yet
Development

No branches or pull requests

2 participants