Maison > développement back-end > Problème PHP > Comment convertir amr en mp3 en php

Comment convertir amr en mp3 en php

藏色散人
Libérer: 2023-03-17 21:46:02
original
4514 Les gens l'ont consulté

Comment convertir amr en mp3 en php : 1. Installez ffmpeg sur le serveur ; 2. Utilisez la commande "ffmpeg -i" pour convertir amr au format mp3. 3. Utilisez la balise audio HTML5 sur la page Web pour lire le format ; fichier mp3.

Comment convertir amr en mp3 en php

L'environnement d'exploitation de ce tutoriel : système Windows 10, PHP version 8.1, ordinateur DELL G3

Comment convertir amr en mp3 avec php ?

PHP Convertir les fichiers audio amr au format mp3

  • Parlons de l'idée générale

1 Installez ffmpeg sur le serveur

2 Utilisez la commande ffmpeg -i pour convertir amr au format mp3. (cela arrivera plus tard) Écrivez-le en code PHP et utilisez la fonction exec pour l'exécuter)

3. Utilisez la balise audio HTML5 pour lire les fichiers mp3 sur la page Web

Voici les détails de l'opération :

1. . Installez ffmpeg sur le serveur, en prenant cenos comme exemple

Référence ici : http://my.oschina.NET/ethan09/blog/372435

Il est à noter que dans la méthode suivante, l'installation d'amrnb est effectuée. et amrwb dans le lien make demandera une URL de 3gp. Généralement, elle ne peut pas être demandée. Vous pouvez utiliser crtl+c pour annuler son processus, et le format peut être converti sans ces deux-là. amr en mp3 dans un environnement Linux, utilisez le premier directement dans Windows. La méthode exe d'encapsulation des packages jar tiers est suffisante, mais elle ne prend pas en charge Linux. Après une exploration en ligne, il a été dit que cela pouvait être réalisé en utilisant ffmpeg. et le plug-in amr Je l'ai essayé selon le tutoriel :

1. Installez d'abord l'environnement de compilation du système

yum install -y automake autoconf libtool gcc gcc-c++  #CentOS
Copier après la connexion

2. Compilez le package de code source requis
#yasm:汇编器,新版本的ffmpeg增加了汇编代码

wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

tar -xzvf yasm-1.3.0.tar.gz

cd yasm-1.3.0

./configure

make

make install



#lame:Mp3音频解码

wget http://jaist.dl.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz

tar -xzvf lame-3.99.5.tar.gz

cd lame-3.99.5

./configure

make

make install



#amr支持

wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.3.tar.gz

tar -xzvf opencore-amr-0.1.3.tar.gz

cd opencore-amr-0.1.3

./configure

make

make install



#amrnb支持

wget http://www.penguin.cz/~utx/ftp/amr/amrnb-11.0.0.0.tar.bz2

tar -xjvf amrnb-11.0.0.0.tar.bz2

cd amrnb-11.0.0.0

./configure

make

make install



#amrwb支持

wget http://www.penguin.cz/~utx/ftp/amr/amrwb-11.0.0.0.tar.bz2

tar -xjvf amrwb-11.0.0.0.tar.bz2

cd amrwb-11.0.0.0

./configure

make

make install



#ffmpeg

wget http://ffmpeg.org/releases/ffmpeg-2.5.3.tar.bz2

tar -xjvf ffmpeg-2.5.3.tar.bz2

cd ffmpeg-2.5.3

./configure --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-shared

make

make install



#加载配置

#最后写入config后,终端运行ffmpeg命令,出现success和已安装的扩展,则运行成功。

ldconfig
Copier après la connexion
3.

Annexe :

Annexe 1. Le répertoire d'installation par défaut de ffmpeg est "/usr/local/lib", et le répertoire du logiciel sous certains systèmes 64 bits est "/usr/lib64", des erreurs similaires telles que "ffmpeg: error while chargement des bibliothèques partagées : libmp3lame.so.0: impossible d'ouvrir le fichier d'objet partagé : Aucun fichier ou répertoire de ce type" ne peut se produire pendant le processus de compilation. La solution consiste à établir un lien logiciel:

