h264 实时视频流

Posted

技术标签:

【中文标题】h264 实时视频流【英文标题】:h264 real time video streaming 【发布时间】:2016-07-12 15:17:12 【问题描述】:

如果您在一端(服务器)动态生成 h264 帧,您将如何在浏览器(客户端)中制作可观看的实时(低延迟)视频流?

换句话说,我想要实现的是将图形密集型 c++ 应用程序从 gpu 服务器流式传输到浏览器。

作为一个简单的解决方案,我正在考虑这样的事情:

c++ app | ffmpeg | server | html5 client

应用程序创建的 h264 帧被发送到标准输出,其中 ffmpeg 用于将此流重新混合为 mp4,然后传递给服务器,服务器可以根据请求将其传递给客户端。

这是一个好方法吗?使用这种方法甚至可以创建低延迟的 30fps 视频流吗?

【问题讨论】:

【参考方案1】:

是的,这是一个正确的方法和可能的做法。

安装 Unreal Media Server 并根据http://umediaserver.net/umediaserver/faq.html从 ffmpeg 到 Unreal Media Server 进行 RTMP 发布

然后虚幻 HTML5 播放器将接近实时播放此流,请参阅示例 http://umediaserver.net/umediaserver/demos.html

【讨论】:

以上是关于h264 实时视频流的主要内容,如果未能解决你的问题,请参考以下文章

视频直播技术:实时视频编码之H264硬编码

使用 Live555 从连接到 H264 编码器的 IP 摄像机流式传输实时视频

vlc-android-sdk - 无法查看 RTSP 实时视频

仅使用视频标签实时流式传输到 HTML5(没有 webrtc)

从 localHost 端口 (http://192.168.1.1:8080) 在 openCv 中流式传输实时视频

嵌入式 视频编码(H264)hi3518