Opened 2 years ago

Closed 2 years ago

#9902 closed defect (needs_more_info)

Unable to Play encoded video using FFmpeg webm_dash_manifest encoder with Dash.js

Reported by: shirsendu Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: dash
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description (last modified by shirsendu)

Hi,

I am trying to transcode in webm dash format using

ffmpeg \
 -f webm_dash_manifest -i audio.webm \
 -f webm_dash_manifest -i video-800p.webm \
 -f webm_dash_manifest -i video-1280p.webm \
 -f webm_dash_manifest -i video-1920p.webm \
 -c copy -map 0 -map 1 -map 2 -map 3 \
 -adaptation_sets "id=0,streams=0 id=1,streams=1,2,3" \
 -f webm_dash_manifest \
 manifest.mpd
      webm_dash_manifest_duration: 6.91658e+06
      webm_dash_manifest_initialization_range: 544
      webm_dash_manifest_file_name: video-1280p.webm
      webm_dash_manifest_track_number: 1
      webm_dash_manifest_cues_start: 645266452
      webm_dash_manifest_cues_end: 645288083
      webm_dash_manifest_bandwidth: 1230753
      webm_dash_manifest_cluster_keyframe: 1
      webm_dash_manifest_cue_timestamps: 0,6708,13417,20125,26833,33542,40250,46958,53667,60375,67083,73792,80500,87208,93917,100625,107333,114042,120750,127458,134167,140875,147583,154292,161000,167708,174417,181125,187833,194542,201250,207958,214667,221375,228083,234792,241500,248208,254917,26
[libdav1d @ 000002a65e5cdc80] libdav1d 1.0.0-46-gcd5e415
Input #3, webm_dash_manifest, from './media/_Movie/Chandigarh Kare Aashiqui/Chandigarh Kare Aashiqui/video-1920p.webm':
  Metadata:
    title           :
    ENCODER         : Lavf59.27.100
  Duration: 01:55:16.58, bitrate: 2139 kb/s
  Stream #3:0: Video: av1 (Main), yuv420p10le(tv, bt709, progressive), 1920x820, SAR 1:1 DAR 96:41, 24 fps, 24 tbr, 1k tbn (default)       
    Metadata:
      title           : Encoded by HashMiner!
      ENCODER         : Lavc59.37.100 libsvtav1
      DURATION        : 01:55:16.584000000
      webm_dash_manifest_duration: 6.91658e+06
      webm_dash_manifest_initialization_range: 544
      webm_dash_manifest_file_name: video-1920p.webm
      webm_dash_manifest_track_number: 1
      webm_dash_manifest_cues_start: 1850068057
      webm_dash_manifest_cues_end: 1850089705
      webm_dash_manifest_bandwidth: 3777662
      webm_dash_manifest_cluster_keyframe: 1
      webm_dash_manifest_cue_timestamps: 0,6708,13417,20125,26833,33542,40250,46958,53667,60375,67083,73792,80500,87208,93917,100625,107333,114042,120750,127458,134167,140875,147583,154292,161000,167708,174417,181125,187833,194542,201250,207958,214667,221375,228083,234792,241500,248208,254917,26
