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

MEDIA.BUFFER_READ_OUT_OF_BOUNDS error when CEA caption packets are empty #3608

Closed
caridley opened this issue Aug 30, 2021 · 1 comment · Fixed by #3609
Closed

MEDIA.BUFFER_READ_OUT_OF_BOUNDS error when CEA caption packets are empty #3608

caridley opened this issue Aug 30, 2021 · 1 comment · Fixed by #3609
Labels
status: archived Archived and locked; will not be updated

Comments

@caridley
Copy link
Contributor

Have you read the FAQ and checked for duplicate open issues?
Yes

What version of Shaka Player are you using?
3.1.2
the problem does not occur with Shaka 2.5.22

Can you reproduce the issue with our latest release version?
Have not tested but quite certain that the problem will occur since it occurs with 3.1.2 and current master.

Can you reproduce the issue with the latest code from master?
Yes

Are you using the demo app or your own custom app?
Custom app

If custom app, can you reproduce the issue using our demo app?
No

What browser and OS are you using?
Chrome 92.0.4515.159 on Mac OS 10.15.7

For embedded devices (smart TVs, etc.), what model and firmware version are you using?

What are the manifest and license server URIs?
We will provide sample content if needed.

What configuration are you using? What is the output of player.getConfiguration()?
We will provide this if needed, but we have already diagnosed the root cause and have will submit an PR soon

What did you do?
Played one of our DASH VOD streams that contains some empty embedded CEA caption packets.

What did you expect to happen?
Player should continue playing the stream as it does with Shaka 2.5.22

What actually happened?
This error is emitted and playback stops MEDIA.BUFFER_READ_OUT_OF_BOUNDS

This screen shot from devtools shows that the error originated in closed caption parsing code.

More specifically it occurs when CeaDecoder is passed an empty uint8ArrayData.

@caridley
Copy link
Contributor Author

Here is an sample video segment that exhibits this problem
bad_captions_video_segment.mp4.zip

caridley added a commit to caridley/shaka-player that referenced this issue Aug 30, 2021
… caption packets are empty

Added check for empty caption packets in closed_caption_parser.

Added a unit test that verifies the closed_caption_parser now works with a video segment that contains empty caption packets.
joeyparrish pushed a commit that referenced this issue Sep 9, 2021
…s are empty (#3609)

Added check for empty caption packets in closed_caption_parser.

Added a unit test that verifies the closed_caption_parser now works with a video segment that contains empty caption packets.

Fixes #3608
joeyparrish pushed a commit that referenced this issue Oct 12, 2021
…s are empty (#3609)

Added check for empty caption packets in closed_caption_parser.

Added a unit test that verifies the closed_caption_parser now works with a video segment that contains empty caption packets.

Fixes #3608
joeyparrish pushed a commit that referenced this issue Oct 12, 2021
…s are empty (#3609)

Added check for empty caption packets in closed_caption_parser.

Added a unit test that verifies the closed_caption_parser now works with a video segment that contains empty caption packets.

Fixes #3608
@shaka-bot shaka-bot added the status: archived Archived and locked; will not be updated label Nov 8, 2021
@shaka-project shaka-project locked and limited conversation to collaborators Nov 8, 2021
caridley added a commit to caridley/shaka-player that referenced this issue Aug 25, 2022
… caption packets are empty

Added check for empty caption packets in closed_caption_parser.

Added a unit test that verifies the closed_caption_parser now works with a video segment that contains empty caption packets.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
status: archived Archived and locked; will not be updated
Projects
None yet
2 participants