急!急!急![DirectX Show]ISampleGrabberCB如何旋转视频90度

chenlixin007 2010-05-24 03:21:56
如题。
从网上示例常见的directx摄像头照片程序CCaptureVideo。我想把摄像头视频旋转90度。
有人说在SampleCB中修改宽高,在BufferCB中修改数据,目前,我在BufferCB把数据修改了,存盘文件看出图片是旋转了90度,正常。可是视频实时预览怎么也不正常。经过跟踪分析,发现这两个函数只能回调一个。
直接在初始化的时候改变视频宽高也不奏效。请高手给个思路,最好有具体代码,先谢了
...全文
299 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenlixin007 2012-07-10
  • 打赏
  • 举报
回复
无奈之举,只好旋转数据
chenlixin007 2010-05-24
  • 打赏
  • 举报
回复
而且,根据目前跟踪显示的情况来看,ISampleGrabberCB 中STDMETHODIMP CSampleGrabberCB::BufferCB( double dblSampleTime, BYTE * pBuffer, long lBufferSize )中的 pBuffer的数据旋转没有问题,存盘图片正常,但显示的图像数据流格式因为还是宽高没有对调的状态,所以实时视频显示的时候错位,乱码
chenlixin007 2010-05-24
  • 打赏
  • 举报
回复
先感谢楼上。
但是不是这个意思,我做完旋转后,内存的数据大小是不变的,也就是说不需要两天添加空白的,只需要将宽高的值换一下即可
xiuxianshen 2010-05-24
  • 打赏
  • 举报
回复
建议做个旋转再缩放成原来大小,数据好改,宽高修改比较麻烦的
怕影响图像质量的画就在原来图像的上下侧添加空白来保持比例

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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