Create HLS Stream from external HW H264 Encoder

franz franz at inparty-fm.de
Tue Oct 23 11:26:09 UTC 2018


No Ideas!? I cant believe.


Von meinem Samsung Galaxy Smartphone gesendet.
-------- Ursprüngliche Nachricht --------Von: Franz Löseke <franz at inparty-fm.de> Datum: 21.10.18  15:06  (GMT+01:00) An: Discussion of the development of and with GStreamer <gstreamer-devel at lists.freedesktop.org> Betreff: Re: Create HLS Stream from external HW H264 Encoder 
PS: here is a test of the stream. Just black with audio:


http://89.245.108.130:8000/ext

This is a dynamic ip so after the reconnect on monday (21.10.2018)  
morning it will not work anymore.




Zitat von Franz Löseke <franz at inparty-fm.de>:

> Hello. I have tried many things but now i have no idea what happen.
> I  want to stream a HLS from an external H264 Encoder. This encoder  
> creates a HTTP TS  and a rtsp stream. As i know for HLS a TS is  
> needed. If i use the videotestsrc everything works fine but if i  
> take the source from the http stream then gstreamer creates one  
> single hlsfile and no playlist.
> This is my line for the videotest:
>
> gst-launch-1.0 videotestsrc is-live=true ! x264enc ! mpegtsmux !  
> hlssink max-files=3  playlist-root=http://192.168.178.60  
> location=/var/www/html/hlsstream%01d.ts target-duration=5  
> playlist-location=/var/www/html/playlist.m3u8
>
>
> This for the external encoder:
>
> gst-launch-1.0 souphttpsrc location=http://192.168.178.100:8000/ext  
> is-live=true ! h264parse ! mpegtsmux ! hlssink max-files=5   
> target-duration=8 playlist-root=http://192.168.178.60  
> location=/var/www/html/hlsstream%01d.ts  
> playlist-location=/var/www/html/playlist.m3u8
>
> I tried also without mpegtsmux (because i think it is TS as the  
> description of the encoder says). Here just one .ts file will be  
> created and not splitted as the first test command.
>
>
> In verbose mode i get these messages:
>
>
>
> Setting pipeline to PAUSED ...
> Pipeline is live and does not need PREROLL ...
> Setting pipeline to PLAYING ...
> New clock: GstSystemClock
> /GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:src: caps =  
> video/x-h264, width=(int)1280, height=(int)720,  
> framerate=(fraction)0/1, parsed=(boolean)true,  
> stream-format=(string)byte-stream, alignment=(string)au, profi        
>        le=(string)main, level=(string)3.1
> /GstPipeline:pipeline0/MpegTsMux:mpegtsmux0.GstPad:sink_65: caps =  
> video/x-h264, width=(int)1280, height=(int)720,  
> framerate=(fraction)0/1, parsed=(boolean)true,  
> stream-format=(string)byte-stream, alignment=(string)au, prof         
>       ile=(string)main, level=(string)3.1
> /GstPipeline:pipeline0/MpegTsMux:mpegtsmux0.GstPad:src: caps =  
> video/mpegts, systemstream=(boolean)true, packetsize=(int)188
> /GstPipeline:pipeline0/GstHlsSink:hlssink0.GstGhostPad:sink.GstProxyPad:proxypad0: caps = video/mpegts, systemstream=(boolean)true,  
> packetsize=(int)188
> /GstPipeline:pipeline0/GstHlsSink:hlssink0/GstMultiFileSink:multifilesink0.GstPad:sink: caps = video/mpegts, systemstream=(boolean)true,  
> packetsize=(int)188
> /GstPipeline:pipeline0/GstHlsSink:hlssink0.GstGhostPad:sink: caps =  
> video/mpegts, systemstream=(boolean)true, packetsize=(int)188
> /GstPipeline:pipeline0/MpegTsMux:mpegtsmux0.GstPad:src: caps =  
> video/mpegts, systemstream=(boolean)true, packetsize=(int)188,  
> streamheader=(buffer)<  
> 47400030a600ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff    
>             
> fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              fffffffffffffffffffffffffffffffffffffffffffff0000b00d0001c100000001e020a2c32941, 474020308b00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0002b0280001c10000e041f00c050448444d5688040ffffcfc1be041f00a050848444d56ff1b4              43f5a3175c0  
> >
> /GstPipeline:pipeline0/GstHlsSink:hlssink0.GstGhostPad:sink.GstProxyPad:proxypad0: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188, streamheader=(buffer)< 47400030a600fffffffffffffffffffffffffffffffffff              fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000b00d0001c100000001e020a2c32941, 474020308b00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0002b0280001c10000e041f00c050448444d5688040ffffcfc              1be041f00a050848444d56ff1b443f5a3175c0  
> >
> /GstPipeline:pipeline0/GstHlsSink:hlssink0/GstMultiFileSink:multifilesink0.GstPad:sink: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188, streamheader=(buffer)< 47400030a600ffffffffffffffffffffffffffffff              fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000b00d0001c100000001e020a2c32941, 474020308b00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0002b0280001c10000e041f00c050448444d5688040ff              ffcfc1be041f00a050848444d56ff1b443f5a3175c0  
> >
> /GstPipeline:pipeline0/GstHlsSink:hlssink0.GstGhostPad:sink: caps =  
> video/mpegts, systemstream=(boolean)true, packetsize=(int)188,  
> streamheader=(buffer)<  
> 47400030a600fffffffffffffffffffffffffffffffffffffffffffffffffffffffff         
>        
> fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              ffffffffffffffffffffffffffffffffffffffffffffffffff0000b00d0001c100000001e020a2c32941, 474020308b00fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff              fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0002b0280001c10000e041f00c050448444d5688040ffffcfc1be041f00a050848444d56              ff1b443f5a3175c0  
> >
>
>
>
>
> Is there anybody who have a sollution for that? Other question. What  
> happen if the encoder is temporaly not available?
>
> Regards
>
> Franz
>
>
>
>
>
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



_______________________________________________
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/20181023/5c830fc9/attachment.html>


More information about the gstreamer-devel mailing list