PHP の ffmpeg 拡張機能を使用するにはどうすればよいですか?

WBOY
リリース: 2023-06-01 10:38:01
オリジナル
3467 人が閲覧しました

phpPHP の ffmpeg 拡張機能を使用するにはどうすればよいですか?

インターネットの発展とビデオ技術の継続的な改善により、ビデオは私たちの生活においてますます重要な役割を果たしています。しかし、現在ではビデオ処理と編集の需要も高まっており、作業を完了するには専門的なツールを使用する必要があります。中でも ffmpeg は非常に人気のあるビデオ処理ツールで、さまざまなビデオ コーデック形式をサポートし、ビデオの編集、カット、トランスコードなどの操作を行うことができます。 PHP の ffmpeg 拡張機能は、ビデオの処理と編集に ffmpeg を使用する便利な方法を提供します。

この記事では、誰もがこのツールをよりよく習得できるように、PHP の ffmpeg 拡張機能の使用方法を紹介します。

1. ffmpeg 拡張機能をインストールする

PHP の ffmpeg 拡張機能を使用する前に、まずインストールする必要があります。

1. ffmpeg ソース コードのダウンロード

最新の ffmpeg ソース コードは https://www.ffmpeg.org/download.html でダウンロードできます。

2. ffmpeg をインストールします

インストールする前に、必要な依存ライブラリとツールをインストールする必要があります:

sudo apt-get update
sudo apt-get install autoconf automake build-essential libass-dev libfreetype6-dev libsdl2-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev

依存関係をインストールした後、ffmpeg をインストールできます:

cd ~/Downloads
tar xvf ffmpeg-4.2.1.tar.gz
cd ffmpeg-4.2.1
. /configure - -enable-shared --disable-static
make
sudo make install

3. ffmpeg 拡張機能のインストール

ffmpeg をインストールした後、ffmpeg 拡張機能をインストールできます。 pecl を使用して ffmpeg 拡張機能をインストールできます:

sudo pecl install ffmpeg

コマンドの実行後、ffmpeg 拡張機能を PHP 構成ファイルに追加する必要があります:

echo "extension=ffmpeg.so" | sudo tee /etc/php/7.2/mods-available/ffmpeg.ini
sudo ln -s /etc/php/7.2/mods-available/ffmpeg.ini /etc/ php /7.2/cli/conf.d/20-ffmpeg.ini
sudo ln -s /etc/php/7.2/mods-available/ffmpeg.ini /etc/php/7.2/apache2/conf.d/20 - ffmpeg.ini

インストールが完了したら、phpinfo() 関数を使用して、ffmpeg 拡張機能が正常にインストールされたかどうかを確認できます。

2. ffmpeg 拡張機能の使用

ffmpeg 拡張機能をインストールしたら、使用を開始できます。一般的に使用される操作は次のとおりです:

1. ビデオの基本情報を取得します

次のコードを使用して、ビデオの基本情報を取得できます:

< ;?php

// ビデオ ファイル パス
$video_path = 'test.mp4';

// ビデオを開く
$video = new FFmpegMovie($video_path);

// 基本情報の取得
#$info = $video->getInfo();

// 情報の出力
#var_dump($info);

?>

2. ビデオ画面を抽出します

次のコードを使用してビデオ画面を抽出できます:

/ / ビデオ ファイル パス
$video_path = 'test.mp4';

//ビデオを開きます
$video = new FFmpegMovie($video_path);

//画像を jpg 形式に変換
$thumbnail = $video ->getFrame(10);
$thumbnail->toJpeg('thumbnail.jpg');

?>

3. ビデオのトランスコーディング

#次のコードを使用してビデオをトランスコードできます:

// ビデオ ファイル パス

$video_path = 'test.mp4';

// トランスコードされたビデオ パス

$new_video_path = 'new_test.mp4';

// ビデオを開く

$video = new FFmpegMovie($video_path );

/ / トランスコーディング

$transcoder = $video->createTranscoderForFormat('mp4');
$transcoder->setVideoCodec('h264');
$transcoder- >setAudioCodec('aac') ;
$transcoder->setAudioChannels(2);
$transcoder->setAudioSampleRate(44100);
$transcoder->setVideoFrameRate(25);
$transcoder->setVideoDimension( 640, 480);
$transcoder->save($new_video_path);
?>

4. ビデオのカット

次のコードを使用してビデオを切り取ることができます:

// ビデオ ファイル パス

$video_path = 'test.mp4';

// ビデオパスをカットした後

$new_video_path = 'new_test.mp4';

// ビデオを開く

$video = new FFmpegMovie($video_path);

/ / Cut

$cutter = $video->createCutter();
$cutter->setStart(10);
$cutter->setDuration(20);
$cutter-> ;setCodec('copy ');
$cutter->save($new_video_path);
?>

5. ビデオの結合

使用できますビデオを結合する次のコード:

// ビデオ ファイル パス

$video_path1 = 'test1.mp4';
$video_path2 = 'test2.mp4 ';

// 結合されたビデオ パス

$new_video_path = 'new_test.mp4';

// ビデオを開く

$video1 = new FFmpegMovie($video_path1);
$video2 = new FFmpegMovie($video_path2);

// マージ

$merger = new FFmpegVideoMerger();
$merger->addVideo($video1);
$merger ->addVideo ($video2);
$merger->save($new_video_path);
?>

概要

上記の内容を学習することで、PHP の ffmpeg 拡張機能をビデオ処理と編集に使用する方法を予備的に理解できます。 ffmpeg は強力なビデオ処理ツールであり、PHP の ffmpeg 拡張機能により、PHP で ffmpeg ツールを便利に使用できるようになります。実際の開発では、ffmpeg 拡張機能を使用して、ユーザーのニーズに合わせて独自のニーズに応じてさまざまなビデオ処理および編集機能を実装できます。

以上がPHP の ffmpeg 拡張機能を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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