CN102739983B - 一种实现半透明效果的方法及*** - Google Patents
一种实现半透明效果的方法及*** Download PDFInfo
- Publication number
- CN102739983B CN102739983B CN201110089456.6A CN201110089456A CN102739983B CN 102739983 B CN102739983 B CN 102739983B CN 201110089456 A CN201110089456 A CN 201110089456A CN 102739983 B CN102739983 B CN 102739983B
- Authority
- CN
- China
- Prior art keywords
- window
- video data
- video
- semi
- semitransparent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000000694 effects Effects 0.000 title claims abstract description 21
- 230000008569 process Effects 0.000 claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 12
- 230000003993 interaction Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开了一种实现半透明效果的方法,包括:根据预先设置的半透明窗口的位置和大小,从视频数据中截取所述半透明窗口对应的视频数据传递给所述半透明窗口;所述半透明窗口根据截取的视频数据对自身进行处理;将处理后的半透明窗口叠加在视频窗口上。本发明还相应地公开了一种实现半透明效果的***。本发明使用独立窗口叠加在视频区域之上,将视频数据截取出来设置为所述独立窗口的背景,使视频区域上的半透明控件的绘制、鼠标交互等处理和视频处理脱离关系,从而大大降低了视频区域上开发半透明控制栏等控件的难度,并且,本发明无须依赖.Net?Framework,从而应用范围广泛、易于实现。
Description
技术领域
本发明涉及视频数据处理技术,尤其涉及一种实现半透明效果的方法及***。
背景技术
通常,在视频播放时,为了在不影响视频观看效果的前提下,使用户能够对正在播放的视频进行暂停、快进、全屏等操作;或者,为了能够在正在播放视频的视频窗口的某个位置显示贴片广告或其他预告信息,往往需要将相关控件或信息通过半透明的方式显示在视频窗口中。现有技术中,主要采用视频数据后处理的方式,将要实现半透明的内容融合到即将显示的视频数据中,实现半透明效果,采用视频数据后处理的方式,虽然应用场景相对较广泛,但是,由于是直接在视频数据上进行叠加,所以很难实现对鼠标事件的响应和交互,换言之,这种方案只适合静态的、没有交互的半透明混合,如半透明的贴片广告等,而很难实现需要响应鼠标交互的半透明控件,如视频播放器的控制栏、半透明的播放按钮等。
发明内容
有鉴于此,本发明的主要目的在于提供一种实现半透明效果的方法及***,能够方便地实现半透明控件,且应用范围广泛、易于实现。
为达到上述目的,本发明的技术方案是这样实现的:
一种实现半透明效果的方法,包括:
根据预先设置的半透明窗口的位置和大小,从视频数据中截取所述半透明窗口对应的视频数据传递给所述半透明窗口;
所述半透明窗口根据截取的视频数据对自身进行处理;
将处理后的半透明窗口叠加在视频窗口上。
所述半透明窗口为控件窗口;
所述半透明窗口根据截取的视频数据对自身进行处理包括:绘制背景和绘制前景;其中,
所述绘制背景为:根据所述截取的视频数据绘制背景;
所述绘制前景为:将控件通过半透明的方式绘制到所述绘制的背景上。
所述从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口之前,该方法还包括:解码一帧视频数据;
所述根据预先设置的半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:根据预先设置的半透明窗口的位置和大小,从所述解码后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
该方法还包括:将所述解码后的视频数据传递给显卡,由显卡在视频窗口中显示所述视频数据。
所述根据预先设置的半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:视频帧变化或者视频窗口大小改变时,根据预先设置的半透明窗口的位置和大小,从所述缩放后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
一种实现半透明效果的***,包括播放器、半透明窗口、视频窗口和叠加模块;其中,
所述播放器,用于根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口;
所述半透明窗口,用于根据来自播放器的截取的视频数据对自身进行处理;
所述叠加模块,用于将处理后的半透明窗口叠加在视频窗口上。
所述半透明窗口为控件窗口;所述半透明窗口对自身进行处理包括:绘制背景和绘制前景。
所述播放器,还用于在根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口之前,解码一帧视频数据,
所述播放器根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:播放器根据半透明窗口的位置和大小,从所述解码后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
该***还包括显卡,
所述播放器,还用于将所述解码后的视频数据传递给显卡;
所述显卡,用于在视频窗口中显示来自播放器的视频数据。
所述播放器根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:视频帧变化或者视频窗口大小改变时,播放器根据半透明窗口的位置和大小,从所述缩放后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
本发明所述实现半透明效果的方法及***,播放器需要在视频窗口中显示视频数据时,根据预先设置的半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口;所述半透明窗口根据截取的视频数据对自身进行处理;并将处理后的半透明窗口叠加在视频窗口上。本发明从需要在视频窗口中显示的视频数据中截取出半透明窗口对应的视频数据用来设置所述半透明窗口的背景,并在所述背景上进一步绘制控件,最后将该独立的半透明窗口叠加在视频窗口之上,使视频窗口上的半透明控件的绘制、鼠标交互等处理和视频处理脱离关系,从而可以方便的完成鼠标交互响应,可以应用通用的Windows皮肤引擎,大大降低视频区域上开发半透明控制栏等控件的难度,便于实现半透明控件,并且,本发明无需依赖.NetFramework,从而应用范围广泛、易于实现。
附图说明
图1为本发明实现半透明效果的方法流程示意图;
图2为本发明实施例实现半透明效果的方法的详细流程示意图;
图3为本发明实施例中视频窗口、控件窗口的位置关系示意图。
具体实施方式
本发明的基本思想是:根据预先设置的半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口;所述半透明窗口根据截取的视频数据对自身进行处理;将所述处理后的半透明窗口叠加在视频窗口上。
图1为本发明实现半透明效果的方法流程示意图,如图1所示,该方法包括:
步骤101:播放器需要在视频窗口中显示视频数据时,根据预先设置的半透明窗口的位置和大小,从需要在视频窗口中显示的视频数据中截取半透明窗口对应的视频数据传递给半透明窗口。
播放器解码一帧视频数据,并将解码后的所述视频数据缩放到视频窗口大小之后,需要将所述缩放后的视频数据传递给显卡,由显卡在视频窗口中显示来自播放器的视频数据;其中,显卡采用硬件加速方式在视频窗口中显示来自播放器的视频数据。
步骤102:半透明窗口根据来自播放器的截取的视频数据对自身进行处理。
需要说明的是,对于半透明窗口为控件窗口的情况,所述半透明窗口根据所述来自播放器的截取的视频数据对自身进行处理包括:绘制背景和绘制前景,其中,所述绘制背景为:根据所述截取的视频数据绘制背景,即复制控件窗口占据视频窗口中视频播放区域的视频内容作为背景;所述绘制前景为:将控件通过半透明的方式绘制到所绘制的背景上。
步骤103:将处理后的半透明窗口叠加在视频窗口上。
本发明中,视频帧变化或者视频窗口大小改变均可以触发图1所述流程。
图2为本发明实施例实现半透明效果的方法的详细流程示意图,如图2所示,该方法包括:
步骤201:播放器需要在视频窗口中显示视频数据时,解码一帧视频数据。
这里,启动播放后,播放器便开始对视频数据进行解码。需要说明的是,播放器对视频数据解码的过程是连续的,即每解码一帧视频数据,都需要执行一次本流程。
步骤202:播放器将解码后的视频数据缩放到视频窗口大小,转到步骤203和步骤205。
步骤203:播放器将缩放后的视频数据传递给显卡.
步骤204:显卡在视频窗口中显示来自播放器的视频数据,之后转到步骤209。
具体的,显卡一般采用硬件加速方式在视频窗口中显示来自播放器的视频数据。
步骤205:播放器根据预先设置的半透明窗口的位置和大小,从缩放后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
步骤206步骤208:半透明窗口根据来自播放器的截取的视频数据进行处理。
具体的,需要实现半透明控件的情况下,所述半透明窗口根据来自播放器的截取的视频数据进行处理,即:进行半透明绘制与混合,具体包括绘制背景和绘制前景;其中,背景部分绘制就是控件窗口所占据的视频播放区域的视频内容,前景部分则根据具体的需求,可以是各种各样的控件,这些控件通过半透明的方式绘制到复制好的视频背景上。
需要说明的是,当因视频帧变化或者视频窗口大小改变导致视频重绘的时候,将视频数据重新截取出来,更新控件窗口的背景,强制控件窗口重新绘制。
步骤209:将处理后的半透明窗口叠加在视频窗口上,实现半透明效果。
为了实现该方案,需要播放器实现如下功能:播放器可以接受设置,指定窗口的某个区域为半透明区,当在正常的播放过程视频内容被改变或视频窗口的大小被改变的时候、主动将半透明区域的视频画面传递给上层的半透明窗口如控件窗口,由半透明窗口如控件窗口负责之后的半透明混合与绘制。
本发明的关键就在于:在视频区域上方再创建一个半透明窗口如控件窗口,通过将视频数据截取出来设置为该独立的半透明窗口的背景的方法,使视频区域上的半透明控件的绘制、鼠标交互等处理和视频处理脱离关系。
图3为本发明实施例中视频窗口、控件窗口的位置关系示意图,如图3所示,A为视频窗口,C为控件窗口,B为控件窗口在视频窗口内所占据的区域。当视频画面进行更新之后,取出B区域的视频数据,复制到控件窗口C作为背景,并强制控件窗口C进行重绘。控件窗口C重绘的过程中,先将B区域的视频数据作为背景进行绘制,然后绘制该窗口内要显示的其他控件,比如按钮、滚动条等等,绘制控件的过程可以应用支持半透明效果的皮肤引擎来完成。这样,最终用户看到的效果就是,控件窗口C的内容全部半透明的融合在视频内部,并且可以响应用户的鼠标操作,例如,用户可以通过鼠标点击控件窗口C中的暂停、快进、全屏等按钮,对视频窗口A中正在播放的视频进行暂停、快进、全屏等操作。
本发明还相应地提出一种实现半透明效果的***,该***包括播放器、半透明窗口、视频窗口和叠加模块;其中,
所述播放器,用于根据半透明窗口的位置和大小,从视频数据中截取相应的视频数据传递给所述半透明窗口;
所述半透明窗口,用于根据来自播放器的截取的视频数据对自身进行处理;
所述叠加模块,用于将处理后的半透明窗口叠加在视频窗口上。
所述半透明窗口为控件窗口,所述半透明窗口根据所述来自播放器的截取的视频数据对自身进行处理包括:绘制背景和绘制前景,其中,
所述绘制背景为:根据所述截取的视频数据绘制背景,即复制控件窗口占据视频窗口中视频播放区域的视频内容作为背景,
所述绘制前景为:将控件通过半透明的方式绘制到所述绘制的背景上。
所述播放器,还用于在根据半透明窗口的位置和大小,从视频数据中截取相应的视频数据传递给所述半透明窗口之前,解码一帧视频数据,并将解码后的所述视频数据缩放到视频窗口大小,
所述播放器根据半透明窗口的位置和大小,从视频数据中截取相应的视频数据传递给所述半透明窗口为:播放器根据半透明窗口的位置和大小,从所述缩放后的视频数据中截取相应的视频数据传递给所述半透明窗口。
该***还包括显卡,
所述播放器,还用于在解码一帧视频数据,并将解码后的所述视频数据缩放到视频窗口大小之后,将所述缩放后的视频数据传递给显卡;
所述显卡,用于在视频窗口中显示来自播放器的视频数据。
所述显卡在视频窗口中显示来自播放器的视频数据为:显卡采用硬件加速方式在视频窗口中显示来自播放器的视频数据。
所述播放器根据半透明窗口的位置和大小,从视频数据中截取相应的视频数据传递给所述半透明窗口为:视频帧变化或者视频窗口大小改变时,播放器根据半透明窗口的位置和大小,从所述缩放后的视频数据中截取相应的视频数据传递给所述半透明窗口。
可以看出,本发明通过在视频区域上叠加一个合适大小的窗口,并实时从视频播放器中提取播放器和该窗口叠加区域的视频数据,设置为该窗口的背景内容,在此基础之上再完成该窗口的其他功能,比如按钮的绘制和交互响应。该方案无须依赖.NetFramework,无须使用layered窗口,可以使用普通子窗口叠加在视频区域之上,由于是独立窗口,可以方便的完成鼠标交互响应,可以应用通用的Windows皮肤引擎,大大降低了视频区域上开发半透明控制栏等控件的难度。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (10)
1.一种实现半透明效果的方法,其特征在于,该方法包括:
根据预先设置的半透明窗口的位置和大小,从视频数据中截取所述半透明窗口对应的视频数据传递给所述半透明窗口;
所述半透明窗口根据截取的视频数据对自身进行处理;
将处理后的半透明窗口叠加在视频窗口上。
2.根据权利要求1所述的方法,其特征在于,所述半透明窗口为控件窗口;
所述半透明窗口根据截取的视频数据对自身进行处理包括:绘制背景和绘制前景;其中,
所述绘制背景为:根据所述截取的视频数据绘制背景;
所述绘制前景为:将控件通过半透明的方式绘制到所述绘制的背景上。
3.根据权利要求1或2所述的方法,其特征在于,所述从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口之前,该方法还包括:解码一帧视频数据;
所述根据预先设置的半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:根据预先设置的半透明窗口的位置和大小,从解码后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
4.根据权利要求3所述的方法,其特征在于,该方法还包括:将所述解码后的视频数据传递给显卡,由显卡在视频窗口中显示所述视频数据。
5.根据权利要求1或2所述的方法,其特征在于,所述根据预先设置的半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:视频帧变化或者视频窗口大小改变时,根据预先设置的半透明窗口的位置和大小,从缩放后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
6.一种实现半透明效果的***,其特征在于,该***包括播放器、半透明窗口、视频窗口和叠加模块;其中,
所述播放器,用于根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口;
所述半透明窗口,用于根据来自播放器的截取的视频数据对自身进行处理;
所述叠加模块,用于将处理后的半透明窗口叠加在视频窗口上。
7.根据权利要求6所述的***,其特征在于,所述半透明窗口为控件窗口;所述半透明窗口对自身进行处理包括:绘制背景和绘制前景。
8.根据权利要求6或7所述的***,其特征在于,
所述播放器,还用于在根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口之前,解码一帧视频数据,
所述播放器根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:播放器根据半透明窗口的位置和大小,从解码后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
9.根据权利要求8所述的***,其特征在于,该***还包括显卡,
所述播放器,还用于将所述解码后的视频数据传递给显卡;
所述显卡,用于在视频窗口中显示来自播放器的视频数据。
10.根据权利要求6或7所述的***,其特征在于,所述播放器根据半透明窗口的位置和大小,从视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口为:视频帧变化或者视频窗口大小改变时,播放器根据半透明窗口的位置和大小,从缩放后的视频数据中截取半透明窗口对应的视频数据传递给所述半透明窗口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110089456.6A CN102739983B (zh) | 2011-04-11 | 2011-04-11 | 一种实现半透明效果的方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110089456.6A CN102739983B (zh) | 2011-04-11 | 2011-04-11 | 一种实现半透明效果的方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102739983A CN102739983A (zh) | 2012-10-17 |
CN102739983B true CN102739983B (zh) | 2016-04-13 |
Family
ID=46994683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110089456.6A Active CN102739983B (zh) | 2011-04-11 | 2011-04-11 | 一种实现半透明效果的方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102739983B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094763B (zh) * | 2014-04-30 | 2019-08-23 | 广州市动景计算机科技有限公司 | 扩展视频功能的方法及*** |
CN105446585B (zh) * | 2014-08-29 | 2019-03-15 | 优视科技有限公司 | 一种安卓智能终端浏览器视频显示方法及装置 |
CN104301788A (zh) * | 2014-09-26 | 2015-01-21 | 北京奇艺世纪科技有限公司 | 一种提供视频交互的方法和装置 |
CN107027068B (zh) * | 2016-02-01 | 2021-04-13 | 斑马智行网络(香港)有限公司 | 渲染方法、解码方法、播放多媒体数据流的方法及装置 |
CN107025100A (zh) | 2016-02-01 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 播放多媒体数据的方法、界面渲染方法及装置、设备 |
CN105930026A (zh) * | 2016-04-15 | 2016-09-07 | 合网络技术(北京)有限公司 | 多媒体资源的播放控制方法和装置 |
CN107423050A (zh) * | 2017-04-28 | 2017-12-01 | 广州酷狗计算机科技有限公司 | 一种穿透操作的方法和装置 |
CN110708591B (zh) * | 2018-07-10 | 2022-04-26 | 杭州海康威视***技术有限公司 | 一种图像处理方法、装置及电子设备 |
CN115695889A (zh) * | 2022-09-30 | 2023-02-03 | 聚好看科技股份有限公司 | 显示设备及悬浮窗显示方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101076089A (zh) * | 2006-06-23 | 2007-11-21 | 腾讯科技(深圳)有限公司 | 一种显示字幕的方法 |
CN101159819A (zh) * | 2007-11-09 | 2008-04-09 | 深圳市迅雷网络技术有限公司 | 一种在线视频中插播Flash的方法和装置 |
CN102301736A (zh) * | 2011-07-06 | 2011-12-28 | 华为技术有限公司 | 视频播放内容切换的方法、装置及移动终端 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8468562B2 (en) * | 2007-05-02 | 2013-06-18 | Google Inc. | User interfaces for web-based video player |
-
2011
- 2011-04-11 CN CN201110089456.6A patent/CN102739983B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101076089A (zh) * | 2006-06-23 | 2007-11-21 | 腾讯科技(深圳)有限公司 | 一种显示字幕的方法 |
CN101159819A (zh) * | 2007-11-09 | 2008-04-09 | 深圳市迅雷网络技术有限公司 | 一种在线视频中插播Flash的方法和装置 |
CN102301736A (zh) * | 2011-07-06 | 2011-12-28 | 华为技术有限公司 | 视频播放内容切换的方法、装置及移动终端 |
Also Published As
Publication number | Publication date |
---|---|
CN102739983A (zh) | 2012-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102739983B (zh) | 一种实现半透明效果的方法及*** | |
AU2018101226A4 (en) | Systems, methods, and graphical user interfaces for interacting with augmented and virtual reality environments | |
CN101620502B (zh) | 手写区域显示信息的方法及*** | |
EP1828878B1 (en) | System and method for viewing digital visual content on a device | |
EP1825472B1 (en) | Method and apparatus for video editing on small screen with minimal input device | |
CN104106037A (zh) | 投影仪,图形输入·显示装置,便携终端和程序 | |
CN113082696B (zh) | 显示控制方法、装置和电子设备 | |
CN102880383B (zh) | 一种应用程序间界面的切换方法、装置 | |
US20070222796A2 (en) | Methods and systems for controlling a computer using a video image and for combining the video image with a computer desktop | |
CN101419532B (zh) | 一种在移动终端改变信息内容尺寸的方法和移动终端 | |
CN101848346A (zh) | 一种电视机及其图像显示方法 | |
CN102868928A (zh) | 一种实现字幕隐藏的视频图像显示方法和装置 | |
CN105022599A (zh) | 一种终端及终端屏幕显示方法 | |
CN114697721B (zh) | 弹幕显示方法及电子设备 | |
TWM516205U (zh) | 視訊矩陣控制設備 | |
CN106406651B (zh) | 动态放大显示视频的方法及装置 | |
CN107870703B (zh) | 图片全屏展示的方法、***及终端设备 | |
CN104599307A (zh) | 一种在移动终端上采用动画显示图片的方法 | |
JP5668385B2 (ja) | 情報処理装置、プログラムおよび情報処理方法 | |
EP4387218A1 (en) | Video recording method and apparatus, electronic device, and medium | |
CN107197356B (zh) | 一种在电视中显示屏幕菜单的方法、装置及电视 | |
JP5083697B2 (ja) | 画像表示装置、入力装置、及び画像表示方法 | |
US20130169660A1 (en) | Image editing system and method | |
WO2019105062A1 (zh) | 一种内容显示方法、装置和终端设备 | |
US20170031583A1 (en) | Adaptive user interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |