热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

请问如何将解码得到的yuv420图像在窗口显示?

用户要我实现的函数如下:STDMETHODIMPCComDemo::Play(longhHandle,longhWnd){returnS_OK;}意思是我调用之前创建
用户要我实现的函数如下:
STDMETHODIMP CComDemo::Play( long hHandle, long hWnd )
{
return S_OK;
}
意思是我调用之前创建的解码器句柄hHandle解出yuv图像,再调用他传给我的窗口句柄hWnd显示。请问如何显示?要说的具体一些,我编解码还凑合,windows不懂。

17 个解决方案

#1


yuv图像显示有很多种方法,如果简单的话直接用vc的cImage等函数,或者directX或者SDL都可以,只是显示还是比较容易的

#2


能不能说得清楚点?我现在一头雾水。另外,用户要我实现的是个com控件,好像不能用mfc。

#3


up

#4


引用楼主 FirstTime 的帖子:
用户要我实现的函数如下: 
STDMETHODIMP CComDemo::Play( long hHandle, long hWnd ) 

return S_OK; 

意思是我调用之前创建的解码器句柄hHandle解出yuv图像,再调用他传给我的窗口句柄hWnd显示。请问如何显示?要说的具体一些,我编解码还凑合,windows不懂。

转换成RGB格式
用GDI+画吧

#5


用vfw可不可以搞定?有这方面的例子吗?

#6


directx显示怎么做呢?最好有个现成的例子。我有5天时间写这个解码器,再来一天做显示,就这么多时间了。

#7


encoded data -> ffmpeg decoding -> raw video data(YUV) --> ffmpeg libswcale --> RGB24

找个时候利用利用directShow或者直接用DrawDibDraw就可以在窗口上画出来了

#8


encoded data -> ffmpeg decoding -> raw video data(YUV) --> ffmpeg libswscale --> RGB24

找个时候利用利用directShow或者直接用DrawDibDraw就可以在窗口上画出来了

#9


利用directShow或者直接用DrawDibDraw就可以在窗口上画出来了
==================================================================
能不能说的再清楚点?最好有例子。

#10


我建议你是把YUV420的改成RGB32,再用BIT画到窗口上实一下。这样会好些。

#11


据说这样速度会慢,应该利用硬件直接显示yuv的能力。我总觉得这么通用的功能应该有例子的。

#12


继续帮你顶,看有没有人出来说。。。

#13


采用DirectDraw可以显示。

#14


用direct3d9基本搞定

#15


最后还是用directdraw搞定了,结贴。

#16


怎么搞定的啊?有没有思路或者简单的代码?能不能分享一下。。。

#17


偶也在着急!

推荐阅读
  • Windows7 64位系统安装PLSQL Developer的步骤和注意事项
    本文介绍了在Windows7 64位系统上安装PLSQL Developer的步骤和注意事项。首先下载并安装PLSQL Developer,注意不要安装在默认目录下。然后下载Windows 32位的oracle instant client,并解压到指定路径。最后,按照自己的喜好对解压后的文件进行命名和压缩。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • Android自定义控件绘图篇之Paint函数大汇总
    本文介绍了Android自定义控件绘图篇中的Paint函数大汇总,包括重置画笔、设置颜色、设置透明度、设置样式、设置宽度、设置抗锯齿等功能。通过学习这些函数,可以更好地掌握Paint的用法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • IB 物理真题解析:比潜热、理想气体的应用
    本文是对2017年IB物理试卷paper 2中一道涉及比潜热、理想气体和功率的大题进行解析。题目涉及液氧蒸发成氧气的过程,讲解了液氧和氧气分子的结构以及蒸发后分子之间的作用力变化。同时,文章也给出了解题技巧,建议根据得分点的数量来合理分配答题时间。最后,文章提供了答案解析,标注了每个得分点的位置。 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 怀疑是每次都在新建文件,具体代码如下 ... [详细]
  • ffmpeg做切片切出来最终是vod的切的过程中是直播的加载G:\MEDIA\HLS\index.m3u8进行播放播放器自己会做HLS多码率的切换。以下的切换日志,证明做了切换:B ... [详细]
author-avatar
语笑嫣然小公主155
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有