前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FFmpeg里的Bitstream Filter

FFmpeg里的Bitstream Filter

作者头像
望天
发布2019-10-22 19:47:55
1.8K0
发布2019-10-22 19:47:55
举报
文章被收录于专栏:along的开发之旅along的开发之旅

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/u201011221/article/details/101759594

Bitstream Filter

Bitstream Filter: A bitstream filter operates on the encoded stream data, and performs bitstream level modifications without performing decoding.

  1. 比特流滤波器作用在编码后的数据上,而不是未压缩的数据。
  2. 在不解码的基础上执行比特流级别的修改。

示例1:

ffmpeg -i input.mp4 -codec copy -bsf:v h264_mp4toannexb output.ts

这个是把mp4容器格式改为ts容器格式,需要把h.264的封装格式从mp4改成annexb。

h.264编码有两种封装格式

  1. 一种是annexb模式, 它是传统模式, 有startcode, SPS和PPS在Element Stream中.
  2. 另一种是mp4模式, 一般Mp4, MKV, AVI都没有startcode, SPS和PPS以及其他信息被封装容器中. 每一帧前面是这一帧的长度值, 很多解码器只支持annexb模式, 因此需要对Mp4模式做转换.

再说下为什么另一种封装格式叫annexb,是因为这种封装格式定义在the Annex B of the ITU-T H.264 specification

示例2:

ffmpeg -i in.264 -c copy -bsf:v trace_headers -f null - 2> NALUS.txt

支持 AV1,H.264, H.265, (M)JPEG, MPEG-2, VP9(VP8不支持)

Log trace output containing all syntax elements in the coded stream headers (everything above the level of individual coded blocks). This can be useful for debugging low-level stream issues. 可以用于底层码流调试。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Bitstream Filter
    • 示例1:
      • 示例2:
      相关产品与服务
      容器服务
      腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档