ホームページ > バックエンド開発 > PHPチュートリアル > PHP を使用してビデオ ファイルを処理するにはどうすればよいですか?

PHP を使用してビデオ ファイルを処理するにはどうすればよいですか?

WBOY
リリース: 2023-05-13 19:22:02
オリジナル
2229 人が閲覧しました

ビデオ ファイル処理は、クロップ、圧縮、トランスコーディング、透かしの追加、結合などの操作を含む、最新のネットワーク アプリケーションの重要な部分です。一般的なサーバー側プログラミング言語である PHP を使用して、これらの要件を処理できます。今回はPHPを使って動画ファイルを加工する方法を解説します。

  1. FFMPEG ライブラリのインストール

FFMPEG は、ビデオ ファイルとオーディオ ファイルの処理に使用できる強力なオープン ソース ライブラリです。 PHP で FFMPEG を使用するには、最初にそれをインストールする必要があります。

次のコマンドのいずれかを使用してインストールします。

  • Ubuntu システム: sudo apt-get install ffmpeg
  • CentOS システム: sudo yum install ffmpeg
  1. #ビデオ ファイルの処理

PHP を使用してビデオ ファイルを処理する一般的な方法をいくつか示します:

(1) ビデオ ファイルを圧縮する

FFMPEG を使用すると、ビデオパラメータを変更することでビデオファイルサイズを圧縮できます。以下は PHP のサンプル コードです:

$videoFile = "input.mp4";  //输入视频文件
$outputFile = "output.mp4";  //输出视频文件
$size = '320x240';  //视频分辨率
$bitrate = '256k';  //视频比特率

$cmd = "ffmpeg -i $videoFile -s $size -b:v $bitrate $outputFile";
exec($cmd);
ログイン後にコピー

上記のコードは、ffmpeg コマンド ライン プログラムを使用して、入力ビデオ ファイル input.mp4 を出力ビデオ ファイル Output.mp4 に圧縮します。ビデオ解像度は 320x240 で、ビデオビットレートは256kです。

(2) ビデオ ファイルのトリミング

FFMPEG を使用すると、ビデオをトリミングして不要な部分をトリミングできます。以下は PHP のサンプル コードです。

$videoFile = "input.mp4";  //输入视频文件
$outputFile = "output.mp4";  //输出视频文件
$start = '00:00:10';  //开始时间
$duration = '00:00:05';  //持续时间

$cmd = "ffmpeg -i $videoFile -ss $start -t $duration -async 1 $outputFile";
exec($cmd);
ログイン後にコピー

上記のコードは、ffmpeg コマンド ライン プログラムを使用して、入力ビデオ ファイル input.mp4 を出力ファイル Output.mp4 に切り出します。開始時間は 10 秒で、持続時間は 5 秒です。

(3) ビデオ ファイルの結合

PHP で FFMPEG を使用すると、複数のビデオ ファイルを 1 つのビデオ ファイルに結合できます。以下は、PHP のサンプル コードです。

$videoFile1 = "input1.mp4";  //输入视频文件1
$videoFile2 = "input2.mp4";  //输入视频文件2
$outputFile = "output.mp4";  //输出视频文件

$cmd = "ffmpeg -i concat:"$videoFile1"|"videoFile2" -acodec copy -vcodec copy $outputFile";
exec($cmd);
ログイン後にコピー

上記のコードは、ffmpeg を使用して、入力ビデオ ファイル input1.mp4 と input2.mp4 を出力ビデオ ファイル Output.mp4 にマージします。

(4) ウォーターマークの追加

動画ファイルの著作権を保護するために、ビデオ ファイルにウォーターマークを追加できます。 PHP のサンプル コードは次のとおりです。

$videoFile = "input.mp4";  //输入视频文件
$watermarkFile = "watermark.png";  //水印图像
$outputFile = "output.mp4";  //输出视频文件

$cmd = "ffmpeg -i $videoFile -i $watermarkFile -filter_complex 'overlay=W-w-10:H-h-10' $outputFile";
exec($cmd);
ログイン後にコピー

上記のコードは、入力ビデオ ファイル input.mp4 の右下隅に透かし画像を追加し、それを出力ファイル Output.mp4 に保存します。

  1. 結論

この記事では、PHP を使用してビデオ ファイルを処理する一般的な方法をいくつか紹介しました。ビデオ ファイル サイズの圧縮、ビデオのトリミング、ビデオ ファイルの結合、透かしの追加など、FFMPEG ライブラリは強力で便利なツールです。これらの操作を実装するときは、メモリの問題を回避し、最適なパフォーマンスを維持するために、大きなビデオ ファイルの処理を考慮する必要があります。

以上がPHP を使用してビデオ ファイルを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート