码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Linux简单安装ffmpeg 实现用PHP压缩音频


    一、下载安装

    1、官方下载地址:Download FFmpeg

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

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

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

    1. cd /usr/bin
    2. 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命令压缩音频

    1. 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);
    2. 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的参数说明 可以自行搜索查阅.

  • 相关阅读:
    安装pika配置系统服务过程中遇到的错误
    自己选和被安排
    dataframe保存excel格式比csv格式小很多很多
    centos8 Error: Failed to download metadata for repo ‘appstream‘
    HTTP 到 HTTPS 再到 HSTS 的转变
    05-RDD五大特性
    2500家门店倒闭:实体店败给电商已成定局?
    ubuntu服务器上java和tomcat等服务的日志时间不正确
    什么是粘包和拆包,Netty如何解决粘包拆包?
    进程调度算法之先来先服务(FCFS),短作业优先(SJF)以及高响应比优先(HRRN)
  • 原文地址:https://blog.csdn.net/my476530/article/details/133947609
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号