基于DirectShow技术的2D与3D软件切换方法技术

技术编号:4149261 阅读:452 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种基于DirectShow技术的2D与3D软件切换方法,包括以下步骤:构建2D?Filter和3D?Filter;构建适合当前显示模式的完整播放链路:先利用DirectShow技术建立一条能够回放普通的视频文件的链路;再根据显示设备的显示模式,在图像提交显示前对源文件解码出的每帧内容进行处理,最后将生成的数据提交给显示设备显示;然后可以对应硬件上的切换,在软件上进行2D与3D切换。本发明专利技术的优点是:根据显示模式,在软件上实时调整平面或立体图像;2D与3D切换快速、实时,不需要重新播放;可以方便地进行2D与3D效果的对比。

【技术实现步骤摘要】

本专利技术涉及一种2D与3D软件切换的方法,尤其是一种DirectShow播放立体视频 时,进行2D与3D软件切换的方法。
技术介绍
DirectShow是一套完全基于COM (Component Object Model,即组件对象模型)的 应用系统,它的组成模块是一种称之为Filter (过滤器)的COM组件,每一个Filter完成 数据流上的某些功能。其设计初衷就是尽量让应用程序开发人员从复杂的数据传输、硬件 差异、音视频流同步等工作中解脱出来,总体应用框架和底层工作由DirectShow的各个功 能Filter完成,程序员需要做的就是设计整个应用程序的功能,确定要使用的Filter,然 后通过Filter Graph(过滤器图表)的管理模型将各个功能模块正确连接并控制整个数据 流的处理过程。 立体显示设备与2D与3D切换 多视点自由立体显示设备是建立在人眼立体视觉机制上的新一代自由立体显示 设备,采用显微透镜光栅屏幕或透镜屏技术,通过摩尔纹干涉测量法精确对位,利用一组倾 斜排列的凸透镜阵列,在水平方向上发生的折射来为双眼提供不同的透视图像,来实现立 体效果。它利用人眼视差特性,不需要借助任何助视设备(如3D眼睛、头盔等),在人眼裸 视条件下即可获得具有完整深度信息的图像。 目前各种规格的立体显示设备提供一种2D与3D可切换功能,他们之间的切换只 需在硬件上按下按钮即可轻松实现。当2D显示模式无法满足浏览需求时,您可以切换到3D 模式即可轻松播放立体图像,还可随时切换回2D模式浏览平面图像。 但这种切换只是单方面从硬件上改变显示屏的偏振栅屏,播放的图像内容并没有 实时改变。立体显示设备只有在2D模式下播放平面图像、3D模式下播放立体图像时才具有 理想的观赏效果。当在3D模式下播放立体图像时,若单从硬件上实时切换成2D模式,只是 在2D模式下播放立体图像,则不会具有清晰的效果;同样当在2D模式下播放平面图像时, 单从硬件上实时切换成3D模式,只是在3D模式下播放平面图像,也不会具有立体效果。 所以,这种在硬件上按下按钮切换2D与3D的方法,是对同一图像内容在两种不同 模式下的显示,不会在两种模式下都具有清晰的显示效果。
技术实现思路
本专利技术的目的是克服单方面从硬件上进行2D与3D切换存在的固有缺陷,提供一 种,从软件上根据显示设备的显示模式,采 取对应的图像处理方法,生成平面或立体图像内容再提交显示,以便获得更好的观赏效果。 按照本专利技术提供的技术方案,所述 包括以下步骤 (1)构建2D Filter和3D Filter ; (2)构建适合当前显示模式的完整播放链路先利用DirectShow技术建立一条能 够回放普通的视频文件的链路;再根据显示设备的显示模式,在图像提交显示前对源文件 解码出的每帧内容进行处理,即若显示模式为2D,则在FilterGr即h中增加2D Filter,对 图像进行2D处理,生成一幅平面图像的数据;若显示模式为3D,则Filter Gr即h中增加3D Filter,对图像进行3D处理,生成一幅立体图像的数据;最后将生成的数据提交给显示设 备显不; (3)对应硬件上的切换,在软件上进行2D与3D切换当在硬件上从2D显示模式切 换为3D显示模式时,播放时对原文件的图像内容处理生成为立体图像,即在Filter Gr即h 中先删除2D Filter,在2D Filter位置增加3D Filter,来对解码出来的图像进行3D处理; 当在硬件上从3D显示模式切换为2D显示模式时,播放时对原文件的图像内容处理生成为 平面图像,即在Filter Graph中先删除3D Filter,在3D Filter位置增加2D Filter,来 对解码出来的图像进行2D处理。 本专利技术的优点是 l,根据显示模式,在软件上实时调整平面或立体图像; 2,2D与3D切换快速、实时,不需要重新播放; 3,可以方便地进行2D与3D效果的对比。附图说明 图1利用DirectShow技术构建一个完整具有回放功能的过滤器图表架构。 图2是2D模式下的过滤器图表架构。 图3是3D模式下的过滤器图表架构。 图4是2D与3D模式切换的过滤器图表架构。具体实施例方式下面结合附图和实施例对本专利技术作进一步说明。 利用DirectShow技术,构建一个能够播放普通文件的Filter Graph,根据立体显 示设备的显示模式,改变图像数据的处理过程,在Filter Gr即h中对解码出的原视频图像 进行2D或3D处理后,再提交给显示设备显示。具体实现有以下步骤 步骤1.构建2D Filter和3D Filter 2D与3D的切换实质上是在显示设备上显示不同的图像内容,在Filter Gr即h内 部需要对原始的图像数据用不同的方法进行处理,再提交给显示设备显示。这就需要构建 2D显示模式所需的2D Filter和3D显示模式所需的3D Filter。 2DFilter功能每帧原 始图像进行数据处理,生成一幅平面图像的数据;3D Filter功能每帧原始图像进行数据 处理,生成一幅立体图像的数据。 步骤2.构建适合当前显示模式的完整播放链路 1、为了能够显示图像数据,首先需要利用DirectShow技术建立一条能够回放普 通的视频文件的链路。Filter Graph管理器提供了一种称之为智能连接的技术为应用 程序自动生成用于文件回放的Gr即h,图l所示的普通模式下FilterGr即h的基本架构便是 通过调用Filter Gr即h管理器的智能连接方法自动生成的。智能连接技术会在系统已注册的组件库中寻找适合播放该文件的Filter并自动连接各个Filter实现回放功能。这种 构建的播放普通文件的Filter Graph,只是对源文件内容进行解码(若源文件内容是不经 过压縮的,则不需要解码),再提交显示,不对图像数据做处理。 2、由于立体显示设备的屏幕构造和播放的视频文件内容与普通的平面显示设备 都存在差异,用上述的Filter Graph播放视频文件是得不到清晰的观赏效果的,还需要根 据显示设备的显示模式,在图像提交显示前对源文件解码出的每帧内容进行特殊的处理。 若显示模式为2D,则在Filter Graph中增加2D Filter,对图像进行2D处理,生成一幅平 面图像的数据;若显示模式为3D,则Filter Gr即h中增加3D Filter,对图像进行3D处理, 生成一幅立体图像的数据。最后再将这些数据提交给显示设备显示。 图1所示的普通模式下Filter Graph的基本架构包括源过滤器主要负责获取数 据,变换过滤器主要负责数据的格式转换处理等工作,提交过滤器主要负责数据的最终去 向。 图2所示的2D模式下Filter Graph架构是在普通模式下Filter Graph架构的 基础上在数据提交显示之前进行图像的2D处理。 图3所示的3D模式下Filter Graph架构是在普通模式下Filter Graph架构的基础上在数据提交显示之前进行图像的3D处理。 步骤3.对应硬件上的切换,在软件上进行2D与3D切换 在播放过程中,在硬件上改变显示设备的显示模式时,为了得到清晰地观赏效果, 就需要在软件上对图像的处理过程进本文档来自技高网
...

