问题描述
我有一台照相机,它以8位灰度(256色)输出160 fps的1024x1280
像素。
我需要对此进行现场编码,而不会造成任何损失。 最好的编解码器是什么?
我可以用python或c ++编写代码,并且具有很多内核,因此可以选择并行化。
谢谢
解决方法
Motion JPEG-2000支持无损和灰度。
ffv1 https://github.com/FFmpeg/FFV1/blob/master/ffv1.md是无损的另一个常见选择。
您的未压缩数据速率为160 fps * 1024 * 1280 = 210 MB / s。 我猜想压缩率为50%,这样您最终得到的压缩视频约为100 MBytes / s。
这应该是SSD的可行I / O速率。
关于CPU-我建议您进行一次天真的并行化,即每个内核运行一个视频压缩器。因此,您必须对输出帧进行某种调度,流水线处理和重新排序。
因此,如果您有一个16(32)核心CPU,则每个核心都需要执行10(5)fps,这听起来很合理。