如何将实时视频从 iOS 设备流式传输到服务器?

How can live video be streamed from an iOS device to a server?

我希望能够将实时视频从 iOS 设备流式传输到服务器。我尝试使用 AVCaptureOutput 将每个帧捕获为 CMSampleBuffer 并使用 AVAssetWriter 附加它,但我不知道何时或如何从文件中获取输入并发送它到服务器。应该如何格式化?我怎么知道什么时候发送?

虽然我没有与您分享任何代码,但我与您分享我在我的一个应用程序中所做的逻辑。

第一种方法(简单的方法):有很多低成本的第三方库可供您使用。

第二种方法(困难的方法): 创建一小段视频,例如 2 秒或更短,让它们排队并上传到服务器(不要使用 afnetworkinghttp 方法,它会减慢进程使用一些聊天服务器,如 node.js 或其他)。并保留一个文本文件或数据库条目,您可以在其中跟踪块文件及其序列。上传第一个块后,您可以使用 ffmpg 从实际块制作视频,您获得的块越多,将它们添加到主视频文件中,如果您在设备上播放实际视频,您就不会不必再做任何修改,一旦在服务器上发生更改,它就会自动获取新部件。

谢谢。希望对你有帮助。