インターネットの急速な発展に伴い、ビデオは人々が情報とエンターテイメントを取得する主な方法となっています。ただし、ビデオファイルは通常大きく、ファイルの転送速度を上げてストレージスペースを削減するために、通常、Webサイトはビデオをトランスコードして圧縮する必要があります。この記事では、FFMPEGツールと組み合わせたPHP言語の使用方法を紹介して、ビデオトランスコーディングおよび圧縮機能を実装します。
$ sourcefile = '元のビデオファイルパス'; $ targetFile = 'トランスコーディングビデオファイルパス'; $ command = "ffmpeg -i $ sourcefile -vcodec libx264 -acodec aac -preset slow -crf 22 $ targetfile"; exec($ command);
上記のコードで:
$ sourceFileは、元のビデオへのパスです。
$ TargetFileは、トランスコーディングビデオファイルパスです。
-vcodec libx264ビデオエンコーディングにx264エンコーダーの使用を指定します。
-ACODEC AACオーディオエンコーディングにAACエンコーダーの使用を指定します。
-Preset Slowは、動画の品質を向上させるために遅いトランスコーディング速度を使用します。
-CRF 22は、ビデオ品質の圧縮パラメーターです。値が小さいほど、ビデオの品質が高くなります。
これらのパラメーターを調整することにより、必要に応じてトランスコードできます。
$ sourcefile = '元のビデオファイルパス'; $ targetFile = '圧縮ビデオファイルパス'; $ command = "ffmpeg -i $ source -file -vcodec libx264 -acodec aac -s 640x480 -b:v 500k $ targetfile"; exec($ command);
このコードで:
$ sourceFileは、元のビデオへのパスです。
$ターゲットファイルは、圧縮されたビデオファイルパスです。
-s 640x480ビデオの解像度を640x480に設定します。
-B:V 500Kビデオのビットレートを500kbpsに設定します。
これらのパラメーターを調整することにより、ビデオの圧縮レベルと品質を柔軟に制御できます。
$ sourcefile = '元のビデオファイルパス'; $ targetfile = 'transcoped/圧縮ビデオファイルパス'; $ command = "ffmpeg -i $ sourcefile -vcodec libx264 -acodec aac -preset slow -crf 22 $ targetfile"; exec($ command、$ output、$ returnvar); if($ returnvar === 0){ エコー「ビデオトランスコーディング/圧縮に普通に」。 } それ以外 { echo 'ビデオトランスコーディング/圧縮失敗、エラーメッセージを確認してください:'。 Inprode( "\ n"、$ output); }
上記のコードでは、 exec() function $ returnvarの3番目のパラメーターを使用して、コマンドの実行ステータスを返します。返品値が0の場合、コマンドの実行が成功することを意味します。 0でない場合、実行が失敗したことを意味します。 $出力でエラーメッセージを出力することにより、問題を見つけるのを支援できます。