ffmpeg源码分析(七)结构体之AVStream

AVStream是存储每一个视频/音频/字幕/其它流信息的结构体。

头文件

github.com

关键字段

  1. index: 流下标,AVFormatContext中对应流的索引

  2. id: 流id,解码时由libavformat设置,编码时由用户设置。

  3. type: 编解码器的类型,可以是音频、视频等。

  4. id : 编解码器类型的唯一标识符,属于 AVCodecID 类型。

  5. codecpar : 这是一个包含编解码器参数的结构体。它包括了与该流关联的编解码器的配置,如编码类型、码率、帧率等。解复用时再avformat_find_stream_info()中获取,复用时由调用者在avformat_write_header()中配置。

  6. time_base: 表示时间基准,用于将时间戳转换为实际时间。例如,如果 time_base 为 {1, 25},即1s用25来标识,则时间戳为 50 的帧表示 2 秒。

  7. sample_aspect_ratio 宽高比

  8. metadata: 一个字典,包含与该流关联的元数据。这些元数据可能包括标题、艺术家、年份等信息。

  9. avg_frame_rate:帧率

  10. attached_pic :封面图,比如说一些MP3,AAC音频文件附带的专辑封面。

  11. side_data nb_side_data: 一整个流的附加信息的集合,解复用由libavformat设置,复用由avformat_write_header设置

相关推荐
StarsGreen3 小时前
ffmpeg中常用结构体以及函数简介以及版本变化情况
ffmpeg
大飞哥软件自习室1 天前
视频批量截图并自动拼图是怎么做的:从四步向导、三种截帧模式到等距抽样与日志兜底的实现拆解,附 FFmpeg 调用与线程模型说明
ffmpeg·音视频·批量截图
todoitbo2 天前
把 K-Lite「什么都能播」搬上鸿蒙 PC:影匣播放器的 FFmpeg + libass 原生移植实录
华为·ffmpeg·harmonyos·鸿蒙
FlightYe3 天前
音视频修炼之容器与协议(四):RTSP详解
android·linux·ffmpeg·音视频·dash
架构师伯子明4 天前
ffmpeg学习4:opencv在音视频领域常用指令
opencv·学习·ffmpeg
Android系统攻城狮5 天前
Linux FFmpeg深度解析之avio_open调用流程与实战(三十八)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
Android系统攻城狮6 天前
Linux FFmpeg深度解析之av_guess_format调用流程与实战(三十六)
linux·运维·服务器·ffmpeg·ffmpeg音视频进阶
Android系统攻城狮7 天前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
小豆庄9 天前
测试视频里的人脸车牌敏感信息自动化脱敏方案
计算机视觉·目标跟踪·ffmpeg·音视频·边缘计算·视频·敏捷流程
Android系统攻城狮10 天前
Linux FFmpeg深度解析之avcodec_default_get_encode_buffer调用流程与实战(二十八)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频