首页 > 编程语言 >php如何实现amr转成mp3

php如何实现amr转成mp3

时间:2024-06-23 20:21:15浏览次数:25  
标签:php ffmpeg tar make mp3 install amr

php实现amr转成mp3的方法:1、在服务器安装ffmpeg;2、使用“ffmpeg -i”指令来转换amr为mp3格式;3、在网页端使用html5的audio标签来播放mp3文件即可。

思路

  1. 服务器安装ffmpeg
  2. 使用ffmpeg -i 指令来转换amr为mp3格式(这个到时候写在PHP代码中,使用exec函数执行即可)

一、服务器安装ffmpeg以cenos为例

https://www.cnblogs.com/wt645631686/p/18263826

1. 首先安装系统编译环境

yum install -y automake autoconf libtool gcc gcc-c++  #CentOS

2. 编译所需源码包

#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

3.使用方法

ffmpeg -i 1.mp3 -ac 1 -ar 8000 1.amr  #MP3转换AMR
ffmpeg -i 1.amr 1.mp3                 #AMR转换MP3

 

php使用案例

$root_path = root_path();
$conversion_fileUrl = str_replace('amr','mp3',$fileUrl);
$shell_exec      = "ffmpeg -i {$root_path}public/{$fileUrl} {$root_path}public/{$conversion_fileUrl}";
shell_exec($shell_exec);
$fileUrl = $conversion_fileUrl;

 

标签:php,ffmpeg,tar,make,mp3,install,amr
From: https://www.cnblogs.com/wt645631686/p/18263858

相关文章

  • PHP的最新版本是什么?它引入了哪些新特性?
    PHP(全称:PHP:HypertextPreprocessor,即"PHP:超文本预处理器")是一种通用开源脚本语言,主要用于服务器端编程。它在服务器上执行,能够生成动态页面内容、处理表单数据、发送和接收Cookies、操作数据库等。PHP语法借鉴了C语言,并吸纳了Java和Perl的特色,发展出自己的独特语法。此外,PHP也......
  • 函数在PHP中是如何定义和使用的?
    在PHP中,函数的定义和使用是编程中的重要概念。以下是详细的解释:函数的定义1:关键字:PHP函数通过使用function关键字来定义。2:语法结构:function 关键字。函数名称(必须是唯一的,不能与内置函数或其他自定义函数重名)。参数列表(用圆括号括起来),可以包含零个或多个参数。函数体(用花......
  • 深入PHP框架开发:实现高效的日志记录系统
    在软件工程中,日志记录是一种记录程序运行时发生事件的实践,它对于调试、监控和安全分析至关重要。PHP框架提供了多种方式来实现日志记录,这些方式可以帮助开发者捕获和存储关键信息。本文将详细探讨在PHP框架中实现日志记录的不同策略和技术。日志记录的基本概念在深入探讨......
  • PHP基础之错误与异常
    目录1错误1.1简介1.2简单错误处理1.2.1使用die1.2.2die和exit区别1.3自定义错误处理1.3.1定义1.3.2创建错误函数1.4触发错误1.5抑制错误1.5.1行内错误抑制2异常2.1引言2.2什么是异常2.3Try、throw、catch、finally2.4自定义异常2.5设置顶层异常处理器3错误与异......
  • PHP环境搭建之使用PhpStudy
    目录1PhpStudy1.1简介1.2下载&安装1.3修改配置1.3.1Apache配置1.3.2MySQL配置1.3.3MySQL启动问题1.4Composer1.4.1简介1.4.2下载安装1.4.3修改配置1.4.4使用命令1PhpStudy1.1简介phpstudy是一个php运行环境的集成包,用户不需要去配置运行环境,就可以使用,phpstudy不......
  • PHP基础之过滤器讲解
    目录1过滤器1.1简介1.2函数和过滤器1.2.1方法说明1.2.2filter_var示例1.2.3filter_input示例1.2.4filter_var_array和filter_input_array示例1.3自定义过滤器1.4PHPFilter函数1过滤器PHP过滤器用于验证和过滤来自非安全来源的数据,比如用户的输入。1.1简介PHP过......
  • JetBrains PhpStorm 2024 mac/win版:探索PHP之美,智慧编程新境界
    JetBrainsPhpStorm2024是一款卓越的PHP集成开发环境(IDE),专为满足现代PHP开发者的需求而精心打造。它凭借强大的功能和出色的性能,赢得了全球开发者的广泛赞誉。PhpStorm2024mac/win版获取PhpStorm2024提供了智能的代码编辑功能,包括自动补全、语法高亮、代码重构等,使得编写......
  • php8开启jit
    JIT时php8的重要功能之一,可以极大的提高性能;JIT编译器集成在了Opcache插件中,仅在启动Opcache插件才有效Opcache将PHP脚本编译后的字节码存储到内存中,以避免每次执行脚本时重新解析和编译,从而提高PHP应用程序的性能和响应速度。 Opcache开启:编辑php.ini文件,将zend_exten......
  • php+sql后台实现从主表迁出至副表(数据超万条)
    上万条甚至上百万数据进行迁出做备份或者进行不妨碍原系统数据的操作,现在很多企业都会用到,目前就需要将上百万条数据进行迁出到副表保存并操作,直接再后台写一个按钮进行操作,既方便操作也不会很慢。毕竟是客户需要,不能每次迁出都要客户去数据库操作,操作的不好那数据危险度挺高的。......
  • Ubuntu 24.04 编译 PHP 8.0
    PKG_CONFIG_PATH=/usr/local/openssl111w/lib/pkgconfigOPENSSL_CONF=/usr/local/openssl111w/ssl/openssl.cnf./configure--prefix=/usr/local/php80--enable-fpm--with-fpm-user=www-data--with-fpm-group=www-data--enable-phpdbg--disable-short-tags--wit......