>  기사  >  백엔드 개발  >  PHP를 사용하여 비디오 파일을 MP4 형식으로 변환하는 방법

PHP를 사용하여 비디오 파일을 MP4 형식으로 변환하는 방법

PHPz
PHPz원래의
2023-04-10 09:43:3411269검색

PHP는 웹 사이트 개발 및 동적 웹 페이지 생성에 일반적으로 사용되는 스크립트 언어입니다. 그러나 Php를 비디오 변환에도 사용할 수 있습니다. 이 기사에서는 PHP를 사용하여 비디오 파일을 MP4 형식으로 변환하는 방법을 알아봅니다.

먼저 몇 가지 개념을 이해해야 합니다. 비디오 파일은 여러 프레임으로 구성되며, 각 프레임은 비디오 샘플링 순간을 나타냅니다. 이러한 프레임은 특정 순서로 압축되어 특수 형식의 파일에 저장됩니다. 비디오 파일 변환에는 주로 이러한 프레임을 디코딩하고 편집한 다음 새로운 형식으로 다시 인코딩하는 프로세스가 포함됩니다.

비디오 변환을 수행하려면 FFmpeg와 FFprobe라는 두 개의 PHP 라이브러리를 사용해야 합니다. FFmpeg는 오디오 및 비디오 처리를 위한 오픈 소스 라이브러리로 비디오 디코딩, 편집 및 인코딩을 위한 다양한 기능을 제공합니다. FFprobe는 비디오 파일을 감지하고 정보를 추출하는 데 사용되는 도구입니다.

이 두 라이브러리를 사용하려면 서버에 설치해야 합니다. 일반적으로 Linux 시스템의 명령줄 인터페이스를 사용해야 합니다.

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

설치가 완료된 후 PHP를 사용하여 이 두 라이브러리를 호출하여 비디오 변환 작업을 수행할 수 있습니다. 다음은 비디오 파일을 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의 위치를 ​​지정하기 위해 $ffmpeg_command와 $ffprobe_command라는 두 개의 변수를 정의했습니다. 다음으로 입력 및 출력 파일의 이름과 출력 파일(MP4)의 형식을 지정합니다.

다음 단계에서는 FFprobe를 사용하여 입력 비디오 파일의 지속 시간을 가져옵니다. 시스템 명령을 사용하여 FFprobe를 실행하고 -exec() 함수를 통해 명령을 실행하고 출력을 캡처합니다. FFmpeg에서 얻은 지속 시간 값은 $duration 변수에 저장됩니다.

마지막으로 실제 동영상 변환에는 FFmpeg를 사용합니다. 입력 및 출력 파일의 이름을 지정하고 -h264 인코더와 -mp3 오디오 인코더를 사용했습니다. 길이를 비디오 길이로 설정하고 -fast 사전 설정을 사용하여 변환 속도를 높였습니다. 또한 변환 중에 최신 코덱이 사용되도록 -strict 실험 옵션을 지정했습니다.

이렇게 FFmpeg와 FFprobe를 사용하면 비디오 파일을 거의 모든 형식으로 변환하고 다양한 편집 작업을 수행할 수 있습니다. 이는 PHP를 오디오 및 비디오 편집 및 처리 응용 프로그램을 위한 매우 강력한 플랫폼으로 만듭니다.

위 내용은 PHP를 사용하여 비디오 파일을 MP4 형식으로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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