我希望我的网站使用网络摄像头记录 flvs。这些 flv 需要流畅播放,以便之后我可以使用它们,例如将它们转码为 avis。
我尝试了许多不同的服务器来处理 flv 录制。例如,生成的 flv 在 Wimpy FLV 播放器中可以正常播放,只是进度指示器的移动不顺畅或不规律。这表明有问题,如果我尝试使用“ffmpeg -i input.flv output.avi”(带或不带帧速率选项“-r 15”)对它们进行转码,我不会得到正确的 avi。
这是我尝试过的以及遇到的问题:
使用red5(v 0.6.3 和 0.7.0,在 OS X 10.5.4 和 Ubuntu 8.04 上)和它包含的 publisher.html 示例。这是生成的 flv。指标非常迅速地跳向终点。
仍在使用 red5,但发布“实时”并在几秒钟后开始录制。我使用了这些示例文件。这是生成的 flv。指标还是跳的很快,用这个方法一点声音都没有……
使用Wowza Media Server Pro(v 1.5.3,在我的 Mac 上)。进度指示器不会跳到最后,但它在一开始就移动得更快。这足以使使用 ffmpeg 转换为其他格式会使视觉与音频不正确同步。只是为了确保我尝试了它附带的录像机,以及使用 red5 的 publisher.html(结果相同)。
通过在www.influxis.com上托管的帐户使用 Flash Media Server 3 。我得到了另一种进展模式。进度指示器在开始时有点跳跃,然后变得有规律。这是一个例子。
我知道可以录制“完美”的 flv,因为 facebook 的视频应用程序可以做到这一点(使用 red5?)事实上,查看 facebook 视频的 HTML 源并获取 http URL 以下载他们制作的 flv 很容易。在 Wimpy 中播放时,进度指示器很流畅,使用“ffmpeg -i facebook.flv -r 15 facebook.avi”进行转码会产生良好的 avi。这是一个例子。
那么,我能否设法获得具有恒定帧率的好 flv?
PS:服务器必须可以安装在 Linux 上,或者可以在价格合理的托管服务提供商处获得。
编辑:正如所指出的,也许问题不在于帧率,而在于其他问题。我对视频不了解,也不知道如何检查我提供的示例以进行检查;也许有人可以对此有所了解。