One of the topics I have been following for quite sometime is real-time streaming. Over the course of my research everyone suggested and says WebRTC (based on UDP) is the only solution to achieve real-time streaming--at least for the web browser. Meaning streaming of web cameras etc (especially in the web browser).

However, my minimal experience with IPTV, I have seen that IPTV can stream real-time videos through RTSP over TCP, I even checked if through Wireshare and really the IPTV that is streaming from miles away from me is delivering real-time stream. I can tell since the video is stamped with time that is in sync with my computer where I access it.

Now the question here is how RTSP is able to achieve on TCP what WebRTC folks says that only through UDP can a real-time streaming would work, RTSP is a proof that over TCP it can be done, how does RTSP does it on TCP?

  • Obviously, your assumption that only UDP will work is flawed. But an explanation of RTSP is too much for this forum. You can read all about it in RFC 2326. – Ron Trunk Apr 16 '20 at 11:37

TCP isn't well suited for real-time applications. TCP tracks segment delivery and retransmits lost segments - which you wouldn't want unless the transmission channel is AOK. No, retransmissions can't be deactivated, it's what TCP is about.

The most obvious choice would be UDP as an extremely common transport protocol or RTP for an optimized one, each with RTSP on top.

WebRTC is an API-side approach and as such off-topic here.

Not the answer you're looking for? Browse other questions tagged or ask your own question.