一般获取音视频流的方式有如下两种方法:如下代码

//音视频索引,读取时区分音视频  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音视频流信息并打印参数相关推荐

  1. 【Android FFMPEG 开发】FFMPEG 获取 AVStream 音视频流 ( AVFormatContext 结构体 | 获取音视频流信息 | 获取音视频流个数 | 获取音视频流 )

    文章目录 博客简介 . FFMPEG 音视频流 获取流程 I . FFMPEG 获取音视频流信息 ( AVFormatContext 结构体 ) II . FFMPEG 获取 音视频流 数量 III ...

  2. FFmpeg入门详解之70:获取音视频流信息(Metadata)

    用FFmpeg获取视频流+音频流的信息(编码格式.分辨率.帧率.播放时长...) 简介 我们经常需要知道一个媒体文件所包含的媒体流的信息,比如文件格式.播放时长.码率.视音频编码格式,视频分辨率,帧率 ...

  3. 解封装(四):avformat_find_stream_info探测获取封装上下文并打印

    获取视频流格式信息 注意:MP4视频文件,在avformat_open_input的时候就已经获取了它全部的信息,但有一部分视频文件如flv格式的视频文件,在调用上面接口的时候可能并没有获取他的重要信 ...

  4. 调取大华SDK获取IPC音视频流并得到H264帧

    本文为博主原创文章,未经博主允许不得转载.(合作洽谈请联系QQ:1010316426) 通过调取大华摄像机SDK,获取的音视频码流,其格式为大华的私有格式.需通过大华的码流分析库StreamAnaly ...

  5. java获取抖音用户信息,获取用户订阅抖音账号列表

    ## 接口定义 ~~~[api] get:http://open.koldata.net/douyin/subscribe/account int:page=1#页码:默认值为1 int:page_s ...

  6. 获取抖音视频信息api

    Api地址:https://query.asilu.com/aweme/info type: post 参数: 抖音分享链接:参数名 rc 返回数据: { "aid": " ...

  7. 解封装(一):ffmpeg解封装

    1.注意:什么是解封装,就是将二进制音视频文件,开始音视频文件分离,解码的具体操作. 2.解封装没有严格的性能问题.它的开销非常小. 3.解封装使用的一些接口 (1)av_register_all() ...

  8. 【Android FFMPEG 开发】FFMPEG 读取音视频流中的数据到 AVPacket ( 初始化 AVPacket 数据 | 读取 AVPacket )

    文章目录 I . FFMPEG 获取 AVPacket 数据前置操作 II . FFMPEG 获取 AVPacket 数据流程 III . FFMPEG AVPacket 结构体 IV . AVPac ...

  9. FFmpeg 音视频解封装

    1.简介 解封装:如下图所示,就是将FLV.MKV.MP4等文件解封装为视频H.264或H.265压缩数据,音频MP3或AAC的压缩数据,下图为常用的基本操作. 2.流程 下图是解封装的基本流程图. ...

最新文章

  1. apache 安装与配置详细教程
  2. 怎么可以用计算机弄出表白数字,怎么用数字表白 表白爱情数字大全
  3. git删除远程服务的文件夹
  4. 李战java_【阿里李战】解剖JavaScript中的 null 和 undefined
  5. 数学特级教师:数学除了做习题,我还他让他们看这十部纪录片!
  6. Couchbase:使用Twitter和Java创建大型数据集
  7. python把csv文件转换txt_Python实现txt文件转csv格式
  8. mooc c语言第三周作业,2017moocC语言第七周答案
  9. 33.4. Gearman
  10. python 拼音 四线格_拼音四线三格中的写法示意及书写注意事项
  11. Windows 95——万物之源
  12. Altium net has no driving source问题
  13. [乡土民间故事_徐苟三传奇]第六回_放牛伢妙计订合同
  14. matplotlib plot显示marker超出边界部分
  15. python实现批量远程电脑传输文件
  16. IDEA编译代码报错,找不到符号:找不到符号包
  17. 蓝桥七届 冰雹数 JAVA
  18. Xshell用Public Key登录华为网络设备(交换机等)
  19. 第三篇 JavaScript基础
  20. 基于matlab的数字调制,基于MATLAB的多功能数字调制系统信号源仿真

热门文章

  1. tomcat架构分析(容器类)
  2. struts2 自带的 token防止表单重复提交拦截器
  3. XML文件解析之--DOM与SAX
  4. 蓝桥杯51单片机之串口通信发送接收信息【单片机开发初学者串口必会】
  5. Scrapy爬虫报错AttributeError: ‘NoneType‘ object has no attribute ‘write‘
  6. php 向ldap请求文件,绑定 LDAP 目录 - PHP 7 中文文档
  7. python中key_python属性和key的区别?
  8. 使用Python获取Excel文件中单元格公式的计算结果
  9. Fibonacci数列第n项的第7种计算方法:Python列表
  10. Python使用Manager对象实现不同机器上的进程跨网络传输数据