3

我想知道是否有适合极低比特率的视频编解码器,尤其是网络摄像头输入?

抛出一些数字:假设一个 160x120 的流将产生大约 32kbps 左右。

质量可能会很差。但是,视频应该是“可以理解的”,帧率应该足够运动感知。

谷歌搜索,我只能找到摘要。有具体的编解码器吗?有视频示例吗?最终,任何可用的库?

编辑:感谢您的回答。我尝试使用针对 32kbps 的 H264 对 160x120 预先录制的剪辑进行编码,我必须承认结果非常好。

质量实际上非常好,这让我想知道这是否可以实时完成,并且不需要高 CPU 负载?

以会议为例,您必须实时编码一个流,同时解码多个流。

4

5 回答 5

3

归根结底,我认为最好的方式是运行具有非常小的目标比特率的高质量现代编解码器,并让它发挥它的魔力。试试x264;我已经看到它在高比特率下的出色性能,而且据说它的设计可以很好地降级。x264 最大的问题是它对编码和解码的 CPU 要求相对较高,但我认为它会在给定比特率下为当前可用的编解码器提供最佳质量。而且是标准化的!

于 2009-06-06T22:38:13.733 回答
1

我认为 H.264 能够做到这一点。我似乎记得以大约 64 kBit/s 的速度编码 QCIF(176X220),这是合理的质量,因此 32kBit/s 的较小分辨率应该是可能的(但当然质量会非常低)。老实说,我总是觉得很神奇,你能以如此低的比特率获得可观看的视频......

所达到的比特率当然很大程度上取决于帧率。此外,视频中的内容对比特率有很大影响。如果视频中有大量移动,它将增加比特率(如果比特率固定,则降低质量)。

英特尔有一系列编解码器(H.264、H.263 等)的免费实现,请看这里这里。我以前用过它们,它们非常好。

于 2009-06-08T19:33:20.907 回答
1

击败h264真的很难,但遗憾的是我认为你提到的分辨率大约是64kbit。

我认为研究领域中有些东西可以做得更好,通常是匹配追踪的变体,但我认为这些东西还没有应用于现实世界的编解码器。这是因为首先,Matching Pursuits 的编码速度慢,其次有一些专利涵盖了它。

于 2009-06-07T02:47:37.787 回答
1

请记住:帧速率至关重要。

以更低的帧率获得更高的质量呢?这样 32kbps 是不可能的。

此外,GOP 大小很重要,与压缩和错误恢复有很大关系。

大 gop = 更小尺寸/冗余 = 小流损坏变得致命 小 gop = 大尺寸/每比特率质量较差 = 更具容错性

在 x264 中,我建议您关闭变量 AQ、Trellis 和 Psy-RD,并将色度量化器偏移量增加到 3,并将 inloop deblocker 的 Beta 增加到大约 3,而不更改 alpha。每次测试时打开 PSNR 并寻找最佳设置。并使用 MeGUI 进行测试。

于 2009-06-18T07:10:30.657 回答
1

对于相同的比特率,H.264 肯定会具有最佳质量。但是,它将需要最多的计算资源。因此,在某些计算机中对多个视频流进行编码或解码是不可行的。

没有办法先验地知道 H.264(或一般视频)编码/解码所需的计算资源,因为这取决于编码参数和视频内容。所以,你应该自己做一些测试,看看普通电脑是否可以实时编码/解码 H.264,如果可以,有多少流。这并不像看起来那么难。使用 mencoder 或 x264 对 H.264 进行编码,并使用所需的参数对长视频进行编码。看一下编码帧率。现在,在第一个完成之前,启动另一个 mencoder 实例并查看帧速率等。

如果您最终发现 H.264 不适合您的需求,请尝试使用 h.263。它是一种较旧的协议,无法达到 H.264 的压缩率,但它是专为视频会议设计的,因此在您需要的情况下具有良好的质量,而且由于它相当旧,它对资源要求不是很高。

于 2009-07-24T16:48:35.753 回答