【技术保护点】
一种基于DirectShow技术的2D与3D软件切换方法,其特征是:所述方法包括以下步骤:(1)构建2DFilter和3DFilter;(2)构建适合当前显示模式的完整播放链路:先利用DirectShow技术建立一条能够回放普通的视频文件的链路;再根据显示设备的显示模式,在图像提交显示前对源文件解码出的每帧内容进行处理,即若显示模式为2D,则在FilterGraph中增加2DFilter,对图像进行2D处理,生成一幅平面图像的数据;若显示模式为3D,则FilterGraph中增加3DFilter,对图像进行3D处理,生成一幅立体图像的数据;最后将生成的数据提交给显示设备显示;(3)对应硬件上的切换,在软件上进行2D与3D切换:当在硬件上从2D显示模式切换为3D显示模式时,播放时对原文件的图像内容处理生成为立体图像,即在FilterGraph中先删除2DFilter,在2DFilter位置增加3DFilter,来对解码出来的图像进行3D处理;当在硬件上从3D显示模式切换为2D显示模式时,播放时对原文件的图像内容处理生成为平面图像,即在FilterGraph中先删除3DFilter,在3DFilter位置增加2DFilter,来对解码出来的图像进行2D处理。...

【技术特征摘要】
一种基于DirectShow技术的2D与3D软件切换方法,其特征是所述方法包括以下步骤(1)构建2D Filter和3D Filter;(2)构建适合当前显示模式的完整播放链路先利用DirectShow技术建立一条能够回放普通的视频文件的链路;再根据显示设备的显示模式,在图像提交显示前对源文件解码出的每帧内容进行处理,即若显示模式为2D,则在FilterGraph中增加2D Filter,对图像进行2D处理,生成一幅平面图像的数据;若显示模式为3D,则Filter Graph中增加3D Filter,对图像进行3D处理,生成一幅立体图像的...

【专利技术属性】
技术研发人员:刘磊邵军海徐秀兵
申请(专利权)人:无锡景象数字技术有限公司
类型:发明
国别省市:32[中国|江苏]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1