CN117499755A - 基于gpu硬图层的硬解码视频嵌入水印或字幕的方法 - Google Patents

基于gpu硬图层的硬解码视频嵌入水印或字幕的方法 Download PDF

Info

Publication number
CN117499755A
CN117499755A CN202311484945.0A CN202311484945A CN117499755A CN 117499755 A CN117499755 A CN 117499755A CN 202311484945 A CN202311484945 A CN 202311484945A CN 117499755 A CN117499755 A CN 117499755A
Authority
CN
China
Prior art keywords
gpu
video
hard
format
bitmap
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.)
Pending
Application number
CN202311484945.0A
Other languages
English (en)
Inventor
张坤
陈斌彬
胡艳明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Lingjiu Microelectronics Co ltd
Original Assignee
Wuhan Lingjiu Microelectronics Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Lingjiu Microelectronics Co ltd filed Critical Wuhan Lingjiu Microelectronics Co ltd
Priority to CN202311484945.0A priority Critical patent/CN117499755A/zh
Publication of CN117499755A publication Critical patent/CN117499755A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

本发明适用于GPU技术领域,提供一种基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,包括:将水印或字幕的信息数据由CPU处理为YUV格式的位图,然后由GPU渲染为RGBA格式的位图;将当前视频流使用GPU解码为YUV格式的视频帧,然后由GPU渲染为RGBA格式的视频帧;将所述RGBA格式的位图与RGBA格式的视频帧用GPU硬图层叠加处理。本发明中,水印与字幕信息通过CPU处理为YUV格式的位图,而YUV转RGBA格式由GPU处理,CPU处理工作压力小,同时视频流数据均由GPU处理,采用GPU硬图层叠加的方式实现了字幕或水印嵌入到硬解码视频显示中,显示效果好,处理效率高。

Description

基于GPU硬图层的硬解码视频嵌入水印或字幕的方法
技术领域
本发明属于GPU技术领域,尤其涉及一种基于GPU硬图层的硬解码视频嵌入水印或字幕的方法。
背景技术
高清大分辨视频处理在如今的5G时代越来越普遍,仅使用CPU来承担视频处理任务,已难以保证视频播放与处理质量,尤其是需要实时响应的场景,如直播,高清监控视频传输处理、自动驾驶等场景。为应对以上需求,硬解码视频技术应用已越来越普遍。
硬解码视频指视频解码与输出渲染均由专用芯片完成,如GPU或者视频处理芯片,通过这种方式,会极大降低CPU占用率,提高视频处理效率和能力。除了播放高清视频,还会存在向视频中加入水印或者字幕的需求,这种需求在软解码视频处理中已较为成熟,通常方式为将字幕或者水印转化为位图,一般为YUV420P或者NV12等图像格式,在通过过滤算法将位图叠加到解码出的视频帧中,此时视频帧已通过CPU解码为YUV格式,将叠加好后的YUV帧进行渲染,转化为RGBA格式,拷贝至显存进行显示,这样显示出的图像就带上了字幕与水印。
目前在硬解码视频处理中嵌入字幕和水印还缺少相应的技术方案,难点在于硬解码视频处理均由专用芯片在显存中处理,而字幕和水印的处理需要CPU来完成,尤其是视频叠加,如何高效完成视频叠加是实现的关键。
专利N202210322703.0公开了一种基于GPU的视频隐形水印嵌入方法及系统,其方案是将水印生成的NV12图像拷贝至显存,在显存中将解码出的NV12帧,根据逻辑关系与水印生成的NV12图像进行叠加。该方法能较快实现视频叠加,但仍需经过复杂计算后,才能完成水印的叠加,同时处理速率可能仍然难以满足实时显示的需求,但相对于软解码效率更高。该方法更侧重于生成带水印的新的视频文件,便于存储和溯源。
因此上述两种方式中,第一种方式是软解码视频的水印与字幕添加处理方式,第二种方式是专利CN202210322703.0公开的将水印生成的NV12图像拷贝至显存,在显存中将解码出的NV12帧根据逻辑关系与水印生成的NV12图像进行叠加,从而完成水印的嵌入。第一种方式处理全程需要CPU参与,CPU占用率过高,效率也比较低,无法满足实时嵌入水印或字幕的需求;第二种方式较第一种有所改进,但仍需要复杂的算法进行视频叠加,实现的难度较大,处理效率虽然较第一种更快,但可能仍难以达到要求。
发明内容
鉴于上述问题,本发明的目的在于提供一种基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,旨在解决上述技术问题。
本发明采用如下技术方案:
所述基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,包括下述步骤:
步骤S1、将水印或字幕的信息数据由CPU处理为YUV格式的位图,然后由GPU渲染为RGBA格式的位图;
步骤S2、将当前视频流使用GPU解码为YUV格式的视频帧,然后由GPU渲染为RGBA格式的视频帧;
步骤S3、将所述RGBA格式的位图与RGBA格式的视频帧用GPU硬图层叠加处理;
步骤S4、GPU将叠加后的图像输出到屏幕。
进一步的,步骤S1的具体过程如下:将水印或字幕的信息数据由CPU处理为YUV格式的位图并传入显存,从显存中读取所述YUV格式的位图,由GPU渲染为RGBA格式的位图,将RGBA格式的位图存储于显存。
进一步的,步骤S2的具体过程如下:将当前视频流使用GPU解码为YUV格式的视频帧,并存储于显存,从显存中读取所述YUV格式的视频帧,由GPU渲染RGBA格式的视频帧,将RGBA格式的视频帧存储于显存。
进一步的,步骤S3的具体过程如下:
S31、根据窗口显示大小创建显示视频帧的第一硬图层,以及根据水印或字幕的显示尺寸创建显示水印或字幕的第二硬图层,每个硬图层对应一块显存区域,硬图层用于显示对应显存区域中的数据;
S32、:GPU将RGBA格式的视频帧根据窗口显示大小进行缩放,并拷贝至第一硬图层对应的显存区域;
S33、将第二硬图层设置为透明图层,GPU将RGBA格式的位图根据水印或字幕的显示尺寸进行缩放,并拷贝至第二硬图层对应的显存区域。
进一步的,GPU将两个硬图层的显存区域中读取图像数据输出至屏幕,水印或字幕的第二硬图层在视频显示的第一硬图层之上,且显示在预设位置。
本发明的有益效果是:本发明提供了一种基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,该方法无需复杂计算就能完成图像叠加,且显示效果与传统方法相同,处理效率更加高效,能够更好满足实时显示的需求,达到硬解码视频显示中嵌入水印或字幕的目的。
附图说明
图1是本发明实施例提供的基于GPU硬图层的硬解码视频嵌入水印或字幕的方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
如图1所示,本实施例提供的基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,包括下述步骤:
所述基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,包括下述步骤:
步骤S1、将水印或字幕的信息数据由CPU处理为YUV格式的位图,然后由GPU渲染为RGBA格式的位图。
硬解码器即硬件解码器,是一款硬件设备,是一种输入模拟视频信号并将它转换为数字信号格式,以进一步压缩和传输的硬件设备,亦即通过显卡的视频加速功能对高清视频进行解码。因此视频硬件解码器能够将CPU从繁重的视频解码运算中释放出来,使电脑具备流畅播放高清视频的能力。GPU/VPU要比CPU更适合这类大数据量的、低难度的重复工作。由于解压缩的任务基本全部交给了显示芯片,CPU就可以承担更多的其他任务,对于经常需要多任务运行的用户更为重要。硬件解码器的存在是因为音频视频数据存储要先通过压缩,否则数据量太庞大,而压缩需要通过一定的编码,才能用最小的容量来存贮质量最高的音频视频数据。因此在需要对数据进行播放时要先通过解码器进行解码。
目前视频流的数据处理可以通过独立的硬件解码器处理,一般为GPU处理。虽然用CPU进行软解码也可以实现将水印或字幕信息叠加在视频中,但是处理全程需要CPU参与,CPU占用率过高,效率也比较低,无法满足实时嵌入水印或字幕的需求。而目前的GPU也通过一系列的软件算法将水印或字幕信息加载到视频中,但是处理难度较大,处理效率也不够高。
而本发明中,CPU和GPU共同协作完成嵌入水印或字幕的功能。本步骤中,水印或字幕的信息数据由CPU处理为YUV格式的位图,而YUV格式渲染为RGBA格式的位图由GPU完成,CPU参与进来的工作量也不高,基本不影响CPU的正常工作。
从具体过程来看,本步骤实现如下:将水印或字幕的信息数据由CPU处理为YUV格式的位图并传入显存,从显存中读取所述YUV格式的位图,由GPU渲染为RGBA格式的位图,将RGBA格式的位图存储于显存。
步骤S2、将当前视频流使用GPU解码为YUV格式的视频帧,然后由GPU渲染为RGBA格式的视频帧。
前述已说明,视频流的处理是通过GPU完成。本步骤中,GPU将视频流解码为YUV格式的视频帧,然后再渲染为RGBA格式的视频帧。本步骤具体实现过程为:将当前视频流使用GPU解码为YUV格式的视频帧,并存储于显存,从显存中读取所述YUV格式的视频帧,由GPU渲染RGBA格式的视频帧,将RGBA格式的视频帧存储于显存。
步骤S3、将所述RGBA格式的位图与RGBA格式的视频帧用GPU硬图层叠加处理。
GPU能够实现多个图层显示,不同图层对应显存的一块显示区域,图层显示区域的显示内容均能够设置,图层间可以进行叠加。本步骤截图过程如下:
S31、根据窗口显示大小创建显示视频帧的第一硬图层,以及根据水印或字幕的显示尺寸创建显示水印或字幕的第二硬图层,每个硬图层对应一块显存区域,硬图层用于显示对应显存区域中的数据。
S32、:GPU将RGBA格式的视频帧根据窗口显示大小进行缩放,并拷贝至第一硬图层对应的显存区域。
S33、将第二硬图层设置为透明图层,GPU将RGBA格式的位图根据水印或字幕的显示尺寸进行缩放,并拷贝至第二硬图层对应的显存区域。
窗口显示大小为屏幕像素显示大小,而视频流的分辨率和大小不一定和当前屏幕完全一致,因此需GPU需要将视频流进行缩放。在缩放前,需要根据窗口显示大小创建一个硬图层,这里记为第一硬图层,该硬图层用于显示视频帧,另外,还要根据设置的水印或字幕的显示尺寸也创建一个硬图层,这里记为第二硬图层,该硬图层用于显示水印或字幕。将RGBA格式的视频帧和位图均保存至相应硬图层对应的显存区域内,同时为了显示效果需要将第二硬图层设置为透明图层,即背景透明。
步骤S4、GPU将叠加后的图像输出到屏幕。
最后,GPU将两个硬图层的显存区域中读取图像数据输出至屏幕,水印或字幕的第二硬图层在视频显示的第一硬图层之上,且第二硬图层应显示在相应的预设位置,这样就能够高效得到视频中嵌入水印或字幕的效果。
GPU硬图层是一种将一块显存中RGB图像直接映射到显示区域的技术,设置好硬图层后,图层中图像就会在屏幕中显示,无需依赖图形系统或窗口管理器。因此本发明向硬解码视频中嵌入水印或字幕,无需CPU进行视频叠加处理,进一步提高效率,降低CPU占用率,满足实时性要求。
综上,本发明的发明点有两点,第一点是水印与字幕信息通过CPU处理为YUV的格式位图,而由YUV转RGBA格式由GPU处理,而视频均由GPU处理;另一个关键点是本发明实现字幕或水印叠加到视频的方法,采用的是GPU硬图层叠加的方式,GPU芯片有多个硬图层,能够很方便实现硬图层叠加,同时将水印或字幕的显示图层背景设置为透明图层,能够有较好的显示效果,满足实时显示的场景。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,其特征在于,所述方法包括下述步骤:
步骤S1、将水印或字幕的信息数据由CPU处理为YUV格式的位图,然后由GPU渲染为RGBA格式的位图;
步骤S2、将当前视频流使用GPU解码为YUV格式的视频帧,然后由GPU渲染为RGBA格式的视频帧;
步骤S3、将所述RGBA格式的位图与RGBA格式的视频帧用GPU硬图层叠加处理;
步骤S4、GPU将叠加后的图像输出到屏幕。
2.如权利要求1所述基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,其特征在于,步骤S1的具体过程如下:将水印或字幕的信息数据由CPU处理为YUV格式的位图并传入显存,从显存中读取所述YUV格式的位图,由GPU渲染为RGBA格式的位图,将RGBA格式的位图存储于显存。
3.如权利要求2所述基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,其特征在于,步骤S2的具体过程如下:将当前视频流使用GPU解码为YUV格式的视频帧,并存储于显存,从显存中读取所述YUV格式的视频帧,由GPU渲染RGBA格式的视频帧,将RGBA格式的视频帧存储于显存。
4.如权利要求3所述基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,其特征在于,步骤S3的具体过程如下:
S31、根据窗口显示大小创建显示视频帧的第一硬图层,以及根据水印或字幕的显示尺寸创建显示水印或字幕的第二硬图层,每个硬图层对应一块显存区域,硬图层用于显示对应显存区域中的数据;
S32、:GPU将RGBA格式的视频帧根据窗口显示大小进行缩放,并拷贝至第一硬图层对应的显存区域;
S33、将第二硬图层设置为透明图层,GPU将RGBA格式的位图根据水印或字幕的显示尺寸进行缩放,并拷贝至第二硬图层对应的显存区域。
5.如权利要求4所述基于GPU硬图层的硬解码视频嵌入水印或字幕的方法,其特征在于,步骤S4的具体过程如下:GPU将两个硬图层的显存区域中读取的图像数据输出至屏幕,水印或字幕的第二硬图层在视频显示的第一硬图层之上,且显示在预设位置。
CN202311484945.0A 2023-11-09 2023-11-09 基于gpu硬图层的硬解码视频嵌入水印或字幕的方法 Pending CN117499755A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311484945.0A CN117499755A (zh) 2023-11-09 2023-11-09 基于gpu硬图层的硬解码视频嵌入水印或字幕的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311484945.0A CN117499755A (zh) 2023-11-09 2023-11-09 基于gpu硬图层的硬解码视频嵌入水印或字幕的方法

