前回のコンテナとコーデックの記事では、メディア ファイルのコンテナ(拡張子)とコーデックを変更する方法について説明しました。この記事では、解像度について説明する前に、ビットレートを変更する方法について説明します。
ビットレートや解像度は、メディア ファイル内のデータ量と関連しています。言うまでもないかもしれませんが、念のため説明します。ビットレートや解像度はいつでも下げることができますが、上げることはできません。特別なソフトウェアとアルゴリズムがない限り、品質は低下します。
そのため、変換プロセスを開始する際は、入手可能な最高品質のソースファイルを使用してください。コーデックやコンテナを変更する前に、ファイルの表示特性を確認し、ソースファイルのビットレートまたは解像度が目的の結果よりも高いことを確認します。
ビットレートは、メディア ストリームの 1 秒のエンコードに使用される最大ビット数です。1 秒のストリームのエンコードに使用されるビット数が多いほど、忠実度が高くなります。
当然のことながら、ウェブで処理できるビットレートは低いものです。次の表に、一般的なネットワーク条件でターゲットとするビットレートを示します。比較のために、Blu-ray と DVD の値も示しています。
配信方法 | ビットレート |
---|---|
ブルーレイ | 20 Mb/秒 |
DVD | 6MB |
PC ウェブ | 2 Mbs |
4G モバイル | 0.7 Mbs |
3G モバイル | 0.35 Mbs |
2G モバイル | ネットワークの種類によって異なります。 EDGE: 0.4 Mbs GPRS: 0.04 Mbs |
ウェブページの動画にはどの値を使用すればよいですか?端的な答えは、少なくともデスクトップ、4G、3G です。「次の 10 億人」と呼ばれる市場(インドなど)で動画を配信する場合は、2G も含める必要があります。デモ用に 3G をターゲットにします。
FFmpeg を使用してビットレートを設定するには、ビットレート(-b
)フラグを使用します。
FFmpeg がインストールされていない場合は、メディア アプリケーションの基本を読んで、Docker でセットアップします。
MP4
/media # ffmpeg -i glocken.mov -b:v 350k -b:a 64k glocken_3g.mp4
WebM
/media # ffmpeg -i glocken.mov -b:v 350k -b:a 64k glocken_3g.webm
2 つのビットレート フラグ(-b:a
と -b:v
)があることに注意してください。1 つは音声ストリーム用で、もう 1 つは動画ストリーム用です。
/media # ls -l
-rw-r--r-- 1 root root 12080306 Mar 7 12:16 glocken.mov
-rwx------ 1 root root 531117 Mar 7 13:42 glocken_3g.mp4
-rwx------ 1 root root 706119 Mar 7 13:46 glocken_3g.webm
ファイルの準備ができたら、解像度を調整します。