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

m3u8-parser and mpd-parser - kind for closed-captions #8602

Open
MCab93 opened this issue Feb 21, 2024 · 2 comments
Open

m3u8-parser and mpd-parser - kind for closed-captions #8602

MCab93 opened this issue Feb 21, 2024 · 2 comments
Labels
needs: triage This issue needs to be reviewed

Comments

@MCab93
Copy link

MCab93 commented Feb 21, 2024

Description

Hello,

for closed-captions (CC) while parsing data we got object

{
    id: "Čeština (CC)",
    kind: "subtitles", 
    label: "Čeština (CC)",
    language: "cs" 
}

which is apart from letters in bracelet same as for notes without CC

{
    id: "Čeština",
    kind: "subtitles",
    label: "Čeština",
    language: "cs"
}

Suppossedly for closed-captions the kind should not be "subtitles" but "captions".
Can you please confirm this is as required -> therefore we need to differentiate based on existence (CC) in id, or should the kind captions be used <

Reduced test case

null

Steps to reproduce

Parsing m3u8:

#EXTM3U
#EXT-X-VERSION:6
## Created with Unified Streaming Platform  (version=1.13.0-29687)
## Edited by Unified manifest-edit, using the following pipeline:
## m3u8_main:
## - manifest_edit.plugins.m3u8_main.default_language:
##   - autoselect: 'YES'
##     default: 'NO'
##     language: .*
##     type: SUBTITLES

# AUDIO groups
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-aacl-128",LANGUAGE="cs",NAME="Čeština",DEFAULT=YES,AUTOSELECT=YES,CHANNELS="2",URI="auddesc-audio_ces=128000.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-aacl-128",LANGUAGE="cs",NAME="Čeština (AD)",AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video",CHANNELS="2",URI="auddesc-audio_ces_1=128000.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-aacl-128",LANGUAGE="en",NAME="English",AUTOSELECT=YES,CHANNELS="2",URI="auddesc-audio_eng=128000.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-aacl-128",LANGUAGE="en",NAME="English (AD)",AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video",CHANNELS="2",URI="auddesc-audio_eng_1=128000.m3u8"

# SUBTITLES groups
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="cs",NAME="Čeština",AUTOSELECT=YES,URI="auddesc-textstream_ces=1000.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="cs",NAME="Čeština (CC)",AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.transcribes-spoken-dialog,public.accessibility.describes-music-and-sound",URI="auddesc-textstream_ces_1=1000.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="cs",NAME="Čeština (forced)",AUTOSELECT=YES,FORCED=YES,URI="auddesc-textstream_ces_2=1000.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="auddesc-textstream_eng=1000.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="de",NAME="Deutsch",AUTOSELECT=YES,URI="auddesc-textstream_ger=1000.m3u8"

# variants
#EXT-X-STREAM-INF:BANDWIDTH=1144000,CODECS="mp4a.40.2,avc1.42C01E",RESOLUTION=768x432,AUDIO="audio-aacl-128",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
auddesc-video_ces=956000.m3u8

# variants
#EXT-X-STREAM-INF:BANDWIDTH=541000,CODECS="mp4a.40.2,avc1.42C015",RESOLUTION=512x288,AUDIO="audio-aacl-128",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
auddesc-video_ces=387000.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=945000,CODECS="mp4a.40.2,avc1.42C01E",RESOLUTION=640x360,AUDIO="audio-aacl-128",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
auddesc-video_ces=768000.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1725000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=1024x576,AUDIO="audio-aacl-128",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
auddesc-video_ces=1504000.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2255000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=1280x720,AUDIO="audio-aacl-128",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
auddesc-video_ces=2004000.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=3291000,CODECS="mp4a.40.2,avc1.4D4028",RESOLUTION=1920x1080,AUDIO="audio-aacl-128",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
auddesc-video_ces=2981000.m3u8

# keyframes
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=52000,CODECS="avc1.42C015",RESOLUTION=512x288,URI="keyframes/auddesc-video_ces=387000.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=102000,CODECS="avc1.42C01E",RESOLUTION=640x360,URI="keyframes/auddesc-video_ces=768000.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=127000,CODECS="avc1.42C01E",RESOLUTION=768x432,URI="keyframes/auddesc-video_ces=956000.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=200000,CODECS="avc1.4D401F",RESOLUTION=1024x576,URI="keyframes/auddesc-video_ces=1504000.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=266000,CODECS="avc1.4D401F",RESOLUTION=1280x720,URI="keyframes/auddesc-video_ces=2004000.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=395000,CODECS="avc1.4D4028",RESOLUTION=1920x1080,URI="keyframes/auddesc-video_ces=2981000.m3u8"

Errors

No response

What version of Video.js are you using?

2.16.

Video.js plugins used.

No response

What browser(s) including version(s) does this occur with?

chrome 121.0.6167.161

What OS(es) and version(s) does this occur with?

windows 10

@MCab93 MCab93 added the needs: triage This issue needs to be reviewed label Feb 21, 2024
Copy link

welcome bot commented Feb 21, 2024

👋 Thanks for opening your first issue here! 👋

If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of issues on this repo, so please be patient and we will get back to you as soon as we can.
To help make it easier for us to investigate your issue, please follow the contributing guidelines.

@gkatsev
Copy link
Member

gkatsev commented Feb 21, 2024

Looks like VHS currently only marks in-stream captions as captions and all ext-x-media subtitles as subtitles, though, according to safari's behavior if there's characteristics, it should be marked as captions. We should probably follow suit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs: triage This issue needs to be reviewed
Projects
None yet
Development

No branches or pull requests

2 participants