ホームページ  >  記事  >  バックエンド開発  >  PHPを使用してビデオファイルをMP4形式に変換する方法

PHPを使用してビデオファイルをMP4形式に変換する方法

PHPz
PHPzオリジナル
2023-04-10 09:43:3411099ブラウズ

PHP は、Web サイト開発および動的な Web ページの作成によく使用されるスクリプト言語です。ただし、Php はビデオ変換にも使用できます。この記事では、PHP を使用してビデオファイルを MP4 形式に変換する方法を学びます。

まず、いくつかの概念を理解する必要があります。ビデオ ファイルは複数のフレームで構成されており、各フレームはビデオ サンプリングの瞬間を表します。これらのフレームは特定のシーケンスに圧縮され、特別な形式でファイルに保存されます。ビデオ ファイルの変換には、主に、これらのフレームをデコードし、編集し、新しい形式に再エンコードするプロセスが含まれます。

ビデオ変換を実現するには、FFmpeg と FFprobe という 2 つの PHP ライブラリを使用する必要があります。 FFmpeg は、オーディオとビデオを処理するためのオープンソース ライブラリであり、ビデオのデコード、編集、エンコードを行うための多くの機能を提供します。 FFprobe は、ビデオ ファイルを検出し、情報を抽出するためのツールです。

これら 2 つのライブラリを使用するには、サーバーにインストールする必要があります。これには通常、Linux システムのコマンド ライン インターフェイスを使用する必要があります。これらは次のコマンドでインストールできます:

sudo apt-get install ffmpeg
sudo apt-get install ffprobe

インストールが完了したら、PHP を使用してこれら 2 つのライブラリを呼び出し、ビデオ変換操作を実行できます。ビデオ ファイルを MP4 形式に変換する簡単な PHP スクリプトを次に示します。

<?php

$ffmpeg_command = &#39;/usr/bin/ffmpeg&#39;;
$ffprobe_command = &#39;/usr/bin/ffprobe&#39;;

$input_file = &#39;input_video.mp4&#39;;
$output_file = &#39;output_video.mp4&#39;;

// 获取视频信息
$cmd = "$ffprobe_command -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 $input_file";
exec($cmd, $output, $retval);
$duration = floor($output[0]);

// 转换视频文件
$cmd = "$ffmpeg_command -i $input_file -vcodec h264 -acodec mp3 -shortest -preset fast -strict experimental -t $duration -f mp4 -y $output_file";
exec($cmd, $output, $retval);

?>

このスクリプトがどのように機能するかを見てみましょう。まず、FFmpeg と FFprobe の場所を指定するために、2 つの変数 $ffmpeg_command と $ffprobe_command を定義しました。次に、入力ファイルと出力ファイルの名前、および出力ファイルの形式 (MP4) を指定します。

次のステップでは、FFprobe を使用して入力ビデオ ファイルの長さを取得します。システム コマンドを使用して FFprobe を実行し、-exec() 関数を通じてコマンドを実行して、出力をキャプチャします。 FFmpeg から取得した継続時間の値は、$duration 変数に格納されます。

最後に、実際のビデオ変換には FFmpeg を使用します。入力ファイルと出力ファイルの名前を指定し、-h264 エンコーダーと -mp3 オーディオ エンコーダーを使用しました。長さをビデオの長さに設定し、-fast プリセットを使用して変換を高速化します。また、変換中に最新のコーデックが使用されるようにするために、-strict 実験的オプションも指定しました。

このように FFmpeg と FFprobe を使用すると、動画ファイルをほぼあらゆる形式に変換し、さまざまな編集作業を行うことができます。このため、PHP はオーディオおよびビデオの編集および処理アプリケーションにとって非常に強力なプラットフォームになります。

以上がPHPを使用してビデオファイルをMP4形式に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。