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设置

相关推荐
Yeauty5 小时前
你那条 ffmpeg 命令,一键翻成 Rust builder 代码
开发语言·rust·ffmpeg
Yeauty1 天前
用 Whisper 转录前,你不用再离开 Rust
开发语言·rust·ffmpeg·音视频·视频
paokuflying2 天前
ffmpeg提取视频中的音频
ffmpeg·音视频
Tirzano2 天前
java 精简使用ffmpeg
java·开发语言·ffmpeg
兵叔物联4 天前
基于FFmpeg的短视频自动剪辑工具
ffmpeg·音视频
霸道流氓气质6 天前
视频预览链路三件套:ZLMediaKit · MediaMTX · FFmpeg 完全指南
ffmpeg·音视频
xgc_java6 天前
在Java里把ONNX/OpenCV/FFmpeg跑稳:28篇bytedeco实战小册完整指南
java·opencv·ffmpeg
鲲穹AI全能助理12 天前
实用音频合成工具分享:灵境配音 使用场景与功能说明
ffmpeg·音视频
我是Superman丶12 天前
Windows系统FFmpeg官方下载+完整安装配置保姆级教程(2026最新版)
windows·ffmpeg
luoyayun36114 天前
Qt + FFmpeg 视频工具:视频一键压缩功能实现
qt·ffmpeg·音视频·视频压缩