2009-06-06 14 views
3

非常に低いビットレート、特にウェブカメラの入力に適したビデオコーデックがあるのだろうか?非常に低いビットレートのビデオコーデックですか?

いくつかの数字を投げる:約32kbpsほどの結果となる160x120ストリームを考えてみましょう。

おそらく、品質は悪くなります。しかし、ビデオは「理解可能」であり、フレームレートは動きの知覚に十分でなければならない。

Googleで検索すると、抄録のみしか見つかりませんでした。具体的なコーデックはありますか?すべてのビデオの例?そして、最終的に、使用可能なライブラリはありますか?

編集:お返事ありがとうございます。私は32xbpsをターゲットとしたH264で160x120のプリレコーディングされたクリップをエンコードしようとしましたが、その結果が良いと認めなければなりません。

品質は実際には驚くほど良いものでした。これにより、これはリアルタイムで実行でき、高いCPU負荷を必要としませんでしたか?

複数のストリームをデコードしながら、1つのストリームをエンコードしなければならない例については、すべてリアルタイムで会議を開催してください。

答えて

3

最終的には、ターゲットビットレートが非常に小さい高品質のモダンなコーデックを実行し、その魔法を働かせるようにするのが最もよいと思います。試しにx264を与えてください。私は高いビットレートでそれからの例外的な性能を見てきました、そして、それはおそらく非常にうまく劣化するように設計されています。 x264の最大の問題は、エンコーディングとデコードのCPU要件が比較的高いことですが、現在利用可能なコーデックでは、特定のビットレートで最高の品質を提供できると私は考えています。それは標準化されています!

+0

エンコードとデコードの数字はありますか?一般に、エンコーディングはデコードよりもはるかに時間がかかります(4倍または5倍のようなもの)。 – Lehane

+1

私は176x112 x264(著作権で保護されているので、投稿できません)でいくつかのテストを行いました。 32kbpsでは画質はひどいものでしたが、ビデオは実際に視聴可能でした。これは10年前のQuickTimeまたはRealVideoクリップを思い出しました。実際には64kbpsがかなりまともで、私の目には十分に見えました。この2.6GHzのCore 2 Duoでは、エンコーディングのために100-120FPSを管理しました(設定に応じて)。 x264のすべての設定を「狂った」状態にすると約100FPSになるので、現代のデスクトップCPUは小さなx264ビデオをエンコードするのに問題はありません。 – kquinn

1

h264を打つのは本当に難しいですが、悲しいことに、あなたが言及した解像度は約64kbitだと思います。

リサーチの世界では、マッチング・トラッキングのバリエーションが増えていますが、実世界のコーデックには及ばないと思います。これは、第1に、マッチングの追求が非常にでエンコードが遅く、2番目にそれをカバーするいくつかの特許があるためです。

1

私はH.264がこれを実行できると思います。 64Kビット/秒でQCIF(176X220)をエンコードすることを覚えているようですが、それは合理的な品質なので、32kBit/sでのより小さい解像度が可能でなければなりません(もちろん、非常に低品質になります)。正直言って私はいつもあなたが低ビットレートのビデオを見ることができるのは驚くべきことだと思っています....

達成されるビットレートは、もちろんフレームレートに大きく左右されます。また、ビデオのコンテンツは、海賊版に大きな影響を与えます。ビデオに動きが多いと、ビットレートが高くなります(ビットレートが固定されていると品質が低下します)。

Intelには、多くのコーデック(H.264、H.263など)の無料実装があり、hereまたはhereと表示されます。私は前にそれらを使用し、彼らは非常に良いです。

1

覚えていること:フレームレートが重要です。

フレームレートが低いほど品質は向上しますか?そうしたやり方では32kbps以上が可能です。

また、GOPサイズは重要であり、圧縮ANDエラー耐性とは非常に関係があります。x264の中

ビットレートあたりのGOP =小さいサイズ/冗長=小川の破損は致命的になり 小さなGOP =ビッグサイズ/少ない品質大=よりエラーに強い

、私は変数AQをオフにすることをお勧めします、トレリス彩度量子化器のオフセットを3とし、inloopデブロッカーのベータを約3に増加させることができる。テストするたびにPSNRをオンにして、最適な設定を探します。テストのためにMeGUIを使用してください。

1

H.264は、同じビットレートでは最高品質です。しかし、最も計算資源が必要になります。だから、いくつかのコンピュータでは、複数のビデオストリームのエンコードまたはデコードは実現できません。

H.264(または一般的にはビデオ)エンコーディング/デコードに必要な計算リソースは、エンコーディングパラメータとビデオコンテンツに依存するため、事前に知る方法はありません。したがって、平均的なPCがリアルタイムでH.264をエンコード/デコードできるかどうかを確認するために、いくつかのテストを自分で行う必要があります。これは、見た目ほど難しくありません。 Mencoderまたはx264をH.264にエンコードして、希望のパラメータに長いビデオをエンコードします。エンコードフレームレートを見てみましょう。さて、最初のものが終了する前に、mencoderの別のインスタンスを起動し、フレームレートなどを見てください。

最終的にH.264があなたのニーズに適していないことが分かったら、h.263を試してみてください。これは古いプロトコルであり、H.264の圧縮率を達成することはできませんが、ビデオ会議用に特別に設計されているため、必要な状況で良好な品質を保ちます。リソースをあまり必要としません。

関連する問題