Output #0, webm_dash_manifest, to './media/Movie/4-1/0/manifest.mpd':
  Metadata:
    title           :
    encoder         : Lavf59.27.100
  Stream #0:0(hin): Audio: opus, 48000 Hz, stereo, fltp (default)
    Metadata:
      title           :
      ENCODER         : Lavc59.37.100 libopus
      DURATION        : 01:55:16.648000000
      webm_dash_manifest_duration: 6.91665e+06
      webm_dash_manifest_initialization_range: 503
      webm_dash_manifest_file_name: audio.webm
      webm_dash_manifest_track_number: 1
      webm_dash_manifest_cues_start: 85783808
      webm_dash_manifest_cues_end: 85812590
      webm_dash_manifest_bandwidth: 99206
      webm_dash_manifest_cluster_keyframe: 1
      webm_dash_manifest_cue_timestamps: -7,0,4974,4981,9974,9981,14974,14981,19974,19981,24974,24981,29974,29981,34974,34981,39974,39981,44974,44981,49974,49981,54974,54981,59974,59981,64974,64981,69974,69981,74974,74981,79974,79981,84974,84981,89974,89981,94974,94981,99974,99981,104974,104981,
  Stream #0:1: Video: av1 (Main), yuv420p10le(tv, bt709, progressive), 768x328 [SAR 1:1 DAR 96:41], q=2-31, 24 fps, 24 tbr, 1k tbn (default)
    Metadata:
      title           : Encoded by HashMiner!
      ENCODER         : Lavc59.37.100 libsvtav1
      DURATION        : 01:55:16.584000000
      webm_dash_manifest_duration: 6.91658e+06
      webm_dash_manifest_initialization_range: 544
      webm_dash_manifest_file_name: video-800p.webm
      webm_dash_manifest_track_number: 1
      webm_dash_manifest_cues_start: 212306368
      webm_dash_manifest_cues_end: 212327942
      webm_dash_manifest_bandwidth: 481344
      webm_dash_manifest_cluster_keyframe: 1
      webm_dash_manifest_cue_timestamps: 0,6708,13417,20125,26833,33542,40250,46958,53667,60375,67083,73792,80500,87208,93917,100625,107333,114042,120750,127458,134167,140875,147583,154292,161000,167708,174417,181125,187833,194542,201250,207958,214667,221375,228083,234792,241500,248208,254917,26
  Stream #0:2: Video: av1 (Main), yuv420p10le(tv, bt709, progressive), 1344x574 [SAR 1:1 DAR 96:41], q=2-31, 24 fps, 24 tbr, 1k tbn (default)
    Metadata:
      title           : Encoded by HashMiner!
      ENCODER         : Lavc59.37.100 libsvtav1
      DURATION        : 01:55:16.584000000
      webm_dash_manifest_duration: 6.91658e+06
      webm_dash_manifest_initialization_range: 544
      webm_dash_manifest_file_name: video-1280p.webm
      webm_dash_manifest_track_number: 1
      webm_dash_manifest_cues_start: 645266452
      webm_dash_manifest_cues_end: 645288083
      webm_dash_manifest_bandwidth: 1230753
      webm_dash_manifest_cluster_keyframe: 1
      webm_dash_manifest_cue_timestamps: 0,6708,13417,20125,26833,33542,40250,46958,53667,60375,67083,73792,80500,87208,93917,100625,107333,114042,120750,127458,134167,140875,147583,154292,161000,167708,174417,181125,187833,194542,201250,207958,214667,221375,228083,234792,241500,248208,254917,26
  Stream #0:3: Video: av1 (Main), yuv420p10le(tv, bt709, progressive), 1920x820 [SAR 1:1 DAR 96:41], q=2-31, 24 fps, 24 tbr, 1k tbn (default)
    Metadata:
      title           : Encoded by HashMiner!
      ENCODER         : Lavc59.37.100 libsvtav1
      DURATION        : 01:55:16.584000000
      webm_dash_manifest_duration: 6.91658e+06
      webm_dash_manifest_initialization_range: 544
      webm_dash_manifest_file_name: video-1920p.webm
      webm_dash_manifest_track_number: 1
      webm_dash_manifest_cues_start: 1850068057
      webm_dash_manifest_cues_end: 1850089705
      webm_dash_manifest_bandwidth: 3777662
      webm_dash_manifest_cluster_keyframe: 1
      webm_dash_manifest_cue_timestamps: 0,6708,13417,20125,26833,33542,40250,46958,53667,60375,67083,73792,80500,87208,93917,100625,107333,114042,120750,127458,134167,140875,147583,154292,161000,167708,174417,181125,187833,194542,201250,207958,214667,221375,228083,234792,241500,248208,254917,26
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #1:0 -> #0:1 (copy)
  Stream #2:0 -> #0:2 (copy)
  Stream #3:0 -> #0:3 (copy)
Press [q] to stop, [?] for help
frame=    0 fps=0.0 q=-1.0 q=-1.0 q=-1.0 size=       2kB time=00:00:00.00 bitrate=N/A speed=   0x
frame=    0 fps=0.0 q=-1.0 Lq=-1.0 q=-1.0 size=       2kB time=00:00:00.00 bitrate=N/A speed=   0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

Which generates a manifest.mpd file which looks like this

<?xml version="1.0" encoding="UTF-8"?>
<MPD
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="urn:mpeg:DASH:schema:MPD:2011"
  xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011"
  type="static"
  mediaPresentationDuration="PT6916.65S"
  minBufferTime="PT1S"
  profiles="urn:mpeg:dash:profile:webm-on-demand:2012">
<Period id="0" start="PT0S" duration="PT6916.65S" >
<AdaptationSet id="0" mimeType="audio/webm" codecs="opus" lang="hin" audioSamplingRate="48000" bitstreamSwitching="true" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="0" bandwidth="99206">
<BaseURL>audio.webm</BaseURL>
<SegmentBase
  indexRange="85783808-85812590">
<Initialization
  range="0-503" />
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet id="1" mimeType="video/webm" codecs="av1" bitstreamSwitching="false" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="1" bandwidth="481344" width="768" height="328">
<BaseURL>video-800p.webm</BaseURL>
<SegmentBase
  indexRange="212306368-212327942">
<Initialization
  range="0-544" />
</SegmentBase>
</Representation>
<Representation id="2" bandwidth="1230753" width="1344" height="574">
<BaseURL>video-1280p.webm</BaseURL>
<SegmentBase
  indexRange="645266452-645288083">
<Initialization
  range="0-544" />
</SegmentBase>
</Representation>
<Representation id="3" bandwidth="3777662" width="1920" height="820">
<BaseURL>video-1920p.webm</BaseURL>
<SegmentBase
  indexRange="1850068057-1850089705">
<Initialization
  range="0-544" />
</SegmentBase>
</Representation>
</AdaptationSet>
</Period>
</MPD>

codecs="av1" -> codecs="av01.0.01M.08.0.111.01.01.01.0"

then files starts playing normally

site note I got this codec name when I try to transcode using dash encoder in ffmpeg not the webm_dash_manifest encoder

also bitstreamSwitching in video is false by default where it should be true for a video

Change History (4)

comment:1 by Carl Eugen Hoyos, 2 years ago

Description: modified (diff)
Keywords: dash added
Version: unspecifiedgit-master

Please understand that valid tickets on this bug tracker always contain a command line together with the complete, uncut console output.

comment:2 by shirsendu, 2 years ago

Description: modified (diff)

comment:3 by shirsendu, 2 years ago

Description: modified (diff)

comment:4 by Carl Eugen Hoyos, 2 years ago

Resolution: needs_more_info
Status: newclosed

Please reopen this ticket if you can provide the command line you tested together with the complete, uncut console output.

Note: See TracTickets for help on using tickets.