对于我正在构建的系统,我需要一个对断电有弹性的视频编解码器 - 即,如果要切断电源,视频仍然需要可以从闪存盘上剩余的内容播放。
(车载PC项目,拔掉钥匙后电脑会立即关机,如果发生意外断电)。
任何人都可以推荐一个合适的编解码器(和与.net兼容的编码器),理想情况下需要低处理能力(最坏的情况下闪存盘可以以~6mbps的速度写入)?
任何编解码器都可以播放到断电为止。关键是正确的容器。使用传输流。[TS]。它会玩得很好。像 mp4 和 3gp 这样的容器是不对的。
如果您从逻辑上思考,任何流媒体格式都是可播放的。因为可以随时切断流。TS 流是为流媒体设计的,因此可以完美地播放到你失去力量的地步。您内部的视频和音频编解码器无关紧要。选择 H.264 和 aac 以获得良好的压缩功能。
Webm、mjpeg 也是可流式传输的格式。
在编解码器级别,您真正需要担心的是 B 帧的存在。
H.264 基线或约束基线配置文件将起作用。这是节省空间的,但处理密集。
MJPEG 也可以工作,虽然非常占用大量空间,但 CPU 很少。
正如 user1559108 正确指出的那样,容器是另一回事。MP4 和变体可能是可修复的,但在这里仍然不是一个很好的选择。
实际上,如果您想确保获得每一帧,您可能只想编写一个原始流,并且(如果您有音频)事后担心复用,因为复用将不可避免地引入一些延迟。