1

我正在寻找 OpenCL 中的无损视频压缩。它必须是无损的,因为它是项目要求。找到了一些用 OpenCV 和 ffmpeg 编写的无损算法,但它们都不支持 OpenCL 编码/解码。我使用的是 Apple 电脑,它们带有不支持 CUDA 的 ATI 显卡。

非常感激任何的帮助。

4

2 回答 2

2

您可以使用已经支持 OpenCL 的 x264,并使用 0(无损)的 CRF。我知道,看起来 mpeg4 总是有损的,但事实证明它也有无损模式,大多数时候比其他无损编解码器效果更好。

avconv -i input -c:v libx264 -preset slow --opencl -crf 0 -c:a copy outvideo.mp4

x264 中的 OpenCL 比普通 CPU 稍快一些,因此没有被广泛使用。编辑:在我的系统中,我的 libx264 不接受--opencl,但我认为从来没有版本接受该参数。也许您将需要一个二进制可执行文件“x264”,因为 libx264 可能不会公开所有底层功能。

于 2015-11-06T10:31:59.757 回答
0

对于这个无损视频压缩任务,您不太可能会找到在 OpenCL 中实现的任何东西。您最好的选择是采用已经存在的东西,然后尝试对其进行调整,但 OpenCL 的基本方法是将计算任务分成不同的线程,这些线程在小块内存上运行。您可以将WebM作为起点。

于 2015-11-05T23:33:29.580 回答