Publications (1)

Publication Number Publication Date
CN117499755A true CN117499755A (zh) 2024-02-02

Family

ID=89675946

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311484945.0A Pending CN117499755A (zh) 2023-11-09 2023-11-09 基于gpu硬图层的硬解码视频嵌入水印或字幕的方法

Country Status (1)

Country Link
CN (1) CN117499755A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118138832A (zh) * 2024-05-06 2024-06-04 武汉凌久微电子有限公司 一种基于gpu硬图层的网络视频流显示方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118138832A (zh) * 2024-05-06 2024-06-04 武汉凌久微电子有限公司 一种基于gpu硬图层的网络视频流显示方法
CN118138832B (zh) * 2024-05-06 2024-07-26 武汉凌久微电子有限公司 一种基于gpu硬图层的网络视频流显示方法

Similar Documents

Publication Publication Date Title
JP3177221B2 (ja) 興味深いシーンのイメージを表示するための方法及び装置
JP5180344B2 (ja) 高ダイナミックレンジ画像データを復号化するための装置及び方法、表示用画像を処理可能なビューア、ならびに表示装置
CN112204993B (zh) 使用重叠的被分区的分段的自适应全景视频流式传输
US11941748B2 (en) Lightweight view dependent rendering system for mobile devices
US8306399B1 (en) Real-time video editing architecture
JP2008503914A (ja) 2つの高解像度画像をダウンスケール及び混合する装置及び方法
TW200809692A (en) Playback apparatus and playback method using the playback apparatus
CN117499755A (zh) 基于gpu硬图层的硬解码视频嵌入水印或字幕的方法
CN112511896A (zh) 一种视频渲染方法及装置
US7580041B1 (en) Direct storage of compressed scan converted data
WO2023193524A1 (zh) 直播视频处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品
US6519286B1 (en) Method and apparatus for decoding a stream of data
WO2023280266A1 (zh) 鱼眼图像压缩、鱼眼视频流压缩以及全景视频生成方法
KR101169994B1 (ko) 알파 평면을 이용한 영상 데이터 처리 장치 및 방법
JP4402088B2 (ja) 画像処理方法および装置およびこれらを利用した電子機器
WO2022183517A1 (zh) 一种连续动态图像中空间信息的编码方法
CN114640882B (zh) 视频处理方法、装置、电子设备及计算机可读存储介质
CN114567793A (zh) 直播互动特效的实现方法及装置、存储介质、电子设备
CN116962743A (zh) 视频图像编码、抠图方法和装置及直播系统
CN114071153A (zh) 具有软硬件联合解码功能的多格式高清视频解码系统
CN118138832B (zh) 一种基于gpu硬图层的网络视频流显示方法
WO2022141636A1 (en) Methods and systems for processing video streams with layer information
WO2024120031A1 (zh) 处理视频数据的方法、装置、计算机设备和存储介质
CN114339338B (zh) 一种基于车载视频的图像自定义渲染方法及存储介质
JP2000278644A (ja) ノンリニアビデオ編集装置およびその方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination