关于directshow播放器使用vmr9 renderless情况下创建设备的问题
2013-02-22 11:29
381 查看
由于电影的帧率等特性,对于播放器最优的播放策略不应该是总是60hz,故在此状况下我们创建显示设备要指定分辨率和刷新率,在这个过程中实际上d3d CreateDevice实际调用了windows API来实现显示设备的改变 ChangeDisplaySettingsExW, 但潜在有莫名奇妙的问题,或许是我的bug,也或许是ms的bug,即在我的应用里面必须在同步处理WM_DISPLAYCHANGE消息时候必须sleep一定的时间,否则在PresentImage图像的时候会出现 设备丢失错误,原因不明。
为了规避这个错误,我们将 一些工作从D3D移到外面解决,即先初始化环境直接调用ChangeDisplaySettingsExW,而不是由CreateDevice来调用,问题解决,但具体为什么不行,由于黑盒子无法确认,google一下,发现很多人面临同样的尴尬。
为了规避这个错误,我们将 一些工作从D3D移到外面解决,即先初始化环境直接调用ChangeDisplaySettingsExW,而不是由CreateDevice来调用,问题解决,但具体为什么不行,由于黑盒子无法确认,google一下,发现很多人面临同样的尴尬。
相关文章推荐
- 关于使用IoBuildAsynchronousFsdRequest创建读写IRP出现蓝屏(蓝屏错误码:0x000000BE)的问题
- 关于WinCE下MC55使用Unimodem进行GPRS拨号,拨上出现断开连接,检查波特率的问题的另一种可能情况
- 关于FriendlyARM--Smart210--Android4.0.3设备在为windows 7下使用ADB命令提示找不到设备的问题
- 关于在iOS设备上探测WIFI,3G,GPRS使用情况的细节
- 关于使用Android studio 模拟华为设备时遇到的问题及解决
- 关于用c生成的dll在使用其他供应商的工具创建可执行模块时遇到的一些问题
- 关于使用myeclipse创建web项目中可能出现的问题
- 关于easyui在使用tab组件创建选项卡时href方式载入页面遇到的问题
- 关于easyui在使用tab组件创建选项卡时href方式载入页面遇到的问题
- 关于在iOS设备上探测WIFI,3G,GPRS使用情况的细节
- 某些情况下使用context创建dialog时会报错的问题
- 关于“使用VS 2005和SQL Server 2005创建连接时不允许进行远程连接”的问题的解决
- 关于为使用ArrayAdapter创建ListView时,使用TextView添加子项的问题
- 关于webstorm编辑器识别less的问题,我是在vue里使用less
- 关于使用CreateUserWinzard控件创建用户时出现连接数据库问题的解决方法
- 关于为使用ArrayAdapter创建ListView时,使用TextView添加子项的问题
- 关于使用cglib动态创建类的继承问题
- 关于VB使用ActiveX.Exe创建多线程程序的奇怪问题
- 关于 设备节点自动创建时 编译出现的问题 解决方法
- 关于hid设备中使用ioctl向设备进行写数据问题