# ln -s /usr/local/lib/ libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so.0

Annexe 2. Si l'invite suivante apparaît : ffmpeg : erreur lors du chargement des bibliothèques partagées : libavdevice so.54 : impossible d'ouvrir le fichier objet partagé : rien de tel. fichier ou répertoire
Vous pouvez vérifier quelles bibliothèques de liens dynamiques de ffmpeg n'ont pas été trouvées de la manière suivante :

ffmpeg -i 1.mp3 -ac 1 -ar 8000 1.amr  #MP3转换AMR
ffmpeg -i 1.amr 1.mp3                 #AMR转换MP3
Copier après la connexion

À propos de ffmpeg :

FFmpeg est un logiciel vidéo et audio multiplateforme gratuit et open source. La solution de streaming est un logiciel gratuit, sous licence la LGPL ou la GPL (selon le composant que vous choisissez). Il fournit une solution complète pour l'enregistrement, la conversion et le streaming audio et vidéo. Il contient la bibliothèque de codecs audio/vidéo très avancée libavcodec Afin de garantir une portabilité et une qualité de codec élevées, de nombreux codecs de libavcodec ont été développés à partir de zéro. Son site officiel est : http://www.ffmpeg.org

Enfin, une partie du contenu peut être trouvée sur http://linux.it.Net.cn/e/Linuxit/2014/0828/3980.html

2. Utilisez la commande ffmpeg

Après avoir terminé la première étape, vous pouvez utiliser ffmpeg --help pour voir s'il est correctement installé. Sinon, veuillez vérifier si vous avez oublié de faire install

La commande de conversion est ffmpeg -. i 1. amr 2.mp3

convertira 1.amr en 2.mp3

3 Utilisez php pour exécuter la commande Linux ffmpeg

Bien sûr, vous ne pouvez pas convertir le fichier en exécutant la commande Linux dans le fichier. Nous utilisons donc php pour exécuter les instructions Linux pour traiter les fichiers amr

Utilisez la fonction exec pour exécuter

ldd `which ffmpeg`

        libavdevice.so.54 => not found

        libavfilter.so.3 => not found

        libavformat.so.54 => not found

        libavcodec.so.54 => not found

        libswresample.so.0 => not found

        libswscale.so.2 => not found

        libavutil.so.51 => not found

        libm.so.6 => /lib64/libm.so.6 (0x00002ab7c0eb6000)

        libpthread.so.0 => /lib64/libpthread.so.0 (0x00002ab7c100b000)

        libc.so.6 => /lib64/libc.so.6 (0x00002ab7c1125000)

        /lib64/ld-linux-x86-64.so.2 (0x00002ab7c0d9a000)

#如果类似于上面的输出内容,查找以上类库,会发现全部在/usr/local/lib/下

find /usr/local/lib/ | grep -E "libavdevice.so.54|libavfilter.so.3|libavcodec.so.54"

/usr/local/lib/libavfilter.so.3.17.100

/usr/local/lib/libavcodec.so.54.59.100

/usr/local/lib/libavdevice.so.54

/usr/local/lib/libavcodec.so.54

/usr/local/lib/libavfilter.so.3

/usr/local/lib/libavdevice.so.54.2.101



#查看链接库配置文件

more  /etc/ld.so.conf | grep /usr/local/lib

#如果不包含的话,需要编辑此文添加:

vi /etc/ld.so.conf

/usr/local/lib

/usr/local/lib64

#运行配置命令

ldconfig
Copier après la connexion
Regardez attentivement le code, j'utilise /usr/local/bin/ffmpeg pour l'exécuter, car j'utilise php You ne peut pas exécuter la commande ffmpeg directement. Si votre commande ne se trouve pas dans ce répertoire, vous pouvez utiliser Locate ou Find pour trouver le répertoire où se trouve ffmpeg Apprentissage recommandé : "

Tutoriel vidéo PHP

"

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal