我正在尝试哄骗 AV Foundation 从内存中的 mp4 文件中读取(不使用中间写入磁盘解决方案)。我尝试了自己的自定义 URL 协议,但失败了,因为 AV Foundation 并没有真正使用 URL 加载系统。我的下一个解决方案是尝试构建一个 POSIX 管道并让 AV Foundation 层从命名管道文件加载资产(即从 url “file:///path/path/.../path/mp4file.pipe”)它是用 mkfifo() 创建的。这在尝试通过通常的 fopen() 调用读取文件但使用 AVURLAsset initWithURL: 调用失败(崩溃)时有效。
正如任何人设法让 AVFoundation 从管道中读取,或者更一般地说,让 AVFoundation 与内存中的 mp4 文件一起工作?
谢谢。