opencv+ffmpeg+Qt h264录制

主要使用以上三个库录制h264
1. opencv 采集视频
2. ffmpeg 录制视频
3. Qt 界面

环境

vs2010+opencv2.4.8+Qt4.8.4+FFmpeg version: 2015-08-25

说明

其中主要是把Iplimage 转为yuv420用于录制视频。ffpemg自带decoding_encoding.c有视频录制代码。录制完成后可能会感觉视频总是在快进,可能是帧率和摄像头采集的帧率不匹配,降低 试试
AVRational avtmp = {1,25};//25 /* frames per second */

另外就yuv的转换,这里录制选择的yuv420
RGB转YCbCr公式
Y = (77 * R(d) / 256) + (150 * G(d) / 256) + (29 * B(d) / 256)
Cb = - (44 * R(d) / 256) - (87 * G(d) / 256) + (131 * B(d) / 256) + 128
Cr = (131 * R(d) / 256) - (110 * G(d) / 256) - (21 * B(d) / 256) + 128
把Iplimage的rgb读出来按照上面公式计算出YCrCb,再赋值给ffmpeg,CbCr隔行取。

问题

  1. 可能提示找不到h264编码器,是否注册avcodec_register_all();,还是不行安装一些编解码器吧。http://ffmpeg.org/faq.html#FFmpeg-does-not-support-codec-XXX_002e-Can-you-include-a-Windows-DLL-loader-to-support-it_003f
  2. 播放速度,调整录制帧率

代码

http://download.csdn.net/detail/gaobobo138968/9674123

opencv+ffmpeg+Qt h264录制相关推荐

  1. [笔记]OpenCV+FFmpeg+Qt实现视频编辑器之OpenCV视频lO接口

    opencv学习-VideoCapture 类基础知识 文章目录 一.OpenCV VideoCapture打开摄像头接口讲解和源码分析 VideoCapture bool open ( int in ...

  2. [笔记]OpenCV+FFmpeg+Qt实现视频编辑器之OpenCV vs2015编译

    参考 文章目录 一.环境 二.cmake构建 2.1 打开cmake-gui 2.2 配置路径 2.3 点击Configure 2.3.1 选择编译器和编译平台 2.4 再点击Configure 2. ...

  3. Linux下OPencv+ffmpeg编译和进行视频播放

    最近公司需要用opencv调用某个解码模块进行解码,所以专门研究了一下. 下面是Opencv官方文档地址:https://docs.opencv.org/3.4.8/examples.html 如何编 ...

  4. 从零开始学习音视频编程技术(七) FFMPEG Qt视频播放器之SDL的使用

    从零开始学习音视频编程技术(七) FFMPEG Qt视频播放器之SDL的使用 原文地址:http://blog.yundiantech.com/?log=blog&id=10 前面介绍了使用F ...

  5. 从零开始学习音视频编程技术(六) FFMPEG Qt视频播放器之显示图像

    从零开始学习音视频编程技术(六) FFMPEG Qt视频播放器之显示图像 原文地址:http://blog.yundiantech.com/?log=blog&id=9 前面讲解了如何用FFM ...

  6. ffmpeg解码H264缺少帧的解决办法

    最近用ffmpeg解码H264裸码流文件,发现解码总是少几帧.上网查了些资料,解决了. 当使用avcodec_decode_video2时,如果第三个参数的值为1,则表示完成一帧的解码,如果为0,表示 ...

  7. windows下ffmpeg+nginx-rtmp环境搭建及opencv+ffmpeg+python实现拉流和rtmp直播推流

    由于工作需要最近在研究rtsp拉流与直播推流的问题,目前先在我本机上进行了实验,本博客记录学习的内容,包含windows下ffmpeg.nginx-rtmp环境搭建及opencv+ffmpeg+pyt ...

  8. FFMPEG保存H264流到AVI文件中形成录像

    研究了使用FFMPEG保存H264流到AVI文件中形成录像的方法,下面是大致流程. 使用的FFMPEG版本   ffmpeg-2.6.9.然后我静态编译后使用的静态库,至于怎么静态编译看我之前的文章. ...

  9. 大疆妙算Manifold刷机换源,cuda,opencv,qt配置以及实现opencv读取usb摄像头,qmake nvcc交叉编译

    大疆妙算Manifold刷机换源,cuda,opencv,qt配置以及实现opencv读取usb摄像头,qmake nvcc交叉编译 一.刷机 1.解压安装包 2.制作镜像 3.然后按照妙算说明书进入 ...

  10. QT如何录制麦克风与实现内录

    QT如何录制麦克风与内录 QT实现内录-电脑没有立体声混音,通过虚拟声卡实现内录_txwtech的博客-CSDN博客虚拟声卡驱动(Virtual Audio Cable)官方版是款针对电脑中声卡打造的 ...

最新文章

  1. android 数据存储怎么保存图片_遇到验证码怎么办?Python编写一个验证码图片数据标注GUI程序!...
  2. 2016 ICPC 北京网络赛 A 恶心模拟 F 循环矩阵,FFT(待补) I 模拟
  3. fluorinefx C# 版的开源rtmp服务器
  4. vue.js--基础事件定义,获取数据,执行方法传值
  5. java环境变量设置详解_JAVA环境变量配置详解(Windows)
  6. 微型计算机原理偏移地址,微机原理试卷答案(B)
  7. Mysql 学习总结(86)—— Mysql 的 JSON 数据类型正确使用姿势
  8. java 编写无状态代码,一种真正实现RMI无状态化的方法续:JVM源码修改步骤
  9. 模拟退火算法- 最短路径问题
  10. 关于HP M125-M126的无线链接方案
  11. QT的下载与安装(QT5.9.1)
  12. 求职被问“你还有什么问题要问吗?”该怎么办?
  13. C语言:甲乙丙丁分糖
  14. Flutter | Sliver 系列
  15. Python必学的OS模块详解
  16. iOS 给控件View添加角标BadgeValue
  17. 出现“你的Windows许可证即将过期”提示
  18. 内存,外存,运存,显存,闪存,硬盘,SSD等概念
  19. 分库分表——基本概念以及shardingJdbc和Mycat对比
  20. Deepin系统个人评测

热门文章

  1. 微信支付的appid,appsecret,商户号mchid,微信交易支付密钥在哪里
  2. 光栅投影三维精密测量-达飞鹏下载
  3. win7安不了python_win7下安装python失败问题
  4. 华盛顿大学计算机专业硕士申请,华盛顿大学计算机科学与工程理学硕士研究生申请要求及申请材料要求清单...
  5. Oracle中user_tab_cols、user_tab_columns的差异
  6. python画旋转六边形
  7. 最新论文笔记(+12):Searching an Encrypted Cloud Meets Blockchain: A decentralized, Reliable and Fair Realiz
  8. 通过UEFI引导模式修改RAID卡jbod配置
  9. NYOJ 小明的调查作业
  10. Quorum快速部署