直播视频流使用什么类型的流协议和套接字

use*_*966 5 html c++ udp tcp stream

我正在构建一个用 C++ 编写的视频服务器,将实时视频流传输到用 php 和 html 编写的网络视频客户端,以实现视频聊天。

什么类型的协议,例如。我应该使用“UDP、TCP、RTP、RTSP、MMS、阻塞、非阻塞”将实时且不断变化的视频流式传输到我的网络客户端。

我尝试使用 TCP 协议使用非阻塞套接字流式传输视频,但视频在播放第一个流式传输的剪辑后停止,它不会继续播放继续流式传输的剪辑。

我知道的一个例子是使用 Windows Media Encoder 从网络摄像头流式传输内容,并使用浏览器访问它,只需一个简单的嵌入标签,如下所示:

<object ID="MediaPlayer" WIDTH="320" HEIGHT="240" CLASSID="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95" STANDBY="Loading Windows Media Player components..." TYPE="application/x-oleobject" CODEBASE="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112">
<param name="autoStart" value="True">
<param name="filename" value="http://127.0.0.1:8888">
<param NAME="ShowControls" VALUE="False">
<param NAME="ShowStatusBar" VALUE="False">
<embed TYPE="application/x-mplayer2" SRC="http://127.0.0.1:8888" NAME="MediaPlayer" WIDTH="320" HEIGHT="240" autostart="1" showcontrols="0"></embed></object>
Run Code Online (Sandbox Code Playgroud)

我还想知道 Windows Media Encoder 使用什么类型的流协议来实现此目的?

lit*_*adv -1

有一些专门用于视频流的协议...您应该首先阅读有关 RTP 和 HTTP Live Streaming 的内容。