Life saver! #548
Replies: 1 comment 1 reply
-
Welcome, hopefully this project can be useful for you. Realtime/streaming with .NET is a very underserved market. For 15 years I kept thinking Microsoft would bake it into the framework, they bought Skype after all, but all we ever got was SignalR. The datachannels implementation should work pretty well. I implemented it from scratch in April this year so bitrot hasn't settled in yet. The video streaming will be trickier. .NET can pump the video packets in/out on the network well enough. Things break down a bit when moving across the managed and native boundary, i.e. the .NET runtime to an FFmpeg library. If the video resolution is above 720p @ 30fps things start to struggle. A real-time video call is normally good enough at those specs but I don't think a movie will be. The trick may be to try and circumvent FFMpeg and use the SendRtpRaw method. If the media you want to transmit is in a known format you may be able to read the bytes directly and encapsulate them in RTP packets without having to do any decoding/encoding. |
Beta Was this translation helpful? Give feedback.
-
I have a previous project I had abandoned that was meant to be an open source Plex alternative. I had abandoned it due to the SSL requirements and mixed-content errors being thrown by the browsers when connecting to a home server that isn't SSL secured. You can imagine it would be a PITA to require users to provide their own SSL certificates in order to use the platform.
That's when I heard about WebRTC and how it is by nature secured. My plan is to see if this library can help me get my media server project up and running by streaming directly from the home server via WebRTC to the browser, using DataChannels for communications instead of XMLHttpRequests.
If the most I have to do is tell the users to install FFMpeg then so be it :D Perbaps I can bundle FFMpeg with the server :D
Beta Was this translation helpful? Give feedback.
All reactions