菜鸟教程小白 发表于 2022-12-12 12:33:26

ios - 从 iOS 8.0.2 到 8.1 录制的高 fps 视频文件的变化?


                                            <p><p>我的应用程序使用来自 iPhone 6/Plus 相机的 240 fps 视频,将多个重叠的 AVMutableCompositionTrack 组合成一个合成以供导出。在应用中查看和导出都可以渲染为 30 fps 或原始 fps。</p>

<p>对于在 8.0.2 或之前拍摄的视频,以原始 fps 导出并基本上保留原始文件的所有特征(叠加层除外)没有任何问题。对于在 8.1 上拍摄的视频,大约有 50% 的可能性是合成损坏并且无法导出,或者当在应用内播放时卡住大约一秒钟(而音频继续播放一段时间),然后最终以 AVFoundationErrorCode 停止 - 11819,“AVErrorMediaServicesWereReset”。</p>

<p>如果 frameDuration 改为设置为 1/30、1/60、甚至 1/200 或有时对于 240(以及 239.84...)fps 文件高达 1/220 左右,则播放或导出没有问题.导出似乎也比播放更宽容一些,有时甚至在播放失败时也会通过。</p>

<p>我注意到 8.1 的其他应用程序发生了变化,例如 MoviePro 现在在设置为 240 fps 时以 207-209 fps 左右录制,有时在设置为 60 时录制为 59,而 Apple 的 SloPoke 示例也更具可变性,通常以235-236 之间的各种值。不过,Apple 的相机应用程序仍为 239.84。</p>

<p>有谁知道发生了什么变化以及如何解决它?显然是关于 fps 可变性的问题,但我该如何处理呢?或者它可能只是一个错误?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>似乎是 AVPlayer 和 AVExportSession 中的一个错误。使用 AVAssetWriter 导出没有问题。</p>

<p>Apple 最新更新的示例项目 AVCustomEdit 使用自定义 OpenGL 合成器进行剪辑之间的转换,在修改为拍摄 iOS 8.1 240 fps 视频并以接近 240 的帧速率播放时也出现了同样的问题。</p>

<p>不敢相信我花了 30 个小时试图找出问题所在,而避开它这么容易。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 从 iOS 8.0.2 到 8.1 录制的高 fps 视频文件的变化?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/26763944/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/26763944/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 从 iOS 8.0.2 到 8.1 录制的高 fps 视频文件的变化?