Maison  >  Article  >  développement back-end  >  Comment réaliser la fonction d'extraction automatique de piste audio de mpg en php

Comment réaliser la fonction d'extraction automatique de piste audio de mpg en php

PHPz
PHPzoriginal
2023-04-25 17:35:33657parcourir

MPG est un format vidéo courant, et la piste audio est également très importante. Pour le montage et le traitement vidéo, il est souvent nécessaire de séparer les pistes audio pour un traitement séparé. Ce processus prend du temps à opérer manuellement, donc PHP peut être utilisé pour extraire automatiquement des pistes audio afin d'améliorer l'efficacité du traitement.

En PHP, vous pouvez utiliser FFmpeg pour extraire des pistes audio directement à partir de fichiers MPG. FFmpeg est un logiciel gratuit, une collection de bibliothèques de traitement de flux audio et vidéo et d'outils associés. Nous pouvons appeler FFmpeg en utilisant la ligne de commande dans les systèmes Linux, mais un meilleur moyen consiste à utiliser la bibliothèque d'extensions FFmpeg en PHP.

Tout d'abord, vous devez installer FFmpeg dans l'environnement serveur et la bibliothèque d'extensions FFmpeg en PHP. Une fois l'installation terminée, nous pouvons utiliser le code PHP suivant pour extraire la piste audio :

<?php
$video = "video.mpg";
$output = "audio.mp3";
 
// 设置FFmpeg路径
$ffmpeg = "/usr/bin/ffmpeg";
 
// 获取音轨信息
$cmd = "$ffmpeg -i $video 2>&1";
 
$output = shell_exec($cmd);
preg_match('/Stream.*: Audio/', $output, $matches);
if(!$matches) {
    die('找不到音轨');
}
 
// 提取音轨
$cmd = "$ffmpeg -i $video -vn -acodec copy $output";
exec($cmd);
 
echo "音轨提取成功";
?>

Dans le code ci-dessus, les variables $video et $output représentent respectivement le chemin du fichier vidéo d'origine et le chemin du fichier de la piste audio extrait. En appelant FFmpeg, vous pouvez obtenir les informations sur la piste audio dans le fichier vidéo. Si la piste audio n'est pas trouvée, le programme cessera de s'exécuter. Si la piste audio est trouvée, appelez à nouveau FFmpeg pour extraire la piste audio, et la piste audio extraite sera enregistrée dans le chemin $output au format MP3. Le résultat final est « Extraction de la piste audio réussie ».

Dans les applications réelles, si vous devez traiter plusieurs fichiers vidéo par lots, vous pouvez légèrement modifier le code ci-dessus pour obtenir des fonctions telles que la traversée automatique des répertoires et l'extraction des pistes audio de toutes les vidéos MPG.

En résumé, PHP doit utiliser la bibliothèque d'extension FFmpeg pour implémenter la fonction d'extraction automatique des pistes audio de MPG. En appelant FFmpeg pour l'extraction et le traitement des pistes audio, l'efficacité du traitement peut être considérablement améliorée et la fonction de séparation des pistes audio rapide et précise peut être obtenue.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn