>백엔드 개발 >PHP 튜토리얼 >PHP의 ffmpeg 확장을 사용하는 방법은 무엇입니까?

PHP의 ffmpeg 확장을 사용하는 방법은 무엇입니까?

WBOY
WBOY원래의
2023-06-01 09:31:353518검색

PHP의 ffmpeg 확장을 사용하는 방법은 무엇입니까?

인터넷의 발달과 영상 기술의 지속적인 발전으로 영상은 우리 삶에서 점점 더 중요한 역할을 하고 있습니다. 그러나 현재 비디오 처리 및 편집에 대한 수요도 증가하고 있으며, 이로 인해 작업을 완료하는 데 도움이 되는 몇 가지 전문적인 도구를 사용해야 합니다. 그중 ffmpeg는 매우 인기 있는 비디오 처리 도구로 다양한 비디오 코덱 형식을 지원하며 비디오 편집, 자르기, 트랜스코딩 및 기타 작업을 수행할 수 있습니다. PHP의 ffmpeg 확장은 비디오 처리 및 편집에 ffmpeg를 사용하는 편리한 방법을 제공합니다.

이 기사에서는 모든 사람이 이 도구를 더 잘 익힐 수 있도록 PHP의 ffmpeg 확장을 사용하는 방법을 소개합니다.

1. ffmpeg 확장 설치

PHP용 ffmpeg 확장을 사용하기 전에 먼저 설치해야 합니다.

1. ffmpeg 소스 코드 다운로드

https://www.ffmpeg.org/download.html에서 최신 ffmpeg 소스 코드를 다운로드할 수 있습니다.

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 ffmpeg를 설치한 후 ffmpeg 확장을 설치할 수 있습니다. pecl을 사용하여 ffmpeg 확장을 설치할 수 있습니다:

sudo pecl install ffmpeg

명령이 실행된 후 ffmpeg 확장을 PHP 구성 파일에 추가해야 합니다:

echo "extension=ffmpeg.so" | /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. 동영상의 기본 정보 가져오기

다음 코드를 사용하여 동영상의 기본 정보를 가져올 수 있습니다.

// 동영상 파일 경로

$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. 비디오 트랜스코딩

다음 코드를 사용하여 비디오를 트랜스코딩할 수 있습니다:

// 비디오 파일 path

$video_path = 'test.mp4';

// 트랜스코딩된 비디오 경로

$new_video_path = 'new_test.mp4';

// 비디오 열기

$video = new FFmpegMovie($video_path)// Transcode

$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);

// 잘라내기

$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 = 새 FFmpegVideoMerger();

$merger->addVideo($video1);

$merger->addVideo($video2);
$merger->save($new_video_path);

? >

요약

위 내용을 학습하면 비디오 처리 및 편집을 위해 PHP의 ffmpeg 확장을 사용하는 방법에 대한 예비 이해를 얻을 수 있습니다. ffmpeg는 강력한 비디오 처리 도구이며, PHP의 ffmpeg 확장을 사용하면 PHP에서 ffmpeg 도구를 편리하게 사용할 수 있습니다. 실제 개발에서는 ffmpeg 확장을 사용하여 사용자 요구 사항을 충족하기 위해 자체 요구 사항에 따라 다양한 비디오 처리 및 편집 기능을 구현할 수 있습니다.

위 내용은 PHP의 ffmpeg 확장을 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.