RTSP to Flash Media Server - rtsp

I have a live RTSP h.264 720p 8Mb stream that I need to get to my streaming provider's Flash Media Server. The only way that I currently have to stream to my provider's FMS is through Adobe's "Flash Media Live Encoder" Which works well enough with our SD analog capture card for live streaming.
I can open and re-stream the RTSP stream with VLC however VLC will not stream RTMP to the Flash Media Server.
Any thoughts on how to do this without going through the analog hole?

Related

How to play a live video in the browser?

I need to get live video from a device. I have to play the video on the browser. live video can be received as RTP or UDP.
Since there is no support for VLC, I published the video by getting it via RTP with FFMPEG and creating a web server with Nginx.
But later I realized that it is recording video tracks to disk. This is a situation I don't want.
Is there any other way to do this?
Not with RTP or UDP, no, there is no way. You must use WebRTC, or an HTTP based method like HLS or DASH.

How to stream RTSP on the web?

We generate RTSP stream (MP4 with ACC codec for audio) on our server and we need to send it to web app and play it.
We could send it via websocket and play it with media extensions but they are not supported on iOS.
We could also use WebRTC with media channel but that supports only Opus audio codec and we cannot afford transcoding from ACC to Opus.
Do you have any idea how can we play RTSP data on iOS devices?
EDIT: we aim for low latency playback (<1s) HSL has latency 5s+
you need to encode/package your stream in HLS on your server to send it to iOS clients. Try to look into FFMPEG streaming guides where the input is your RTSP stream and output is HLS. iOS really only plays HLS.

How to play a RTP stream in HTML5?

The Janus server is able to replay the RTP stream.
Is there a way to play a RTP stream directly into a video html5 element ?
(I don't really get the difference between RTP and RTSP)
And how can I play the RTP stream: should I transcode it to some HLS ?
You don't, it's not supported in HTML5. I'd recommend transcoding it to DASH and/or HLS, using either open source tools like ffmpeg or commercial solutions like bitmovin.
Webrtc is supported in HTML5, so you can view the video on the browser.
Janus Server supports different plugin for RTSP/RTP, which will receive data in RTSP/RTP and then send that data to the web browser client using webrtc.
https://janus.conf.meetecho.com/docs/streaming.html

RTSP is the only stream working from my WOWZA streaming engine

I have every stream type enabled on my wowza server.
a week ago i had it working in the wowza test players
now the only one that works is the RTSP in VLC
now every stream just shows a black screen.
If i try to access the m3u8 via Safari browser i can hear the audio but no visual
Any assistance on this would be a major help.
this is due to incompatible video, audio codec. you need to user right encoder or you can use wowza transcoder to transcode your stream (h.264 , AAC) . it will resolve your playback problem. if you are using flash media live encoder you can select h.264 encoding method, and audio codec should be aac or mp3.
Some quick troubleshooting steps:
What source encoder are you using? Can you playback the source URL on VLC as well? What codec info is displayed in VLC for the source stream? It should be one of the supported codecs for Wowza.
What codec info is displayed in VLC for the RTSP playback link generated by your Wowza server?
Do you see any errors/warnings in the access log when you publish and playback your HLS (m3u8) stream?
Usually, this kind of error is due to an incorrect video codec, or an encoding setting, or network saturation where the video packets are not coming through correctly. You can check what error or warning messages are being generated by tailing the access log found in logs/ folder of your Wowza installation directory.
Hope this helps.

RTMP with Google Chromecast

I was wondering if there is any way to cast an RTMP audio and/or video stream? I've created a receiver app, whitelisted it, and able to access it on my Chromecast. I tried to embed an SWF object but it appears that the Chromecast does not support flash natively like this. Is there any workaround?
I see the docs for supported media types and it doesn't list RTMP so I'm thinking it's a no-go, other than doing some on-the-fly stream protocol translation from RTMP to MP3 or such on another server.
AFAIK, receiver apps can only work with HTML5 media, which doesn't support the RTMP protocol (also keep in mind that RTMP is not a media format, but a media transfer protocol which can carry various different container formats and audio/video codecs); as Chromecast requires HTML5, it also requires HTTP as the transfer protocol).
You could set up a proxy as your receiver app that would consume an RTMP stream and then re-cast it as an http-based HTML5 media resource. There wouldn't be a lot of overhead if you didn't have to do any transcoding (say, for example, your RTMP stream was H.264 video with MP3 audio), but it could get messy having to wrap all the media resource handling that Chromecast can do just to talk to an RTMP server. It would likely be much easier to work with HTML5 video from the get-go.

Resources