GB28181: 使用ffmpeg编码h264为ps流

先说结论:

不建议使用ffmpeg作为ps流编码器,

使用ffmpeg编码ps,可用,但不可控,存在隐性风险

  • 不会自动插入 AUD
  • 不保证 SPS/PPS 重复

而很多 GB28181 平台要求:

bash 复制代码
  1、关键帧的封装 PS header + PS system header + PS system Map + PES header +h264 data
  2、非关键帧的封装 PS header + PES header + h264 data

而且在

  • 每个 IDR 前有 SPS/PPS
  • 最好有 AUD

我这里使用ffmpeg编码一段本地的H264文件,生成的ps文件,第一帧是:

bash 复制代码
PS header + PS system header + es

没有PS system Map + PES header

后面的就全是:

bash 复制代码
 PS header +  es

没有 PS system header + PS system Map + PES header

相关推荐
程序员老陆2 小时前
从零写一个 FFmpeg 播放器:架构设计远比“解码显示”复杂
ffmpeg·音视频·播放器
程序员老陆11 小时前
FFmpeg 硬解在 Linux 上:从“能跑”到“跑满 GPU”的实战笔记
linux·笔记·ffmpeg
≮傷£≯√1 天前
移植ffmpeg 到 GEC6818
ffmpeg
海带紫菜菠萝汤2 天前
FFmpeg.wasm 实践:在浏览器中运行 FFmpeg 的能力边界与性能瓶颈
前端·javascript·ffmpeg·音视频·wasm
程序员老陆3 天前
FFmpeg6的滤镜函数解析
ffmpeg·音视频·avfilter
看浪的路人3 天前
第10讲:Python 调用 FFmpeg 批量处理——打造你的视频处理工具箱
python·ffmpeg·音视频
程序员老陆4 天前
FFmpeg 时间戳全解:从 av_rescale_q 到时间基黑洞
ffmpeg·音视频·时间基
水獭比特4 天前
自动成片没报错,为什么音画还会漂?
ffmpeg
Yeauty4 天前
2026 年在 Rust 里处理音视频,该走哪条路?
rust·ffmpeg·音视频·视频
勿忘初心12215 天前
【Windows流媒体实战1】FFmpeg+Nginx-RTMP Windows详细搭建教程
ffmpeg·nginx-rtmp·windows流媒体搭建·rtmp直播