3

我们目前正在开发一个直播应用程序,其中包括:

  • 用 C# 编写的客户端,它将从网络摄像头捕获帧,并且必须将它们编码到视频块中(更多信息即将发布)

  • 我们用 Node.js 编写的流服务器,它基本上只需要从上述客户端接收视频块并将它们发送到使用 Socket.io 作为底层传输协议的 webapp

  • 将使用 VIDEO 标签 + MediaSource API 来执行视频播放的 web 应用程序。

由于 MediaSource API 支持的视频格式和这些视频格式(MPEG-DASH、WebM、OGG+Theora)的 C# 编码器 API 所施加的限制,我们想到了这个解决方案:

C# 客户端将使用 Theora 作为视频编解码器在 OGG 视频中编码 1 或 2 秒的视频。一旦块准备好被发送到流服务器,流服务器将把它发送到 webapp。webapp 将从网络读取这个视频块(实际上是一个 1-2 秒的独立视频),就好像它正在从文件和块中读取一样,webapp 会像单个流一样再现它们。

不幸的是,我和我团队中的其他人都没有任何视频编码/流媒体的经验,所以我的问题是:有没有人知道一个好的 C# 库,它可以从从网络摄像头捕获的帧序列中生成 OGG 封装的视频,所以它可以毫无问题地从 MediaSource API 读取吗?

任何其他解决方案,只要它使用视频标签、webapp 上的 MediaSource API 和客户端上的 C#,都可以接受。

4

2 回答 2

1

我不相信那里有很多流行的 OGG 编码库。但是,最好自己创建。我将从这里开始: https ://www.rfc-editor.org/rfc/rfc5334

于 2013-06-30T20:23:23.073 回答
0

我在 Gstreamer 上运气不错,但我不确定它是否能满足您的语言和编码要求。还是值得一看的。

http://gstreamer.freedesktop.org/

于 2013-07-01T05:55:13.213 回答