AirenSoft / OvenMediaEngine

OvenMediaEngine (OME) is a Sub-Second Latency Live Streaming Server with Large-Scale and High-Definition. #WebRTC #LLHLS
https://OvenMediaEngine.com/ome
GNU Affero General Public License v3.0
2.53k stars 1.06k forks source link

RTMPS Provider Support #315

Closed bchah closed 2 years ago

bchah commented 3 years ago

Is your feature request related to a problem? Please describe. Building secure deployments is limited if the RTMP stream we send to OME cannot be encrypted.

Describe the solution you'd like Please consider implementing RTMPS provider support, to accept RTMPS streams (typically port 1936).

Describe alternatives you've considered It might be possible to receive RTMPS from another server and push RTMP to OME, but this adds significant complexity and could impact the latency too.

Additional context Please also consider adding RTMPS support to the Push Publishing feature, as it is now a requirement for some destinations. Thank you for your amazing work and for building OME.

getroot commented 3 years ago

Since the RTMP protocol is losing its share, I am hesitant to strengthen RTMP. As an alternative, I think it's a better choice to focus on protocols like WebRTC or SRT. What do you think?

basisbit commented 3 years ago

SRT would be very nice indeed, as that resolves lots of typical issues regarding internet connection / peering quality, packet loss and high latency. See https://castr.io/blog/srt-vs-rtmp/#:~:text=Testing%20for%20end-to-end%20latency&text=The%20end-to-end%20latency,12%20times%20faster%20than%20RTMP.

bchah commented 3 years ago

Hi @getroot and thank you for the response. You are correct that newer protocols like SRT are gaining popularity. However there are many existing programs and hardware deployments which will never be updated to these newer protocols. I understand there are only 24 hours in the day though 😀 So I will try changing my application to use SRT in the back-end.

getroot commented 3 years ago

@bchah That's great. I will start developing the SRT Ingest function soon.

bchah commented 3 years ago

@getroot SRT is excellent for ingest but RTMPS push functionality would be useful in a lot of cases. For example Facebook does not accept RTMP streams, only RTMPS.

getroot commented 3 years ago

Since we believe that RTMP is a protocol that will soon be completely deprecated, we have decided not to add support for RTMPS. Thanks for the good suggestion.

getroot commented 2 years ago

I open this again. We will support RTMPS. However, it may take a long time because there are many higher priority tasks left.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

davemevans commented 1 year ago

Please reopen this - contribution to Facebook requires RTMPS and it would be useful for OME to support this.

Whilst in the past it did appear RTMP might be going way, https://github.com/veovera/enhanced-rtmp is gaining traction and I think it's likely that RTMP will retain relevance for some time.

bchah commented 1 year ago

I think you can already do this with OME. RTMPS push works fine in my testing, and you can use an SSH tunnel on port 1936 for RTMPS inputs (See #1133). Still I agree it would be nice to have a proper RTMPS provider.

And @davemevans was RTMPS push not working for you?

getroot commented 1 year ago

Of course we will support Enhanced RTMP. But for the rest of the year, we have to do commercial projects to survive, so it will probably take quite a while for it to be released.

davemevans commented 1 year ago

RTMPS Push output didn't work for me but I'm fairly new to OME - I'll try again.

I just noticed that this issue is about Provider. Apologies for hijacking the thread.