gpt4 book ai didi

ios - 将帧发送到服务器的最佳技术是什么,或者直播在 iOS 上如何工作?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:08:56 24 4
gpt4 key购买 nike

由于在当前的iOS SDK 中无法从视频中获取压缩帧,我们如何实现像skype 那样的直播?我现在看到的唯一方法是:

  1. 从 AVCaptureVideoDataOutput 获取未压缩的帧
  2. 使用第三方库压缩这些帧
  3. 发送帧到服务器

还有其他方法可以完成这个任务吗?哪些库可以用于压缩,它们是否与应用商店兼容?提前致谢

最佳答案

我也在纠结这个问题。 ffmpeg 库似乎适用于压缩,但许可意味着您必须发布源代码。

您可以将您的对象设置为 AVCaptureVideoDataOutput 的委托(delegate),并在调度队列上实现此回调:

  • (void)captureOutput:(AVCaptureOutput *)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection;

然后您将获得未压缩的视频,您可以将其处理成 uiimage 或 jpeg(Apple 有这方面的代码示例),但无法获得硬件压缩的 H264 帧,而这正是我们真正想要的。这是您可以实现 ffmpeg 之类的库以将视频压缩为 H264 或其他格式的地方。

目前,我正在尝试查看是否可以解释 AVAssetWriter 文件输出并将其重定向到流(它可以编写硬件压缩视频),但 Apple 似乎出于某种原因使这变得困难。

如果您发现有用的东西,请告诉我。

关于ios - 将帧发送到服务器的最佳技术是什么,或者直播在 iOS 上如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7965265/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com