解封装(六):通过遍历获取AVStream音视频流信息并打印参数
一般获取音视频流的方式有如下两种方法:如下代码
//音视频索引,读取时区分音视频 int videoStream = 0;int audioStream = 1;//第一种获取音视频流的方法//获取音频流信息,(遍历,函数获取)for (int i = 0; i < ic->nb_streams; i++){AVStream *as = ic->streams[i];//判断哪个是音频,哪个是视频//音频if (as->codecpar->codec_type == AVMEDIA_TYPE_AUDIO){audioStream = i;cout << i<<"音频信息" << endl;cout << "sample rete =" << as->codecpar->sample_rate << endl;//AVSampleFormat:cout << "format =" << as->codecpar->format << endl;cout << "channels =" << as->codecpar->channels << endl;cout << "codec_id =" << as->codecpar->codec_id << endl; //包含了pcm格式,没有压缩的cout << "audio fps=" << r2d(as->avg_frame_rate) << endl;//一帧数据存放一定量的样本数,单通道样本数,,就保证了一帧数据能够恰当合理cout << "frame size:" << as->codecpar->frame_size << endl;//双通道*一帧大小*样式格式(16位)1024 * 2 * 2 = 4096 fps = sample_rate / frame_size,所以可以得出,视频一帧,音频可能一到两帧数据//所以我们在读入数据的时候要对音视频分开进行缓存}//视频else if (as->codecpar->codec_type == AVMEDIA_TYPE_VIDEO){videoStream = i;cout << i<<"视频信息" << endl;cout << "width:" << as->codecpar->width << endl;cout << "height" << as->codecpar->height << endl;//帧率 fps 分数转换cout << "video fps=" << r2d(as->avg_frame_rate) << endl;}}
解封装(六):通过遍历获取AVStream音视频流信息并打印参数相关推荐
- 【Android FFMPEG 开发】FFMPEG 获取 AVStream 音视频流 ( AVFormatContext 结构体 | 获取音视频流信息 | 获取音视频流个数 | 获取音视频流 )
文章目录 博客简介 . FFMPEG 音视频流 获取流程 I . FFMPEG 获取音视频流信息 ( AVFormatContext 结构体 ) II . FFMPEG 获取 音视频流 数量 III ...
- FFmpeg入门详解之70:获取音视频流信息(Metadata)
用FFmpeg获取视频流+音频流的信息(编码格式.分辨率.帧率.播放时长...) 简介 我们经常需要知道一个媒体文件所包含的媒体流的信息,比如文件格式.播放时长.码率.视音频编码格式,视频分辨率,帧率 ...
- 解封装(四):avformat_find_stream_info探测获取封装上下文并打印
获取视频流格式信息 注意:MP4视频文件,在avformat_open_input的时候就已经获取了它全部的信息,但有一部分视频文件如flv格式的视频文件,在调用上面接口的时候可能并没有获取他的重要信 ...
- 调取大华SDK获取IPC音视频流并得到H264帧
本文为博主原创文章,未经博主允许不得转载.(合作洽谈请联系QQ:1010316426) 通过调取大华摄像机SDK,获取的音视频码流,其格式为大华的私有格式.需通过大华的码流分析库StreamAnaly ...
- java获取抖音用户信息,获取用户订阅抖音账号列表
## 接口定义 ~~~[api] get:http://open.koldata.net/douyin/subscribe/account int:page=1#页码:默认值为1 int:page_s ...
- 获取抖音视频信息api
Api地址:https://query.asilu.com/aweme/info type: post 参数: 抖音分享链接:参数名 rc 返回数据: { "aid": " ...
- 解封装(一):ffmpeg解封装
1.注意:什么是解封装,就是将二进制音视频文件,开始音视频文件分离,解码的具体操作. 2.解封装没有严格的性能问题.它的开销非常小. 3.解封装使用的一些接口 (1)av_register_all() ...
- 【Android FFMPEG 开发】FFMPEG 读取音视频流中的数据到 AVPacket ( 初始化 AVPacket 数据 | 读取 AVPacket )
文章目录 I . FFMPEG 获取 AVPacket 数据前置操作 II . FFMPEG 获取 AVPacket 数据流程 III . FFMPEG AVPacket 结构体 IV . AVPac ...
- FFmpeg 音视频解封装
1.简介 解封装:如下图所示,就是将FLV.MKV.MP4等文件解封装为视频H.264或H.265压缩数据,音频MP3或AAC的压缩数据,下图为常用的基本操作. 2.流程 下图是解封装的基本流程图. ...
最新文章
- apache 安装与配置详细教程
- 怎么可以用计算机弄出表白数字,怎么用数字表白 表白爱情数字大全
- git删除远程服务的文件夹
- 李战java_【阿里李战】解剖JavaScript中的 null 和 undefined
- 数学特级教师:数学除了做习题,我还他让他们看这十部纪录片!
- Couchbase:使用Twitter和Java创建大型数据集
- python把csv文件转换txt_Python实现txt文件转csv格式
- mooc c语言第三周作业,2017moocC语言第七周答案
- 33.4. Gearman
- python 拼音 四线格_拼音四线三格中的写法示意及书写注意事项
- Windows 95——万物之源
- Altium net has no driving source问题
- [乡土民间故事_徐苟三传奇]第六回_放牛伢妙计订合同
- matplotlib plot显示marker超出边界部分
- python实现批量远程电脑传输文件
- IDEA编译代码报错,找不到符号:找不到符号包
- 蓝桥七届 冰雹数 JAVA
- Xshell用Public Key登录华为网络设备(交换机等)
- 第三篇 JavaScript基础
- 基于matlab的数字调制,基于MATLAB的多功能数字调制系统信号源仿真
热门文章
- tomcat架构分析(容器类)
- struts2 自带的 token防止表单重复提交拦截器
- XML文件解析之--DOM与SAX
- 蓝桥杯51单片机之串口通信发送接收信息【单片机开发初学者串口必会】
- Scrapy爬虫报错AttributeError: ‘NoneType‘ object has no attribute ‘write‘
- php 向ldap请求文件,绑定 LDAP 目录 - PHP 7 中文文档
- python中key_python属性和key的区别?
- 使用Python获取Excel文件中单元格公式的计算结果
- Fibonacci数列第n项的第7种计算方法:Python列表
- Python使用Manager对象实现不同机器上的进程跨网络传输数据