>  기사  >  백엔드 개발  >  PHP의 FFmpeg 작업 가이드

PHP의 FFmpeg 작업 가이드

王林
王林원래의
2023-05-21 08:46:355155검색

FFmpeg는 트랜스코딩, 편집, 자르기, 병합, 가속, 볼륨 조정 및 기타 기능에 사용할 수 있는 명령줄 기반 오디오 및 비디오 처리 도구로 멀티미디어 분야에서 널리 사용됩니다. PHP에서는 FFmpeg의 명령줄 매개변수를 호출하여 오디오 및 비디오 처리 기능을 구현할 수도 있습니다. 이 기사에서는 FFmpeg를 사용하여 PHP에서 오디오 및 비디오를 작동하는 방법을 소개합니다.

1. FFmpeg 확장 설치
PHP에서 FFmpeg를 사용하려면 먼저 FFmpeg 확장을 설치해야 합니다. 설치할 터미널에 다음 명령을 입력할 수 있습니다.

sudo apt-get install ffmpeg
sudo apt-get install php-ffmpeg

설치가 완료된 후 php.ini 파일을 수정하고 확장 아래의 ffmpeg.so에서 주석 기호를 제거해야 합니다.

sudo nano /etc/php/7.2/apache2/php.ini

다음 코드 세그먼트를 찾으세요.

;extension=bcmath.so
;extension=bz2.so
;extension=ctype.so
;extension=calendar.so
;extension=dba.so
;extension=exif.so
;extension=ftp.so
;extension=gettext.so
;extension=iconv.so
;extension=json.so
;extension=mysqli.so
;extension=pdo_mysql.so
;extension=shmop.so
;extension=sockets.so
;extension=sqlite3.so
;extension=sysvmsg.so
;extension=sysvsem.so
;extension=sysvshm.so
;extension=xmlrpc.so

extension=ffmpeg.so에서 주석 기호 ";"를 제거하세요.

설치가 완료된 후 다음 코드를 사용하여 설치 성공 여부를 테스트할 수 있습니다.

<?php
  if(extension_loaded('ffmpeg')) {
    echo 'FFmpeg扩展已安装';
  } else {
    echo '请确认是否安装FFmpeg扩展';
  }
?>

2. FFmpeg 사용
FFmpeg의 기본 기능은 다양한 형식의 오디오 및 비디오 파일을 오디오 및 비디오 파일로 변환하는 것입니다. 다음은 몇 가지 간단한 사용법입니다. 예:

  1. mp4를 avi 형식으로 변환
    명령줄에 다음 명령을 입력하세요.
ffmpeg -i input.mp4 output.avi

PHP에서는 exec() 함수를 사용하여 명령줄 매개변수를 실행할 수 있습니다. :

<?php
  exec('ffmpeg -i input.mp4 output.avi');
?>
  1. 비디오 자르기
    다음 명령은 원본을 변환할 수 있습니다. 비디오의 처음 5초 부분을 잘라냅니다.
ffmpeg -ss 00:00:00 -t 00:00:05 -i input.mp4 output.mp4

PHP에서:

<?php
  exec('ffmpeg -ss 00:00:00 -t 00:00:05 -i input.mp4 output.mp4');
?>
  1. 비디오 연결
    다음 명령은 두 개의 비디오 파일을 하나로 병합할 수 있습니다. :
ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex "concat=n=2:v=1:a=1" output.mp4

PHP에서:

  1. 비디오 크기 조정
    다음 명령은 비디오 크기를 1366*768로 조정할 수 있습니다:
ffmpeg -i input.mp4 -vf scale=1366:768 output.mp4

PHP에서:

<?php
  exec('ffmpeg -i input.mp4 -vf scale=1366:768 output.mp4');
?>
  1. 볼륨 조정
    다음 명령은 볼륨을 줄일 수 있습니다. 반씩:
ffmpeg -i input.mp4 -af "volume=0.5" output.mp4

PHP:

FFmpeg 또한 공식 문서를 통해 배울 수 있는 고급 기능이 있습니다: https://www.ffmpeg.org/documentation.html

3 보안 위험을 피하세요.
exec() 함수는 명령줄 매개변수를 실행하므로 보안 문제가 발생할 수 있습니다. 주입 공격과 같은 위험이 있습니다. 이러한 위험을 방지하기 위해 다음 방법을 채택할 수 있습니다.

  1. 사용자 입력을 엄격하게 필터링하고 확인하여 입력된 매개변수에 악성 코드가 포함되어 있지 않은지 확인합니다.
  2. escapeshellarg() 함수를 사용하여 매개변수를 이스케이프하면 특수 문자가 명령줄 코드로 오인되는 것을 방지할 수 있습니다.
  3. exec 함수가 외부 명령을 실행하는 것을 금지하려면 safe_mode를 사용하세요.

즉, 웹사이트와 서버에 대한 위험을 피하기 위해 FFmpeg를 사용할 때 보안 문제를 신중하게 고려해야 합니다.

IV. 요약
이 기사에서는 FFmpeg 확장 설치, FFmpeg를 사용하여 오디오 및 비디오 변환, 자르기, 연결, 크기 조정, 볼륨 조정 및 기타 기능을 포함하여 PHP에서 FFmpeg를 사용하는 기본 작업을 소개하고 보안을 피하기 위한 제안을 제공합니다. 위험. 이 글이 PHP에서 FFmpeg를 사용하려는 독자들에게 도움이 되기를 바랍니다.

위 내용은 PHP의 FFmpeg 작업 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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