Menu

#23 subtitle track cannot playback by dash.js

v1.0 (example)
closed
nobody
None
5
2015-12-10
2015-12-09
huo
No

Hi,

i generate a mpd by mp4box, which include 1 video track, 2 audil tarcks and 3 sutitle tracks, then i play it use dash.js.

but the video and audio can play, subtitles cannot show, i dont kown why, could you help me check my file and command?

the detail message as below:

thank you!

mp4box version:

$ MP4Box -version
MP4Box - GPAC version 0.5.2-DEV-revUNKNOWN-UNKNOWN
GPAC Copyright (c) Telecom ParisTech 2000-2012
GPAC Configuration:
Features: GPAC_64_BITS GPAC_DISABLE_3D

mp4 info:

$ MP4Box -info out.mp4
Movie Info
Timescale 1000 - Duration 00:06:51.950
7 track(s)
Fragmented File: no
File Brand isom - version 512
Created: UNKNOWN DATE Modified: UNKNOWN DATE
File has no MPEG4 IOD/OD

Chapters:
Chapter #1 - 00:00:00.000 - "Chapter 1"

iTunes Info:
Encoder Software: Lavf55.48.100
2 UDTA types: meta (1) chpl (1)

Track # 1 Info - TrackID 1 - TimeScale 60000 - Media Duration 00:02:00.003
Track has 1 edit lists: track duration is 00:02:00.004
Media Info: Language "und (und)" - Type "vide:avc1" - 7193 samples
Visual Track layout: x=0 y=0 width=832 height=480
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 832 x 480
AVC Info: 1 SPS - 1 PPS - Profile High @ Level 3.1
NAL Unit length bits: 32
SPS#1 hash: 45FE9FE525CF527940238E8799F83072E8A2E596
PPS#1 hash: 6648DAA985D842149E548D6CDE2C2151B02BF03F
Self-synchronized
RFC6381 Codec Parameters: avc1.64001f
Average GOP length: 64 samples

Track # 2 Info - TrackID 2 - TimeScale 48000 - Media Duration 00:02:00.000
Track has 1 edit lists: track duration is 00:02:00.000
Media Info: Language "tha (tha)" - Type "soun:mp4a" - 5625 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Synchronized on stream 1
RFC6381 Codec Parameters: mp4a.40.2
Alternate Group ID 1
All samples are sync

Track # 3 Info - TrackID 3 - TimeScale 48000 - Media Duration 00:02:00.000
Track has 1 edit lists: track duration is 00:02:00.000
Track is disabled
Media Info: Language "eng (eng)" - Type "soun:mp4a" - 5625 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Synchronized on stream 1
RFC6381 Codec Parameters: mp4a.40.2
Alternate Group ID 1
All samples are sync

Track # 4 Info - TrackID 4 - TimeScale 1000 - Media Duration 00:01:59.651
Track has 1 edit lists: track duration is 00:01:59.651
Media Info: Language "tha (tha)" - Type "sbtl:tx3g" - 57 samples
Unknown Text Stream
Size 832 x 60 - Translation X=0 Y=0 - Layer 0
RFC6381 Codec Parameters: tx3g
Alternate Group ID 3
All samples are sync

Track # 5 Info - TrackID 5 - TimeScale 1000 - Media Duration 00:01:59.861
Track has 1 edit lists: track duration is 00:01:59.861
Track is disabled
Media Info: Language "eng (eng)" - Type "sbtl:tx3g" - 63 samples
Unknown Text Stream
Size 832 x 60 - Translation X=0 Y=0 - Layer 0
RFC6381 Codec Parameters: tx3g
Alternate Group ID 3
All samples are sync

Track # 6 Info - TrackID 6 - TimeScale 1000 - Media Duration 00:06:51.950
Track has 1 edit lists: track duration is 00:06:51.950
Track is disabled
Media Info: Language "und (und)" - Type "sbtl:tx3g" - 2 samples
Unknown Text Stream
Size 0 x 0 - Translation X=0 Y=0 - Layer 0
RFC6381 Codec Parameters: tx3g
Alternate Group ID 3
All samples are sync

