Closed nishantkp closed 3 years ago
https://github.com/google/ExoPlayer/issues/474
Take a look at this ticket. Seems like there is no support for #EXT-X-I-FRAME-STREAM-INF tag.
And also look at this: https://github.com/google/ExoPlayer/pull/6270
Hi, just a quick update, I've updated the referenced bugs to reflect that they have already been addressed (sorry for lagging behind on them!). So I-FRAME only variants are now fully supported. I'll leave the original question to @christosts.
The keyframes tracks have a format
that is flagged with C.ROLE_FLAG_TRICK_PLAY
. To identify keyframe tracks, inspect the formats inside the TrackGroup
and check if any for the Format's roleFlags
contains C.ROLE_FLAG_TRICK_PLAY
:
format.roleFlags & C.ROLE_FLAG_TRICK_PLAY == C.ROLE_FLAG_TRICK_PLAY
Alternatively, to keep only the video tracks, check that their formats are not flagged with C.ROLE_FLAG_TRICK_PLAY
:
format.roleFlags & C.ROLE_FLAG_TRICK_PLAY == 0
Closing this ticket, feel free to re-open if the answer is not sufficient.
Question
I have a HLS manifest, which supposedly has 5 video tracks but ExoPlayer shows 8 video tracks. There is a total of 5 variants and 3 keyframes. How do I differentiate between variants and keyframes? I am only interested in variants for video track selection.
Link to test content
This is the manifest file, it shows 5 variants and 3 keyframes, but when I play it with the ExoPlayer demo app and open track selection dialog...it shows 8 video tracks instead of 5.
This is the log from ExoPlayer demo,
ExoPlayer version : 2.12.1