去年因为需要基于ffmpeg开发了一个解码库,当时解码高清视频9路CPU占用基本达到100%了(笔记本  i7处理器)不过在台式机上表现还可以。也就没管,也没深入研究。今年新上了一批PC,配置很差,满足不了16路高清视频解码的性能需求。测试发现vlc解码的cpu占用要低于我的解码器。网上查资料发现可以使用dxva2使用Gpu加速。

前期学习参考了https://blog.csdn.net/xjb2006/article/details/81082292

1、改变窗口大小视频显示会有问题

这个问题博主已经帮忙解决了,主要是

d3d9device->StretchRect(surface, NULL, m_pBackBuffer, NULL,D3DTEXF_LINEAR);这个函数的第四个参数设置为NULL就可以了.

2、窗口小的时候视频质量会变差,放大窗口后画面质量未改变。

主要原因是创建d3d9device的时候传入的D3DPRESENT_PARAMETERS参数的

m_ctx->d3dpp.BackBufferWidth和m_ctx->d3dpp.BackBufferHeight 这两个参数为0,这时候画面质量会根据窗口实际大小进行压缩。将这2个值设置为视频的分辨率对应的值就会保持原始画质

ffmpeg+dxva2 +D3D9显示 学习笔记相关推荐

  1. STM32OLED显示-学习笔记

    目录 OLED简介 OLED 显示相关设置步骤 重要函数 OLED初始化 更新显存 void OLED_WR_Byte(u8 dat,u8 cmd) 画点函数 字符显示函数 主函数 OLED简介 OL ...

  2. ffmpeg h264转avi学习笔记

    本章只记录h264封装成avi格式视频,参考ffmpeg项目的avienc.c,avi封装格式图请查看这个博客:https://blog.csdn.net/houxiaoni01/article/de ...

  3. STM32 Cube MX学习笔记——TOF 高速单线激光雷达 L10(usart)

    STM32 Cube MX学习笔记--TOF 高速单线激光雷达 L10_串口中断通信 1. TOF 高速单线激光雷达 L10 2. STM32 Cube MX配置 3.代码配置 4.编译 烧录 显示 ...

  4. FFmpeg基础到工程-多路H265监控录放开发学习笔记

    多路H265监控录放开发学习笔记 课程涉及:FFmpeg,WebRTC,SRS,Nginx,Darwin,Live555,等.包括:音视频.流媒体.直播.Android.视频监控28181.等. 具体 ...

  5. NDK学习笔记:FFmpeg音视频同步3(你追我赶,升级ffmpeg/libyuv支持neon)

    NDK学习笔记:FFmpeg音视频同步3 本篇内容说多不多,但如果要说得明明白白的,可能就有点难度了.所以我决定把我的调试过程日志都呈现出来,方便大家理解.继上一篇文末,我们学习到了什么是DTS/PT ...

  6. 【初阶】unity3d官方案例_太空射击SpacingShooter 学习笔记 显示分数时,如何让函数之间相互交流...

    [初阶]unity3d官方案例_太空射击SpacingShooter 学习笔记 显示分数时,如何让函数之间相互交流 一.关于 显示分数时,如何让函数之间相互交流 这是一个非常好的逻辑问题 1 思路:主 ...

  7. C# 学习笔记(15)自己的串口助手----波形显示

    C# 学习笔记(15)自己的串口助手----波形显示 chart控件 chart控件共有5大集合,最重要的两个集合就是绘图空间和线 坐标系 坐标系的设置在绘图空间集合内 设置坐标系样式 框选放大功能 ...

  8. OpenCV之Python学习笔记(1)(2): 图像的载入、显示和保存 图像元素的访问、通道分离与合并

    OpenCV之Python学习笔记 一直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看到一本国外的新书< ...

  9. OpenCV学习笔记(五十六)——InputArray和OutputArray的那些事core OpenCV学习笔记(五十七)——在同一窗口显示多幅图片 OpenCV学习笔记(五十八)——读《Mast

    OpenCV学习笔记(五十六)--InputArray和OutputArray的那些事core 看过OpenCV源代码的朋友,肯定都知道很多函数的接口都是InputArray或者OutputArray ...

最新文章

  1. npm使用入门(package.json)
  2. 隐藏层节点数对迭代次数分布规律的影响
  3. USTC English Club Note20211215
  4. 记录 之 tensorflow中几个常用的函数:tf.unstack,tf.concat() 和 tf.stack() 等
  5. myeclipse中如何修改Servlet模板
  6. springboot 建readme_经验分享:给项目创建和编写README.md文件的步骤
  7. mysql增加修改字段
  8. Maven工程 报 Diamond types are not supported at language level ‘5‘
  9. To 研究生,第一:做学位论文期间,不要有任何度假休息的打算;第二,导师错的时候不多;第三……...
  10. 《原力计划【第二季】》第 7 周周榜揭晓!!!
  11. (转)区块链创造了ICO,但是无法守护ICO
  12. linux子进程杀不掉怎么办,LINUX KILL -9 杀不掉,求解决方法
  13. js调用摄像头拍照,js调用摄像头在线拍照,js调用电脑摄像头拍照
  14. 计算机操作系统--文件管理
  15. Bartender条码打印软件,提示30天以后该软件将会过期
  16. DEP bypass
  17. 无法安装驱动程序此计算机上不存在,在win7中安装打印机时,如果“找不到打印机驱动程序包所需的核心驱动程序包”怎么办?...
  18. 封装获取非行内样式函数
  19. 解读APP新一代验证登录方式——一键登录/免密认证
  20. python爬取王者荣耀皮肤高清图

热门文章

  1. kubernetes dev client-go 输出资源
  2. c语言数字的写法田字格,正确书写数字1-10的方法,实用!
  3. TSGCTF 2021 Welcome to TSG CTF! WP
  4. 无线路由器连接电信光猫实现拨号上网方法
  5. JavaScript网页特效-限时秒杀
  6. 2018-8-10-win10-uwp-商业游戏-
  7. 时序逻辑电路设计方法和步骤
  8. 【C/C++】泛型栈
  9. Win10系统程序以管理员身份开机自启动配置
  10. [AHK]在当前目录中运行DOS命令行--DosHere