shaka-project / shaka-player

JavaScript player library / DASH & HLS client / MSE-EME player
Apache License 2.0
7.23k stars 1.34k forks source link

Close captions (CEA 608/708) are not working in Live HLS playback. #5627

Closed shashikantkonded-git closed 1 year ago

shashikantkonded-git commented 1 year ago

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

What version of Shaka Player are you using? v4.3.6

Can you reproduce the issue with our latest release version? Yes

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

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

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

What browser and OS are you using? Chrome

What configuration are you using? What is the output of player.getConfiguration()? Default web demo configs.

What did you do?

We are not able to get exact number of closed captions tracks which are mentioned in the HLS manifest. If any track is listed and available for selection then the selected track is not rendering the captions. E.g.

EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="CC",NAME="SERVICE1",INSTREAM-ID="SERVICE1"

EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="CC",NAME="SERVICE2",INSTREAM-ID="SERVICE2"

EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="CC",NAME="SERVICE3",INSTREAM-ID="SERVICE3"

The player is able to identify and list only one track. And after selecting the track the closed captions are not getting rendered.

The same is working fine with other players such as Exoplayer, Safari etc

What did you expect to happen? The closed captions should list as per manifest and should render the content properly.

avelad commented 1 year ago

Please fill out all the fields omitted from the bug template, and also provide a url so we can work on fixing it. Thank you!

shashikantkonded-git commented 1 year ago

Updated the descriptions and provided content link in a separate email with subject "Close captions (CEA 608/708) are not working in Live HLS playback. #5627".

avelad commented 1 year ago

I see the problem with the UI, in the tags that you declare the CCs it seems that you do not use the LANGUAGE attribute and that is why they are all identified as und, although the getTextTracks() API does return the 3 tracks. I am going to change the code so that when there is no LANGUAGE attribute the NAME attribute is taken.

shashikantkonded-git commented 1 year ago

Sure @avelad, but why all the tracks are not getting listed? and if we select the listed tracks the CC's are not rendered.

avelad commented 1 year ago

I found a error in our CEA708 parser, I'm working on a fix.

avelad commented 1 year ago

@shashikantkonded-git See https://github.com/shaka-project/shaka-player/pull/5694

shashikantkonded-git commented 1 year ago

@avelad We are currently using version 3.3.19. Is there any possibility of merging the solution to 3.3.x branch?

spvishwas122 commented 1 year ago

@avelad is it possible to merge this fix in 3.3.19 branch?

avelad commented 1 year ago

Sorry, 3.3.X is no longer maintained.