AI - media-ffmpeg-使用
media-ffmpeg-使用
因为项目需要用到对媒体处理(其实最好的方式是购买在线服务,但是所有资源又需要使用云厂商的oss资源,干脆暂时由服务器资源来支撑,然后增加异步队列来完成对资源的利用和成本的控制)。
有关在线实时STT(Sound To Text)
这个是采买几家服务,然后用来线路自动切换,但是不同服务商对音频的格式支持方式也不一定全部相同,所以我们再二次对音频统一化处理后,到不同服务商处理前按照格式的要求再一次转换即可。
有关视频自定义水印
有的服务商支持水印,但是功能上可以进行选择有水印和无水印,或者自动控制水印(事实上每次第三方API请求次数都是一次费用成本)。
安装ffmpeg
ubuntu
直接
apt命令行安装1 2 3 4 5
#安装 apt-get install ffmpeg #安装后的版本 ffmpeg -version #out: ffmpeg version 5.1.8-0+deb12u1
指定版本安装
为何要指定版本安装? https://pkg.go.dev/github.com/filipenevs/go-videowatermark#section-readme
如果想使用
github.com/filipenevs/go-videowatermark则对版本有限制。⚠️ Compatibility Notice
This package has been tested and confirmed to work with FFmpeg v6.1.1. It may be compatible with newer versions, but extensive testing has not yet been conducted. If you encounter any issues with newer FFmpeg versions, please open an issue on the repository.
高版本不知道可能发生的情况,建议单元测试。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
sudo apt update sudo apt install build-essential yasm libx264-dev libx265-dev libvpx-dev libfdk-aac-dev libmp3lame-dev libopus-dev libtheora-dev libvorbis-dev libass-dev libwebp-dev libsoxr-dev libxvidcore-dev libx264-164 libx265-175 libvpx6 libmp3lame0 libopus0 libtheora0 libvorbis0a libass9 libwebp7 libsoxr0 libxvidcore4v5 nasm # 下载源码 wget http://ffmpeg.org/releases/ffmpeg-8.0.1.tar.xz tar xvf ffmpeg-8.0.1.tar.xz cd ffmpeg-8.0.1 # 配置设置 ./configure --prefix=/usr/local --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-nonfree make sudo make install ## ffmpeg -version
二进制文件安装方式
因为不同的服务器版本,直接用apt install ffmpeg 安装的版本都是当前服务器版本对应的最高版本,跟其他系统服务器版本不一致。
例如:
ffmpeg -version ffmpeg version 7.1.3-0+deb13u1 Copyright (c) 2000-2025 the FFmpeg developers
在ubuntu上:
ffmpeg -version ffmpeg version 4.4.2-0ubuntu0.22.04.1 Copyright (c) 2000-2021 the FFmpeg developers
版本差异太大了。
直接使用静态编译版本(推荐,最省心)
这是最简单、最省心、最可靠的方案,几分钟就能完成。静态编译版本已经将所有需要的库和编码器(如 libx264、libmp3lame 等)都打包在了一个可执行文件里,可以避免一切编译依赖问题。
请留意,上述链接可能会指向更新的版本。如果你确实需要 FFmpeg 7.1.3,可以试试这个备用下载地址:wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-7.1.3-amd64-static.tar.xz。如果链接失效,建议你访问 John Van Sickle 的 FFmpeg 发布站 获取最新的官方版本。
1
2
3
4
5
6
7
8
9
10
11
wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
cd ffmpeg-7.0.2-amd64-static
cp ffmpeg /usr/bin/
cp ffprobe /usr/bin/
ffmpeg -version
ffmpeg version 7.0.2-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2024 the FFmpeg developers