현재 위치: > 최신 기사 목록> PHP 오디오 데이터 처리 기능의 자세한 설명 및 실제 예제

PHP 오디오 데이터 처리 기능의 자세한 설명 및 실제 예제

M66 2025-07-26

PHP에서 오디오 데이터를 처리하는 방법

PHP는 개발자가 오디오 데이터를 쉽게 처리하고 조작하는 데 도움이되는 풍부한 기능 라이브러리를 제공합니다. 이 기사는 PHP의 오디오 데이터 처리와 관련된 기능을 설명하고 코드 예제를 결합하여 특정 응용 프로그램 방법을 보여줍니다.

PHP GD 라이브러리를 설치하십시오

GD 라이브러리는 PHP에서 일반적으로 사용되는 이미지 처리 확장이며 오디오 데이터의 시각적 처리도 지원합니다. 시작하기 전에 라이브러리가 환경에 설치되어 있는지 확인하십시오. 설치 명령은 다음과 같습니다.

 <span class="fun">sudo apt-get 설치 php-gd</span>

일반적인 이미지 처리 기능 소개

오디오 데이터를 처리 할 때 일반적으로 이미지 작동 기능과 함께 시각화가 달성됩니다. 다음 기능은 일반적으로 이미지 처리 도구입니다.

오디오 데이터와 관련된 이미지 그리기 기능

  • imageColorAllocate () : 이미지에 색상을 할당하십시오.
  • ImagesEtpixel () : 지정된 좌표에서 픽셀 색상을 설정합니다.
  • Imageline () : 라인 세그먼트를 그리십시오.
  • ImageFilledRectangle () : 채우기 사각형을 그립니다.

실제 예 : 색상 오디오 스펙트럼 다이어그램을 생성합니다

다음 예제는 오디오 파일을 읽고 샘플링 된 데이터를 색상 스펙트럼으로 제시하는 방법을 보여줍니다.

 <?php
// 오디오 파일을 엽니 다
$audio_file = 'audio.wav';
$handle = fopen($audio_file, 'rb');

// 파일 헤더를 읽습니다
$header = fread($handle, 44);

// 샘플링 속도와 샘플링 깊이를 얻으십시오
$samplerate = unpack('V', substr($header, 24, 4))[1];
$bitdepth = unpack('v', substr($header, 34, 2))[1];

// 오디오 데이터를 읽습니다
$data = fread($handle, filesize($audio_file) - 44);

// 이미지 리소스를 만듭니다,너비는 오디오 길이와 일치합니다
$image = imagecreatetruecolor(imagesx($image), $samplerate);

// 오디오 데이터를 그립니다
for($i=0; $i < imagesy($image); $i++) {
  for($j=0; $j < imagesx($image); $j++) {
    // 샘플 값을 계산하십시오
    $sample = unpack('S', substr($data, ($i * $j)*2, 2))[1];
    // 색상을 할당합니다
    $color = imagecolorallocate($image, abs($sample)*255, 0, 0);
    // 픽셀 색상을 설정하십시오
    imagesetpixel($image, $j, $i, $color);
  }
}

// 생성 된 스펙트럼 맵을 다음과 같이 저장하십시오 PNG 문서
imagepng($image, 'audio_spectrum.png');

// 关闭문서句柄
fclose($handle);
?>

요약

PHP의 이미지 및 오디오 처리 기능을 사용하면 오디오 파일을 효과적으로 구문 분석하고 시각화 할 수 있습니다. 위의 예는 이러한 기능을 결합하여 컬러 오디오 스펙트로 그램을 생성하여 오디오 데이터를보다 직관적으로 분석하는 방법을 보여줍니다.