-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Ability to get AudioTracks and their qualities (Representation) and set the audio #3544
Comments
This can already be done with the setting |
Hi @avelad. Thanks. However, it's not clear to me how to get and select the audio tracks (functions Can you explain it to me? |
|
Well... Of course, everything can be done on the application side. For example, avoiding this behavior from Shaka to consider two languages as the same can be avoided by preprocessing the manifest and changing the language to something unique. In fact, we already have the implementation through the variant tracks and the preprocessing above. However, this feature request is two things, the one that is already implemented through
The problem gets bigger when an audio AdaptationSet has more than one Representation. |
@cristian-atehortua I'll probably work on this in February :) |
Have you read the FAQ and checked for duplicate open issues?
Yes, there is nothing related to this.
Is your feature request related to a problem? Please describe.
Currently, our dash manifests can have different AdaptationSet with the same languages and the same roles (or no roles). Those audio tracks are different, but ShakaPlayer is considering that they are the same when calling
getAudioLanguagesAndRoles
orgetAudioLanguages
. Therefore, when using those functions, the user is not able to see all options.Additionally, our UI relies on some properties inside the Representation tag (the qualities of the AudioTrack) to display the name.
We try to achieve this by parsing the values returned by
getVariantTracks
and change the audio usingselectVariantTrack
but, as ShakaPlayer considers those audios the same, ABR will change the selected audio at any time.Describe the solution you'd like
It would be nice if we can call a function, let's say
getAudioTracks
that returns the information of every AdaptationSet inside the manifest with a structure similar to this:Each object inside of
qualities
could have a structure similar toIt is important to provide a function to change the AudioTrack using the values returned for this hypothetical function.
selectAudioTrack
Also, it is important to mention that to work properly, default ABR implementation should change a little bit to not consider those tracks as the same. In fact, with this change, the workaround I mentioned above will work.
The text was updated successfully, but these errors were encountered: