[FFmpeg-trac] #8719(undetermined:reopened): Some facebook mpd urls cause parser error: missing root node
FFmpeg
trac at avcodec.org
Tue Jun 9 00:40:02 EEST 2020
#8719: Some facebook mpd urls cause parser error: missing root node
-------------------------------------+-------------------------------------
Reporter: farleylai | Owner:
Type: defect | Status: reopened
Priority: normal | Component:
| undetermined
Version: unspecified | Resolution:
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Changes (by farleylai):
* status: closed => reopened
* resolution: worksforme =>
Comment:
Since a live stream may end anytime, the url retrieved may not be a dash
mpd for reproducing the issue. So a dash mpd that causes parsing error
with wget is fetched as attached FYI.
{{{
$> youtube-dl -g
'https://www.facebook.com/picNICKbasket/videos/620925225444429/'
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC
(sinet37) farleylai at ml17-pc02:~/local/projects/sinet/SINet$ ffprobe 'https
://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v/rwZbTfsorkvIBO-
OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC'
ffprobe version 4.2.3 Copyright (c) 2007-2020 the FFmpeg developers
built with gcc 7.3.0 (crosstool-NG 1.23.0.449-a04d0)
configuration: --prefix=/home/ml/farleylai/miniconda3/envs/sinet37
--cc=/home/ml/farleylai/miniconda3/envs/sinet37/conda-
bld/ffmpeg_1591228974768/_build_env/bin/x86_64-conda_cos6-linux-gnu-cc
--disable-doc --disable-openssl --enable-avresample --enable-demuxer=dash
--enable-gnutls --enable-gpl --enable-hardcoded-tables --enable-
libfreetype --enable-libopenh264 --enable-libx264 --enable-pic --enable-
pthreads --enable-shared --enable-static --enable-version3 --enable-
libxml2 --enable-zlib --enable-libmp3lame
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC:245:
parser error : Specification mandates value for attribute startWithSA
startWithSA
^
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC:245:
parser error : attributes construct error
startWithSA
^
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC:245:
parser error : Couldn't find end of Start Tag Representation line 240
startWithSA
^
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC:245:
parser error : Premature end of data in tag AdaptationSet line 239
startWithSA
^
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC:245:
parser error : Premature end of data in tag Period line 22
startWithSA
^
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC:245:
parser error : Premature end of data in tag MPD line 2
startWithSA
^
[dash @ 0x5617c80261c0] Unable to parse 'https://video-dfw5-1.xx.fbcdn.net
/hvideo-atn3-ftw/_nc_cat-1/v/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC'
- missing root node
https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC:
Invalid data found when processing input
$> wget 'https://video-dfw5-1.xx.fbcdn.net/hvideo-atn3-ftw/_nc_cat-1/v
/rwZbTfsorkvIBO-OHJNRK/live-dash/dash-
abr5/2608905152692524.mpd?_nc_rl=AfAF5TmpkU307zs6&ms=m_CN&oh=762a3780ca7a0b8b026611ab8aa38b31&oe=5EE095FC'
}}}
The MPD downloaded with wget:
{{{
<?xml version="1.0"?>
<MPD
type="dynamic"
xmlns="urn:mpeg:dash:schema:mpd:2011"
xmlns:xsi="http://www.w3.org/2011/XMLSchema-instance"
xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011 DASH-MPD.xsd"
profiles="urn:mpeg:dash:profile:isoff-live:2011"
availabilityStartTime="2020-06-08T06:54:38-07:00"
availabilityEndTime="2020-06-08T14:35:36-07:00"
timeShiftBufferDepth="PT20S"
suggestedPresentationDelay="PT2S"
minBufferTime="PT1S"
publishTime="2020-06-08T06:54:38-07:00"
minimumUpdatePeriod="PT1S"
FBMS="true"
PTS="true"
currentServerTimeMs="1591651655733"
firstAvTimeMs="1591624466743"
lastVideoFrameTs="27190692"
loapStreamId="2608905152692524"
publishFrameTime="7176">
<Period id="dash-abr5" start="PT0S">
<AdaptationSet
segmentAlignment="true"
maxWidth="1920"
maxHeight="1080"
maxFrameRate="60">
<Representation
id="live-md-v"
mimeType="video/mp4"
codecs="avc1.4d401e"
width="640"
height="360"
frameRate="30"
startWithSAP="1"
bandwidth="825000"
FBQualityClass="sd"
FBQualityLabel="360p">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
md-v/2608905152692524_0-init.m4v?ms=m_CN"
media="../live-md-v/2608905152692524_0-$Time$.m4v?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
<Representation
id="live-qd-v"
mimeType="video/mp4"
codecs="avc1.4d401e"
width="256"
height="144"
frameRate="30"
startWithSAP="1"
bandwidth="110000"
FBQualityClass="sd"
FBQualityLabel="144p">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
qd-v/2608905152692524_0-init.m4v?ms=m_CN"
media="../live-qd-v/2608905152692524_0-$Time$.m4v?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
<Representation
id="live-ld-v"
mimeType="video/mp4"
codecs="avc1.4d401e"
width="426"
height="240"
frameRate="30"
startWithSAP="1"
bandwidth="412500"
FBQualityClass="sd"
FBQualityLabel="240p">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
ld-v/2608905152692524_0-init.m4v?ms=m_CN"
media="../live-ld-v/2608905152692524_0-$Time$.m4v?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
<Representation
id="live-hd-v"
mimeType="video/mp4"
codecs="avc1.4d401e"
width="854"
height="480"
frameRate="30"
startWithSAP="1"
bandwidth="1650000"
FBQualityClass="sd"
FBQualityLabel="480p">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
hd-v/2608905152692524_0-init.m4v?ms=m_CN"
media="../live-hd-v/2608905152692524_0-$Time$.m4v?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
<Representation
id="live-hd1-v"
mimeType="video/mp4"
codecs="avc1.4d401e"
width="1280"
height="720"
frameRate="30"
startWithSAP="1"
bandwidth="3300000"
FBQualityClass="hd"
FBQualityLabel="720p">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
hd1-v/2608905152692524_0-init.m4v?ms=m_CN"
media="../live-hd1-v/2608905152692524_0-$Time$.m4v?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
<Representation
id="live-hd2-v"
mimeType="video/mp4"
codecs="avc1.4d401e"
width="1920"
height="1080"
frameRate="30"
startWithSAP="1"
bandwidth="5500000"
FBQualityClass="hd"
FBQualityLabel="1080p">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
hd2-v/2608905152692524_0-init.m4v?ms=m_CN"
media="../live-hd2-v/2608905152692524_0-$Time$.m4v?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
<Representation
id="live-pst-v"
mimeType="video/mp4"
codecs="avc1.4d401e"
width="1920"
height="1080"
frameRate="60"
startWithSAP="1"
bandwidth="15000000"
FBQualityClass="hd"
FBQualityLabel="1080p (Source)">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
pst-v/2608905152692524_0-init.m4v?ms=m_CN"
media="../live-pst-v/2608905152692524_0-$Time$.m4v?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
</AdaptationSet>
<AdaptationSet segmentAlignment="true">
<Representation
id="live-md-a"
mimeType="audio/mp4"
codecs="mp4a.40.2"
audioSamplingRate="48000"
startWithSAP="1"
bandwidth="131868">
<SegmentTemplate
presentationTimeOffset="0"
timescale="1000"
initialization="../live-
md-a/2608905152692524_0-init.m4a?ms=m_CN"
media="../live-md-a/2608905152692524_0-$Time$.m4a?ms=m_CN">
<SegmentTimeline>
<S t="27167759" d="2000"/>
<S t="27169759" d="2000"/>
<S t="27171759" d="2000"/>
<S t="27173759" d="2000"/>
<S t="27175759" d="2000"/>
<S t="27177759" d="2000"/>
<S t="27179759" d="2000"/>
<S t="27181759" d="2000"/>
<S t="27183759" d="2000"/>
<S t="27185759" d="2000"/>
</SegmentTimeline>
</SegmentTemplate>
</Representation>
</AdaptationSet>
</Period>
</MPD>
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/8719#comment:5>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list