在录制视频的同时进行流媒体传输

3
我目前正在参与一个学生项目,我们需要创建一个视频实时流服务,并满足以下限制:
- 我们使用OpenCV从网络摄像头捕获视频流 - 我们希望在录制的同时进行视频流传输 - 我们有一个名为capture.avi的文件保存在电脑上,在保存此文件时,我们希望对其进行视频流传输。
目前我们不知道如何实现这一点,我们不确定从A传输到B的文件是否可以被打开(例如通过VLC),并且我们不能保证不会中断。
我们计划使用RTSP作为网络协议。我们使用C ++编写所有代码。
以下是问题:
1. RTSP是否能够处理正在写入的文件的视频流传输? 2. 我们应该使用什么格式的源?我们应该将从OpenCV捕获的帧从A传输到B(因此在B中必须使用OpenCV将帧转换为视频),还是应该让OpenCV在A中创建一个视频文件,然后从A将该视频文件传输到B?
谢谢!

1
尝试使用mjpeg编码进行实时流媒体。视频编码不会很昂贵,也不会依赖于许多帧。 - Pervez Alam
@Zaw Lin 你是只使用OpenCV进行录制,还是在录制和流媒体之前有任何预处理? - Haris
@Haris,我只是想知道这是否是OP的问题。如果音频可以被丢弃,那会简化事情。 - Zaw Lin
好的,抱歉,那是我的疏忽。我是指楼主。 - Haris
你在哪个平台上工作,比如Windows?Linux?你想使用OpenCV的唯一原因是视频捕获吗? - Ralf
显示剩余2条评论
1个回答

1

我认为这样做是不安全的,你需要两个缓冲区。

  • 第一个缓冲区允许你使用任何库将录制的视频写入本地文件系统。
  • 后者允许你的视频通过网络进行流式传输。

两者应该共享相同的上下文和数据,以管理两个缓冲区的同步。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接