Ios 设备上的AVAnimator崩溃

Ios 设备上的AVAnimator崩溃,ios,animation,video,mmap,Ios,Animation,Video,Mmap,我在我的项目中集成了AVAnimator,以显示具有透明背景的视频。 在模拟器上,一切都很好。我可以看到视频,背景真的是透明的,我可以听到音频 但当我尝试在设备上构建和运行时,会出现以下错误: Assertion failure in -[SegmentedMappedData mapSegment], /transparentVideoTest/AVAnimator/SegmentedMappedData.m:300 *** Terminating app due to uncaught ex

我在我的项目中集成了
AVAnimator
,以显示具有透明背景的视频。 在模拟器上,一切都很好。我可以看到视频,背景真的是透明的,我可以听到音频

但当我尝试在设备上构建和运行时,会出现以下错误:

Assertion failure in -[SegmentedMappedData mapSegment], /transparentVideoTest/AVAnimator/SegmentedMappedData.m:300
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'mmap result EINVAL'
我对mmap不太熟悉


有谁能告诉我,当映射在模拟器上工作而不是在设备上工作时,可能是什么原因吗?

我也有同样的问题。我通过进入构建设置并将允许的体系结构更改为
$(ARCHS\u STANDARD\u 32\u BIT)
(尝试将您的项目设置与项目的设置相匹配)

javierx,很好的发现。64对32 ABI有问题吗?我自己也没有看到过这个问题,它可能只出现在特定版本的xcode中,但我对此并不乐观,甚至在示例中我也遇到了同样的问题。按照此处的建议更改允许的体系结构没有帮助。它只是吐出了一堆链接错误@MoDJ:你有没有一个在iOS7的设备上运行的例子,它是从xcode5.1.1构建的?好的,我确实做到了。我不得不按照javierx的建议更改体系结构,我还发现我需要在maxvid_decode_arm.s中添加以下编译器标志:
-no integrated as
(在目标->构建阶段->编译源代码中)。是的,这些标志在示例中设置。这里还介绍了仅供参考的内容,但这个问题最近在github源代码中得到了解决,因此可以构建一个包含32位和64位代码的胖二进制文件,并且这两个代码都可以正常工作。还要注意的是,github版本中不再需要-no integrated as标志和pre-ARC标志。