当前位置: 首页 > article >正文

Linux简单安装ffmpeg 实现用PHP压缩音频

一、下载安装

1、官方下载地址:Download FFmpeg

2、下载完上传到服务器然 然后解压就算安装完成了

tar -xf ffmpeg-git-amd64-static.tar.xz

3、然后配置一下全局变量(当然也可以不用配置 使用的时候带上文件路径就行)

cd /usr/bin
ln -s /root/ffmpeg-git-20231006-amd64-static/ffmpeg ffmpeg

 

 二、在PHP中用exec()函数运行ffmpeg命令处理音频

1、php.ini中exec()函数禁用去掉 保存 重启php

2、需要给执行命令用户设置权限 找到/etc/sudoers 这个文件 添加一行

比如给www用户添加权限 大概意思就是 www用户用exec()函数执行命令 不需要验证密码

www ALL=(ALL)  NOPASSWD: ALL

 3、php中执行ffmpeg命令压缩音频

exec('sudo ffmpeg -i /www/wwwroot/test.com/public/uploads/media/20231019/efce4e11df5a332a70c00b3edb430bde.mp3 -b:a 69k -y /www/wwwroot/test.com/public/uploads/media/20231019/efce4e11df5a332a70c00b3edb430bde_2.mp3 2>&1',$log,$status);
var_dump($log,$status);

命令参数简单解释:

exec('sudo (使用有权限的用户去执行命令)

ffmpeg -i   (指定要转换的音频文件)

/www/wwwroot/test.com/public/uploads/media/20231019/efce4e11df5a332a70c00b3edb430bde.mp3 (被转换的音频文件全路径)

-b:a 69k  (指定要被转换成的比特率 一半语音聊天的音频大概是 128k 所以69k差不多是压缩了一倍 这个我不懂 我测试的结果大概是这样)

-y (生成后的文件有相同名字覆盖掉)

/www/wwwroot/test.com/public/uploads/media/20231019/efce4e11df5a332a70c00b3edb430bde_2.mp3  (生成后的文件存放全路径)

2>&1  (加上这个后 如果执行没成功 会有提示原因)',

$log(执行结果记录),

$status(执行返回状态 0 表示执行成功));

三、完成(一定按照步骤来是能转换成功的)

关于ffmpeg的参数说明 可以自行搜索查阅.


http://www.kler.cn/a/103647.html

相关文章:

  • 使用jdbc技术连接数据库
  • 2023中国物流系统集成商百强榜研究报告(附下载)
  • 论文-分布式-并发控制-Lamport逻辑时钟
  • 深度学习使用Keras进行迁移学习提升网络性能
  • Linux 内核定时器(高级字符设备五)
  • 【STM32】标准库的引入
  • 网站、小程序常见布局样式记录
  • ESP32网络开发实例-使用NTP获取当前时间
  • C# 串口通信简单示例
  • Linux友人帐之日志与备份
  • 《动手学深度学习 Pytorch版》 10.2 注意力汇聚:Nadaraya-Watson 核回归
  • python集合
  • CentOS 系统安装和使用Docker服务
  • 【单元测试】--维护和改进单元测试
  • GIS 数据结构BSP树
  • 如何在 Bash 脚本中添加注释
  • 新成果展示:AlGaN/GaN基紫外光电晶体管的设计与制备
  • SylixOS BSP开发(八)
  • uniapp: 本应用使用HBuilderX x.x.xx 或对应的cli版本编译,而手机端SDK版本是 x.x.xx。不匹配的版本可能造成应用异常。
  • 模拟 Junit 框架