Track # 7 Info - TrackID 7 - TimeScale 1000 - Media Duration 00:02:00.000
Track has 1 edit lists: track duration is 00:02:00.000
Track is disabled
Media Info: Language "und (und)" - Type "text:text" - 1 samples
Unknown Text Stream
Size 0 x 0 - Translation X=0 Y=0 - Layer 0
RFC6381 Codec Parameters: text
All samples are sync

mp4box command

$ MP4Box -dash 10000 -rap -profile dashavc264:onDemand -url-template out.mp4#trackID=1 out.mp4#trackID=2 out.mp4#trackID=3 out.mp4#trackID=4 out.mp4#trackID=5 out.mp4#trackID=6

mpd

$ vi out_dash.mpd
<?xml version="1.0"?>

<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" minBufferTime="PT1.500S" type="static" mediaPresentationDuration="PT0H6M51.950S" maxSegmentDuration="PT0H0M10.000S" profiles="urn:mpeg:dash:profile:isoff-on-demand:2011,http://dashif.org/guidelines/dash264">
<ProgramInformation moreInformationURL="http://gpac.sourceforge.net">
<Title>out_dash.mpd generated by GPAC</Title>
</ProgramInformation>

<Period duration="PT0H6M51.950S">
<AdaptationSet segmentAlignment="true" maxWidth="832" maxHeight="480" maxFrameRate="60000/1001" par="832:480" lang="und" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="1" mimeType="video/mp4" codecs="avc1.64001f" width="832" height="480" frameRate="60000/1001" sar="1:1" startWithSAP="1" bandwidth="737537">
<BaseURL>out_track1_dashinit.mp4</BaseURL>
<SegmentBase indexRangeExact="true" indexRange="970-1157">
<Initialization range="0-969"/>
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet segmentAlignment="true" group="1" lang="tha" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="2" mimeType="audio/mp4" codecs="mp4a.40.2" audioSamplingRate="48000" startWithSAP="1" bandwidth="161646">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
<BaseURL>out_track2_dashinit.mp4</BaseURL>
<SegmentBase indexRangeExact="true" indexRange="903-1090">
<Initialization range="0-902"/>
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet segmentAlignment="true" group="1" lang="eng" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="3" mimeType="audio/mp4" codecs="mp4a.40.2" audioSamplingRate="48000" startWithSAP="1" bandwidth="161677">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
<BaseURL>out_track3_dashinit.mp4</BaseURL>
<SegmentBase indexRangeExact="true" indexRange="903-1090">
<Initialization range="0-902"/>
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet segmentAlignment="true" group="2" lang="tha" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="4" mimeType="video/mp4" codecs="tx3g" startWithSAP="1" bandwidth="350">
<BaseURL>out_track4_dashinit.mp4</BaseURL>
<SegmentBase indexRangeExact="true" indexRange="891-1066">
<Initialization range="0-890"/>
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet segmentAlignment="true" group="2" lang="eng" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="5" mimeType="video/mp4" codecs="tx3g" startWithSAP="1" bandwidth="311">
<BaseURL>out_track5_dashinit.mp4</BaseURL>
<SegmentBase indexRangeExact="true" indexRange="891-1066">
<Initialization range="0-890"/>
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet segmentAlignment="true" group="2" lang="und" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="6" mimeType="video/mp4" codecs="tx3g" startWithSAP="1" bandwidth="121">
<BaseURL>out_track6_dashinit.mp4</BaseURL>
<SegmentBase indexRangeExact="true" indexRange="891-1426">
<Initialization range="0-890"/>
</SegmentBase>
</Representation>
</AdaptationSet>
</Period>
</MPD>

Discussion

  • Jean Le Feuvre

    Jean Le Feuvre - 2015-12-09

    please use github for your questions.
    I believe tx3g (apple & 3gpp timed text) is not supported by dash.js and/or underlying media engine in browser

     
    • huo

      huo - 2015-12-11

      hi jeanlf,

      i cannot create ticket.
      would you like to tell me the reason?
      thank you!

       
      • Romain Bouqueau

        Romain Bouqueau - 2015-12-11

        Please use github to report issues: https://github.com/gpac/gpac

        Thank you!

         
        • huo

          huo - 2015-12-14

          Thank you very much!

           
  • Jean Le Feuvre

    Jean Le Feuvre - 2015-12-09
    • status: open --> closed
     
  • huo

    huo - 2015-12-10

    thank you for your advice

     

Log in to post a comment.