[FFmpeg-trac] #9902(undetermined:new): Unable to Play encoded video using FFmpeg webm_dash_manifest encoder with Dash.js
FFmpeg
trac at avcodec.org
Sat Sep 3 14:03:36 EEST 2022
#9902: Unable to Play encoded video using FFmpeg webm_dash_manifest encoder with
Dash.js
-------------------------------------+-------------------------------------
Reporter: shirsendu | Owner: (none)
Type: defect | Status: new
Priority: normal | Component:
| undetermined
Version: git-master | Resolution:
Keywords: dash | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Changes (by Carl Eugen Hoyos):
* keywords: => dash
* version: unspecified => git-master
Old description:
> Hi,
> I am trying to transcode in webm dash format using
>
> ffmpeg \
> -f webm_dash_manifest -i video_160x90_250k.webm \
> -f webm_dash_manifest -i video_320x180_500k.webm \
> -f webm_dash_manifest -i video_640x360_750k.webm \
> -f webm_dash_manifest -i audio_128k.webm \
> -c copy -map 0 -map 1 -map 2 -map 3 \
> -adaptation_sets "id=0,streams=0,1,2 id=1,streams=3" \
> -f webm_dash_manifest \
> manifest.mpd
>
> 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="PT8864.3S"
> minBufferTime="PT1S"
> profiles="urn:mpeg:dash:profile:webm-on-demand:2012">
> <Period id="0" start="PT0S" duration="PT8864.3S" >
> <AdaptationSet id="0" mimeType="audio/webm" codecs="opus" lang="hin"
> audioSamplingRate="48000" bitstreamSwitching="true"
> subsegmentAlignment="true" subsegmentStartsWithSAP="1">
> <Representation id="0" bandwidth="99209">
> <BaseURL>audio.webm</BaseURL>
> <SegmentBase
> indexRange="109939455-109976406">
> <Initialization
> range="0-864" />
> </SegmentBase>
> </Representation>
> </AdaptationSet>
> <AdaptationSet id="1" mimeType="video/webm" codecs="av1" lang="hin"
> bitstreamSwitching="false" subsegmentAlignment="true"
> subsegmentStartsWithSAP="1">
> <Representation id="1" bandwidth="474873" width="792" height="330">
> <BaseURL>video-800p.webm</BaseURL>
> <SegmentBase
> indexRange="200763509-200791162">
> <Initialization
> range="0-884" />
> </SegmentBase>
> </Representation>
> <Representation id="2" bandwidth="1236911" width="1272" height="530">
> <BaseURL>video-1280p.webm</BaseURL>
> <SegmentBase
> indexRange="596699241-596726959">
> <Initialization
> range="0-884" />
> </SegmentBase>
> </Representation>
> <Representation id="3" bandwidth="3732848" width="1920" height="800">
> <BaseURL>video-1920p.webm</BaseURL>
> <SegmentBase
> indexRange="1775390115-1775417858">
> <Initialization
> range="0-884" />
> </SegmentBase>
> </Representation>
> </AdaptationSet>
> </Period>
> </MPD>
> ```
>
> Trying to play the video using dash.js failed saying
>
> then if I change this specific line codecs part
> ```
> <AdaptationSet id="1" mimeType="video/webm" codecs="av1" lang="hin"
> bitstreamSwitching="false" subsegmentAlignment="true"
> subsegmentStartsWithSAP="1">
> ```
> 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
New description:
Hi,
I am trying to transcode in webm dash format using
{{{
ffmpeg \
-f webm_dash_manifest -i video_160x90_250k.webm \
-f webm_dash_manifest -i video_320x180_500k.webm \
-f webm_dash_manifest -i video_640x360_750k.webm \
-f webm_dash_manifest -i audio_128k.webm \
-c copy -map 0 -map 1 -map 2 -map 3 \
-adaptation_sets "id=0,streams=0,1,2 id=1,streams=3" \
-f webm_dash_manifest \
manifest.mpd
}}}
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="PT8864.3S"
minBufferTime="PT1S"
profiles="urn:mpeg:dash:profile:webm-on-demand:2012">
<Period id="0" start="PT0S" duration="PT8864.3S" >
<AdaptationSet id="0" mimeType="audio/webm" codecs="opus" lang="hin"
audioSamplingRate="48000" bitstreamSwitching="true"
subsegmentAlignment="true" subsegmentStartsWithSAP="1">
<Representation id="0" bandwidth="99209">
<BaseURL>audio.webm</BaseURL>
<SegmentBase
indexRange="109939455-109976406">
<Initialization
range="0-864" />
</SegmentBase>
</Representation>
</AdaptationSet>
<AdaptationSet id="1" mimeType="video/webm" codecs="av1" lang="hin"
bitstreamSwitching="false" subsegmentAlignment="true"
subsegmentStartsWithSAP="1">
<Representation id="1" bandwidth="474873" width="792" height="330">
<BaseURL>video-800p.webm</BaseURL>
<SegmentBase
indexRange="200763509-200791162">
<Initialization
range="0-884" />
</SegmentBase>
</Representation>
<Representation id="2" bandwidth="1236911" width="1272" height="530">
<BaseURL>video-1280p.webm</BaseURL>
<SegmentBase
indexRange="596699241-596726959">
<Initialization
range="0-884" />
</SegmentBase>
</Representation>
<Representation id="3" bandwidth="3732848" width="1920" height="800">
<BaseURL>video-1920p.webm</BaseURL>
<SegmentBase
indexRange="1775390115-1775417858">
<Initialization
range="0-884" />
</SegmentBase>
</Representation>
</AdaptationSet>
</Period>
</MPD>
}}}
Trying to play the video using dash.js failed saying
then if I change this specific line codecs part
{{{
<AdaptationSet id="1" mimeType="video/webm" codecs="av1" lang="hin"
bitstreamSwitching="false" subsegmentAlignment="true"
subsegmentStartsWithSAP="1">
}}}
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
--
Comment:
Please understand that valid tickets on this bug tracker always contain a
command line together with the complete, uncut console output.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9902#comment:1>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list