-
Notifications
You must be signed in to change notification settings - Fork 6k
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
trun from Text track is being associated with wrong TrackBundle when playing video with both a Video track and a Text track #9056
Comments
I'm not really sure why we committed a workaround for the issue you refer to. I'm tempted just to revert it. |
That said, I'm also not sure what the text track in the attached file is. Have you found any player that will actually display the text track, and do you know how this file was created? |
Thanks for getting back so soon. Agreed, doesn't seem quite right. I am not interested in displaying the text track in a video player, it is just a way to associate metadata from our custom hardware with the video that we recorded. We store are going to store the data as JSON in the text track to be parsed later. This video was made by us using custom hardware. |
Got it. The workaround that introduced the problem you're seeing is:
The problem with it is that "only one track" is actually implemented as "only one track that we recognize", which is not quite the same thing. In your video there are two tracks, but we don't recognize the text track you're adding. To fix this we should either revert the workaround or plumb through the unrecognized tracks (or at least a boolean indicating that there are some) somehow. |
Note that this removes a workaround for malformed content, in which the track_ID is set incorrectly. It's unclear there was sufficient reason to implement that workaround, and so it's preferable to remove it, rather than implementing the concept of unrecognized tracks, which would be needed to keep it and to also fix this issue. Issue: #9056 #minor-release PiperOrigin-RevId: 379506261
Note that this removes a workaround for malformed content, in which the track_ID is set incorrectly. It's unclear there was sufficient reason to implement that workaround, and so it's preferable to remove it, rather than implementing the concept of unrecognized tracks, which would be needed to keep it and to also fix this issue. Issue: google#9056 PiperOrigin-RevId: 379506261
Note that this removes a workaround for malformed content, in which the track_ID is set incorrectly. It's unclear there was sufficient reason to implement that workaround, and so it's preferable to remove it, rather than implementing the concept of unrecognized tracks, which would be needed to keep it and to also fix this issue. Issue: #9056 PiperOrigin-RevId: 379506261
When attempting to play a fragmented .mp4 video that contains a Video track and a Text track (see mp4info screen grab below), the trun from the Text track is being added to the Video track causing an
"Invalid NAL length" ParserException
to be thrown. I believe this is caused by the fix added for this issue inFragmentedMp4Extractor.java
on line 921.You can reproduce this by playing the video I emailed to dev.exoplayer@gmail.com in the sample exoplayer app. That video plays in all other video players I have tried including Chrome, Firefox, iOS, and more.
mp4info dump from Bento:
Error Stack Trace:
Exoplayer version: 2.13.3
Android version: 11
Android device: Pixel 3 XL
The text was updated successfully, but these errors were encountered: