Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision |
livest [2020/06/29 00:16] – yair | livest [2020/09/05 13:36] – [HLS] yair |
---|
=====live==== | =====live==== |
| <html> |
| <p><a href="https://www.haivision.com/products/srthub/?utm_medium=CTA&utm_term=SRTHub&utm_content=Sep%2B4&utm_campaign=Blog&wvideo=g6wyi820rt"><img src="https://embed-fastly.wistia.com/deliveries/2503e91f43c10e1b427c51faf01e0f80.jpg?image_play_button_size=2x&image_crop_resized=960x540&image_play_button=1&image_play_button_color=0072cee0" width="400" height="225" style="width: 400px; height: 225px;"></a></p><p><a href="https://www.haivision.com/products/srthub/?utm_medium=CTA&utm_term=SRTHub&utm_content=Sep%2B4&utm_campaign=Blog&wvideo=g6wyi820rt">SRT Hub Cloud Based Media Routing | Haivision</a></p> |
| </html> |
| |
{{:pasted:20200628-205004.png}} | [[https://en.wikipedia.org/wiki/List_of_streaming_media_systems#Servers|List_of_streaming_media_systems]] |
| |
a possible scenario | {{:pasted:20200628-205004.png?750}} |
| |
{{drawio>liveset}} | |
| |
====HLS==== | ====HLS==== |
https://google.github.io/shaka-packager/html/index.html | https://google.github.io/shaka-packager/html/index.html |
| |
| ===opencv>ffmpeg>hls=== |
| [[https://www.nobile-engineering.com/wordpress/index.php/2018/10/30/video-streaming-hls-apache-nginx/|video-streaming-hls-apache-nginx]]\\ |
| [[https://github.com/andreanobile/opencv_ffmpeg_streaming|opencv_ffmpeg_streaming]] |
| |
| |
| |
| ===gstreamer/video.js=== |
| the easiest stream i got was using hlssink |
| <code dot> |
| gst-launch-1.0 videotestsrc is-live=true ! x264enc ! mpegtsmux \ |
| ! hlssink playlist-root=https://your-site.org \ |
| location=/srv/hls/hlssink.%05d.ts \ |
| playlist-location=/srv/hls/playlist.m3u8 |
| </code> |
| |
| and video.js on the other site |
| <code javascript> |
| <video-js id=vid1 width=600 height=300 class="vjs-default-skin" controls> |
| <source |
| src="https://example.com/index.m3u8" |
| type="application/x-mpegURL"> |
| </video-js> |
| <script src="video.js"></script> |
| <script src="videojs-http-streaming.min.js"></script> |
| <script> |
| var player = videojs('vid1'); |
| player.play(); |
| </script> |
| </code> |
| |
| pipe video from rtsp ueye |
| gst-launch-1.0.exe rtspsrc location=rtsp://169.254.37.87:8554/mystream ! fakesink ! fpsdisplaysink |
| |
| ===Javelin=== |
| [[https://gitlab.com/valeth/javelin|gitlab javelin]] |
| |
| install rust on server |
| curl https://sh.rustup.rs -sSf | sh |
| source $HOME/.cargo/env |
| you'll probably need a few deps, like |
| sudo apt install libssl-dev |
| <code bash> |
| cargo install javelin |
| # add an user with an associated stream key to the database |
| javelin --permit-stream-key="idiotstream:cc144117a8fe59af0f7f34ce9eca8f05" |
| # start the server |
| javelin run |
| </code> |
| ===streamline=== |
| https://github.com/streamlinevideo/streamline |
====jsmpeg==== | ====jsmpeg==== |
https://github.com/phoboslab/jsmpeg\\ | https://github.com/phoboslab/jsmpeg\\ |
====JSsip==== | ====JSsip==== |
https://tryit.jssip.net/ | https://tryit.jssip.net/ |
| |
| |
====SRT==== | ====SRT==== |
| |
| https://www.haivision.com/blog/all/rtmp-vs-srt/ -- > {{:haivision_white_paper_rtmp_vs_srt_comparing_latency_and_maximum_bandwidth.pdf}} |
| |
| [[https://www.collabora.com/news-and-blog/news-and-events/low-latency-streaming-of-security-feeds-with-srt-and-gstreamer.html| gst and srt]] |
| |
{{ youtube>SbvklCb0nNk?medium }} | {{ youtube>SbvklCb0nNk?medium }} |
./srt-live-transmit udp://:1234 srt://:4201 -v | ./srt-live-transmit udp://:1234 srt://:4201 -v |
start a producer using ffmpeg [[https://www.bogotobogo.com/FFMpeg/ffmpeg_video_test_patterns_src.php|lavfi]] fakesource | start a producer using ffmpeg [[https://www.bogotobogo.com/FFMpeg/ffmpeg_video_test_patterns_src.php|lavfi]] fakesource |
ffmpeg -f lavfi -re -i testsrc=duration=300:size=1280x720:rate=30 -f lavfi -re -i sine=frequency=1000:duration=60:sample_rate=44100 -pix_fmt yuv420p -c:v libx264 -b:v 1000k -g 30 -keyint_min 120 -profile:v baseline -preset veryfast -f mpegts "udp://127.0.0.1:1234?pkt_size=1316" | ffmpeg -f lavfi -re -i testsrc=duration=300:size=1280x720:rate=30 \ |
| -pix_fmt yuv420p -c:v libx264 -b:v 1000k -g 30 -keyint_min 120 -profile:v baseline -preset veryfast \ |
| --f mpegts "udp://127.0.0.1:1234?pkt_size=1316" |
| |
watch on vlc | watch on vlc |
| |
| |
| |
| ====AZURE==== |
| does support SRT, unlike aws. with thier end of life RTMP coming iin 2021 |
| {{:pasted:20200705-002205.png}} |
| |
| https://azure.microsoft.com/en-us/blog/what-s-new-in-azure-media-services-video-processing/ |
| |
====AWS==== | ====AWS==== |
* https://securitytoday.com/directory/list/ip-video.aspx | * https://securitytoday.com/directory/list/ip-video.aspx |
* [[https://securitytoday.com/articles/2019/10/14/onvif-suspends-dahua-and-hikvision.aspx|onvif-suspends-dahua]] | * [[https://securitytoday.com/articles/2019/10/14/onvif-suspends-dahua-and-hikvision.aspx|onvif-suspends-dahua]] |
| |
| |
| ==== scenario ==== |
| |
| {{drawio>liveset}} |
| |
====test==== | ====test==== |