【技术实现步骤摘要】
一种能兼容WPF播放视频流的处理方法、系统及装置
本专利技术属于视频处理
,具体涉及一种能兼容WPF播放视频流的处理方法、系统及装置。
技术介绍
Ffmpeg(一种开源编解码库)作为功能强大的开源编解码工具,解析出来的包通常是YVU(一种颜色编码方法)直接用SDL(跨平台多媒体开发库)或者使用GDI(图形设备接口)直接渲染,由于WPF(基于Windows的用户界面框架)与传统WinForm(Windows窗体应用程序)不同,它的窗体才具有句柄而其中的控件是没有分配系统句柄的,者带来的问题是需要使用WindowHost来渲染播放视频,然而这样做会带来很多兼容性,比如播放画面必然置顶,无法再播放画面上覆盖其它控件,因此本专利技术提供了一种能兼容WPF播放ffmpeg解码视频流的方法,具有更高的兼容性,不会破坏原有WPF的布局。
技术实现思路
本专利技术的目的在于克服现有技术中的问题,提供一种能兼容WPF播放视频流的处理方法、系统及装置,能够提高控件的兼容性,避免控件必须置顶的情况发生。为解决现有 ...
【技术保护点】
1.一种能兼容WPF播放视频流的处理方法,其特征在于:包括如下过程:/n解码视频源得到YUV数据;/n将YUV数据转为bitmap,将bitmap放入共享内存;/n读取该bitmap并使用图片控件对目标帧进行渲染。/n
【技术特征摘要】
1.一种能兼容WPF播放视频流的处理方法,其特征在于:包括如下过程:
解码视频源得到YUV数据;
将YUV数据转为bitmap,将bitmap放入共享内存;
读取该bitmap并使用图片控件对目标帧进行渲染。
2.根据权利要求1所述的一种能兼容WPF播放视频流的处理方法,其特征在于:
所述解码视频源得到YUV数据的具体过程如下:
使用ffmpeg从视频源中读取帧并将其存入队列;
从队列中取出原始帧,然后用相应的解码器解码得到YUV数据。
3.根据权利要求1所述的一种能兼容WPF播放视频流的处理方法,其特征在于:
所述将YUV数据转为bitmap的具体过程如下:
将YUV数据进线性处理得到对应的Y'、U'、V'值;
根据Y'、U'、V'分别计算得到对应的R、G、B值。
4.根据权利要求3所述的一种能兼容WPF播放视频流的处理方法,其特征在于:
所述将YUV数据进线性处理得到对应的Y'、U'、V'值的步骤中,Y取值16~235,U取值16~240,V取值16~240。
5.根据权利要求3所述的一种能兼容WPF播放视频流的处理方法,其特征在于:
所述将YUV数据进线性处理得到对应的Y'、U'、V'值的步骤中,Y'、U'、V'的计算公式分别为:
Y'=Y*[(235-16)/255]+16;
U'=U*[(240-16)/...
【专利技术属性】
技术研发人员:王卫,李贯涛,
申请(专利权)人:南京巨鲨显示科技有限公司,南京巨鲨医疗科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。