1

svg 画像を使用して (ffmpeg を使用して) スライドショーを作成する方法を教えてください。いつものやり方で、

ffmpeg -i bloch_0%2d.svg bloch2.mp4

ffmpegは明らかにsvgファイルを処理できないため機能しません(入力の処理中に無効なデータが見つかりました)これを行う簡単な方法はありますか?

ありがとう

4

1 に答える 1

5

まず、SVG 画像を PNG や JPEG などのラスター形式に変換します。SVG エディターがラスター形式へのエクスポートをサポートしていない場合は、ImageMagick のconvertコマンドを使用してこれを行うことができます。

convert bloch_*.svg bloch_%03d.png

注: SVG を最適にサポートするには、ImageMagick が RSVG ライブラリを使用するようにコンパイルされていることを確認してください。 詳細

次に、次を使用してラスター イメージを MP4 の H.264 に変換しffmpegます。

ffmpeg -r 1 -i bloch_%03d.png -pix_fmt yuv420p bloch2.mp4

この-r 1オプションは、入力のフレーム レートを毎秒 1 フレームに設定しますが、これらが独立した画像であるか、ある種の連続アニメーションであるかに応じて、好きなように設定できます。

-pix_fmt yuv420p必須ではありませんが、PNG カラーはサブサンプリングされません。H.264 ビデオは特殊なプロファイルで非サブサンプリング カラーをサポートできますが、ほとんどのプレーヤーは 4:2:0 カラー サブサンプリングのみをサポートするため、おそらく 4:2:0 に変換する必要があります。JPEG は通常 4:2:0 を使用するため、入力が JPEG の場合、通常はこのオプションは必要ありません。

于 2013-02-27T23:23:11.033 に答える