streaming mpeg-dash

Dimitrios Katsaros patcherwork at gmail.com
Tue May 23 07:06:26 UTC 2017


The logic for the rolling window has not been implemented. So unfortunately
those features will need to be implemented if you want to have something
like that. For the Firefox/Chrome issue, as you noticed, they require that
you define the type of codec to use. you need to add an additional field to
the mpd file. What I am using is in gstreprisentation.c I have added:

if (rep->common.stream_type == STREAM_TYPE_VIDEO) {
>     if (!gst_media_presentation_write_string_attribute (writer,
>             "codecs", "avc1.640028"))
>         return FALSE;
>     } else if (rep->common.stream_type == STREAM_TYPE_AUDIO) {
>         if (!gst_media_presentation_write_string_attribute (writer,
>                 "codecs", "mp4a.40.2"))
>             return FALSE;
> }
>

You may have to change the codecs based on what you are using.

Dimitrios

On Thu, May 18, 2017 at 10:50 PM, Alexander Yanin <sashayanin at gmail.com>
wrote:

> I have compiled mp4dashmux and dashsink from Thiago Sousa Santos git repos
> and tried a pipeline with them like this:
>
> gst-launch-1.0 videotestsrc is-live=true ! timeoverlay ! x264enc !
> mp4dashmux fragment-method=1 ! dashsink is-live=true delete-old-files=true
> title="manifest"
>
> This pipeline starts successfully, produces a manifest file and m4s
> fragments as expected. Then I have created a simple html with a video tag
> and linked dash js library to this html to play my dash stream. I have
> tried to open this html (served on http server) in Chrome, Firefox and
> Epiphany. Only Epiphany was able to play the stream. Firefox and Chrome
> gave similar error:
> Firefox says: Cannot play media. No decoders for requested formats:
> application/dash+xml, video/mp4;codecs="undefined"
> Chrome says: videoCodec (video/mp4;codecs="undefined") is not supported.
> I hope that the problem is with codecs="undefined" property produced by
> dashsink. I think that this issue can be easily fixed if this is a reason.
>
> However, I have another issue. My pipeline doesn't erase old files. Even
> if is set 'is-live' and 'delete-old-files' properties to true in dashsink,
> the number of fragments is constantly increasing. First file in playlist
> doesn't change from 'fragment_0' in my manifest file too. So, when I
> refresh my browser, I always have my stream played from the very beginning
> (it is easy to detect as i have timeoverlay plugin inserted into the
> pipeline). What am I doing wrong with this? Is deleting of old files works
> correctly in current version of dashsink?
>
> 2017-04-10 13:48 GMT+03:00 Alexander Yanin <sashayanin at gmail.com>:
>
>> Hi,
>>
>> I want to use gstreamer for streaming media over mpeg-dash. As I
>> understood, there is no available dashsink yet. In slomo's blog
>> <https://coaxion.net/blog/2014/05/http-adaptive-streaming-with-gstreamer/>
>> I have found a link <https://bugzilla.gnome.org/show_bug.cgi?id=668094>
>> to dashsink that is still in bugzilla. Can I use it for the streaming
>> purpose already? Is there any articles or docs with instructions of how
>> this sink could be used? How soon this plugin is expected to be merged to
>> gst-plugins-bad? Can someone show an example pipeline with dashsink
>> included? Any help on understanding how to work with this sink would be
>> highly appreciated.
>>
>> Best regards,
>> Alex
>>
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20170523/9ed53308/attachment.html>


More information about the gstreamer-devel mailing list