谁能告诉我 DDCAPS_BLTFOURCC 到底有什么用?

Sodar 2009-04-17 10:05:32
从MSDN来看如果显卡有这个能力,就能够在RGB surface和YUV surface之间直接交换数据(我错了?),可是测试中发现,即使显卡有这个能力,也无法在两个不同格式的surface之间直接blit。
即使在RGB32 surface和RGB16 surface之间也不能互相blit数据。难道这样的转换只能通过软件实现吗?
...全文
150 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wutaihua 2011-05-30
  • 打赏
  • 举报
回复
mark 非常有用
IONPhantom 2009-04-17
  • 打赏
  • 举报
回复
1.BLT, FourCC to RGB conversion" performs Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC flag.
2."BLT, FourCC to RGB stretch" performs Stretched Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC and DDCAPS_BLTSTRETCH flags.
3.BLT, FourCC to RGB conversion" performs Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC flag.
4."BLT, FourCC to RGB stretch" performs Stretched Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC and DDCAPS_BLTSTRETCH flags.
5."BLT, FourCC to RGB conversion" performs Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC flag.
6."BLT, FourCC to RGB stretch" performs Stretched Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC and DDCAPS_BLTSTRETCH flags.
7.BLT, FourCC to RGB conversion" performs Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC flag.
8.BLT, FourCC to RGB stretch" performs Stretched Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC and DDCAPS_BLTSTRETCH flags.
9."BLT, FourCC to RGB conversion" performs Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC flag.
10."BLT, FourCC to RGB stretch" performs Stretched Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC and DDCAPS_BLTSTRETCH flags.
11."BLT, FourCC to RGB conversion" performs Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC flag.
12."BLT, FourCC to RGB stretch" performs Stretched Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC and DDCAPS_BLTSTRETCH flags.
12."BLT, FourCC to RGB stretch" performs Stretched Blts from YUV (FOURCC) surfaces to an RGB primary surface. This test is run only if the driver sets the DDCAPS_BLTFOURCC and DDCAPS_BLTSTRETCH flags.

From MSDN.

从上面可以看出
1. primary surface 必须是 RGB
2. surface 可以是 YUV 但是只能是 Blt 到 primary surface 而没有 get from primary surface 功能

也就是只能是 YUV->RGB,RGB不能转回为YUV,是一个单向的,而且primary surface必须为RGB,也就是无法从primary surface读会YUV的数据


Sodar 2009-04-17
  • 打赏
  • 举报
回复
这段话我之前也看到过,不过看的不够仔细,没理解什么意思。误事啊

Visual C++ 6 .0 多媒体(高清文字版) 开发指南 李博轩 编著 清华大学出版社 目 录 第1章 Visual C++ 6 .0简介....................... 1 1 .1 Visual C++ 6 .0 概述....................... 1 1 .2 Visual C++ 6 .0 用户界面..................... 2 1 .2 .1 工程工作区....................... 2 1 .2 .2 Developer Studio 的菜单体系............... 6 1 .3 使用ClassWizard ........................ 20 1 .3 .1 Message Maps 标签................... 20 1 .3 .2 Member Variables标签................. 21 1 .3 .3 Automation 标签.................... 22 1 .3 .4 ActiveX Events 标签.................. 23 1 .3 .5 Class Info 标签..................... 24 1 .4 建立第一个Windows应用程序.................. 24 1 .4 .1 建立应用程序框架................... 25 1 .4 .2 应用程序代码分析................... 31 1 .4 .3 Hello, World !...................... 34 1 .5 本章小结........................... 35 第2章 多媒体编程基础......................... 36 2 .1 多媒体文件.......................... 36 2 .1 .1 多媒体文件格式.................... 36 2 .1 .2 从RIFF 文件中获得信息................ 37 2 .2 媒体控制接口(MCI ) ...................... 38 2 .2 .1 MCI 设备类型..................... 38 2 .2 .2 MCI 函数接口..................... 38 2 .2 .3 MCI 命令消息..................... 41 2 .3 DirectX 概述.......................... 43 2 .3 .1 DirectX 的优越性.................... 43 2 .3 .2 COM 与DirectX 对象.................. 43 2 .3 .3 DirectX 对象简介.................... 44 2 .4 本章小结........................... 45 第3章 波形音频............................ 46 3 .1 波形音频概述......................... 46 3 .1 .1 波形音频文件的质量.................. 46 3 .1 .2 波形音频文件的格式.................. 47 3 .2 波形音频的处理函数...................... 50 3 .3 使用MessageBeep 播放波形音频................. 50 3 .4 使用PlaySound 播放波形音频.................. 51 3 .5 使用MCI 播放波形音频..................... 54 3 .5 .1 波形音频常用的MCI 命令和标志............. 54 3 .5 .2 波形音频的MCI 编程步骤................ 55 3 .5 .3 建立处理波形音频的类................. 56 3 .6 设计一个波形音频播放器.................... 62 3 .6 .1 创建应用程序框架................... 62 3 .6 .2 制作应用程序界面................... 62 3 .6 .3 添加消息处理函数................... 63 3 .6 .4 完成应用程序功能设计................. 64 3 .7 使用低级设备函数播放波形音频.................

8,325

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