Ubuntu 20.04 下**安装 FFmpeg 5.1

下面是在 Ubuntu 20.04 下安装 FFmpeg 5.1 的完整步骤,特别针对你想用于读取 MP4 文件中的 H.264 视频数据与编码元数据的场景。包括添加官方源或源码编译、自定义常用依赖、检测安装,以及如何调用 FFmpeg 读取元数据信息的实际用法。


一、先卸载系统旧版 FFmpeg(如已装)

sudo apt-get remove ffmpeg
sudo apt-get autoremove

二、安装依赖库

FFmpeg 编译和功能常用的依赖:

sudo apt-get update
sudo apt-get install \
  autoconf automake build-essential cmake git-core libtool \
  pkg-config texinfo zlib1g-dev libssl-dev \
  libx264-dev libx265-dev libnuma-dev libfdk-aac-dev \
  libmp3lame-dev libopus-dev libvpx-dev libass-dev \
  libfreetype6-dev libsdl2-dev yasm

这些确保 h264 等常用编解码可用。


三、下载安装 FFmpeg 5.1 源码

cd ~
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
git checkout n5.1 # 切换到5.1版本分支

四、配置和编译 FFmpeg

./configure --prefix="$HOME/ffmpeg-5.1-build" \
  --enable-gpl --enable-nonfree --enable-libx264 --enable-libx265 \
  --enable-libfdk-aac --enable-libmp3lame --enable-libopus \
  --enable-libvpx --enable-libass --enable-libfreetype \
  --enable-shared
make -j$(nproc)
make install

说明:

  • --enable-gpl --enable-nonfree 让 FFmpeg 支持 GPL/LGPL 和非自由库。
  • --enable-libx264 等是为 h264 编解码准备。
  • --prefix 指定安装目录,不会覆盖系统 FFmpeg。

五、配置环境变量

echo 'export PATH="$HOME/ffmpeg-5.1-build/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

确认新版本已安装:

ffmpeg -version   # 应输出5.1.X

六、使用 FFmpeg 获取 MP4 的 H.264 数据和元数据

1. 获取文件元数据(编码信息等):

ffprobe -v error -select_streams v:0 -show_entries stream=codec_name,codec_type,codec_tag_string,profile,width,height,r_frame_rate,avg_frame_rate -of default=noprint_wrappers=1 demo.mp4

返回类似于:

codec_name=h264
codec_type=video
profile=High
width=1920
height=1080
r_frame_rate=25/1
avg_frame_rate=25/1

2. 提取裸流(h264码流):

ffmpeg -i demo.mp4 -an -c:v copy -bsf:v h264_mp4toannexb output.h264
  • -an:去音频
  • -c:v copy:不转码,直接拷贝
  • -bsf:v h264_mp4toannexb:把 MP4 的 H.264 样本转成裸流 annexb 格式

七、其它建议

  • 推荐源码安装,因 Ubuntu 官方仓库一般没有 5.1 这么新。

  • 可用 ffprobe 直接提取所有元数据,支持 json 输出(方便程序解析)

    ffprobe -v quiet -print_format json -show_streams demo.mp4
    

总结

  1. 卸载旧版,安装依赖
  2. 编译安装 FFmpeg 5.1
  3. 配置环境变量
  4. 使用 ffprobe 提取元数据,ffmpeg 提取裸 h264 流
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值