[FFmpeg-devel] [PATCH v14] avformat/dashdec: add dash demuxer base version

Andy Furniss adf.lists at gmail.com
Tue Apr 11 17:27:29 EEST 2017


Steven Liu wrote:
> ffmpeg need a dash demuxer for demux the dash formats base on
> https://github.com/samsamsam-iptvplayer/exteplayer3/blob/master/tmp/ffmpeg/patches/3.2.2/000001_add_dash_demux.patch
>
>  TODO: 1. support multi bitrate dash

> v14 fixed: 1. fix bug: TLS connection was non-properly terminated 2.
> fix bug: No trailing CRLF found in HTTP header

Thanks.

They are pretty much gone now, though I did see one TLS out of about 3
hours running (3.84s chunks)

Another user who is testing the same live stream saw eight
TLS @ 0xae75700" referring to TLS packets of unexpected length.
over a 3 hour run.

One issue that I guess is not really a bug, but on a live stream you
really need to have your clock either spot on or slow.

Ok, so maybe I should run ntpd "properly" - though not running it does
offer a workaround of setting clock back a bit (the stream mpd below has
a 10 minute buffer).

This issue = even if set my clock with ntpd -q only a small amount of
too fast drift will lead to (after a couple of hours)

[https @ 0x365e580] HTTP error 404 Not Found
[dash @ 0x3657360] Failed to open fragment of playlist 0

ntpd -q showed I was 0.2 sec fast at that point - for the purpose of
testing just setting one sec fast will quickly start getting 404s which
are not retried, so break the stream.

I notice there is a time url in the mpd - but even if that were used
initially vs clock, I still think drift would break things.


Here's the .mpd (same as link I gave before - pasting as I suspect it's
geo restricted).

<?xml version="1.0" encoding="UTF-8"?>
<MPD type="dynamic" xmlns="urn:mpeg:dash:schema:mpd:2011" 
xmlns:dvb="urn:dvb:dash-extensions:2014-1" 
profiles="urn:dvb:dash:profile:dvb-dash:2014,urn:dvb:dash:profile:dvb-dash:isoff-ext-live:2014" 
minBufferTime="PT2.034S" maxSegmentDuration="PT3.84S" 
timeShiftBufferDepth="PT10M" minimumUpdatePeriod="PT1H" 
availabilityStartTime="1970-01-01T00:01:00Z" 
publishTime="2017-02-01T15:13:36Z">
         <!-- MPEG DASH ISO BMFF test stream -->
         <!-- Lossless audio using FLAC -->
         <!-- BBC Research & Development -->
         <!-- For more information see http://rdmedia.bbc.co.uk -->
         <!-- Email dash at rd.bbc.co.uk -->
         <!-- (c) British Broadcasting Corporation 2017.  All rights 
reserved.-->
         <ProgramInformation>
                 <Title>Radio 3 lossless</Title>
                 <Source>BBC Research and Development</Source>
                 <Copyright>British Broadcasting Corporation 
2017</Copyright>
         </ProgramInformation>
     <UTCTiming schemeIdUri="urn:mpeg:dash:utc:http-xsdate:2014" 
value="http://time.akamai.com/?iso"/>
         <Period start="PT0S">
                 <AdaptationSet startWithSAP="2" segmentAlignment="true" 
id="1" codecs="flac" audioSamplingRate="48000" lang="eng" 
mimeType="audio/mp4">
                         <AudioChannelConfiguration 
schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" 
value="2"/>
                         <Role schemeIdUri="urn:mpeg:dash:role:2011" 
value="main"/>
                         <SegmentTemplate timescale="48000" 
duration="184320" media="$RepresentationID$/$Number%06d$.m4s" 
initialization="$RepresentationID$/IS.mp4" startNumber="1" 
presentationTimeOffset="0"/>
                         <Representation id="A1" bandwidth="365000"/>
                 </AdaptationSet>
         </Period>
         <Metrics metrics="DVBErrors">
                 <Reporting schemeIdUri="urn:dvb:dash:reporting:2014" 
value="1" 
dvb:reportingUrl="http://rdmedia.bbc.co.uk/dash/errorreporting/reporterror.php" 
dvb:probability="50"/>
         </Metrics>
</MPD>


More information about the ffmpeg-devel mailing list