CN111355978A - 视频文件的处理方法、装置、移动终端及存储介质 - Google Patents

视频文件的处理方法、装置、移动终端及存储介质 Download PDF

Info

Publication number
CN111355978A
CN111355978A CN201811574273.1A CN201811574273A CN111355978A CN 111355978 A CN111355978 A CN 111355978A CN 201811574273 A CN201811574273 A CN 201811574273A CN 111355978 A CN111355978 A CN 111355978A
Authority
CN
China
Prior art keywords
video
video file
texture
client
rendered
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.)
Granted
Application number
CN201811574273.1A
Other languages
English (en)
Other versions
CN111355978B (zh
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.)
Douyin Vision Co Ltd
Douyin Vision Beijing Co Ltd
Original Assignee
Beijing ByteDance Network Technology 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 Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN201811574273.1A priority Critical patent/CN111355978B/zh
Publication of CN111355978A publication Critical patent/CN111355978A/zh
Application granted granted Critical
Publication of CN111355978B publication Critical patent/CN111355978B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Television Signal Processing For Recording (AREA)
  • Image Processing (AREA)

Abstract

本公开提供了一种视频文件的处理方法、装置、移动终端及存储介质,其中,方法包括:解码基于移动终端的视频客户端得到的视频文件,得到对应的视频帧图像;将所述视频帧图像渲染到纹理,得到相应渲染后的纹理;基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件;对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件。

Description

视频文件的处理方法、装置、移动终端及存储介质
技术领域
本公开涉及媒体播放技术,尤其涉及一种视频文件的处理方法、装置、移动终端及存储介质。
背景技术
短视频应用程序(APP,Application),在用户进行视频发布的时候,存在合成两份视频文件的需求,一份用于发布上传,另一份用于分享,以拉动新增用户。然而,相关技术中的短视频APP只能单独的生成用于发布上传的视频文件及用于分享的视频文件,无法同时获得上述两份视频文件,用户体验差。
发明内容
有鉴于此,本公开实施例提供一种视频文件的处理方法、装置、移动终端及存储介质。
第一方面,本公开实施例提供一种视频文件的处理方法,所述方法包括:
解码基于移动终端的视频客户端得到的视频文件,得到对应的视频帧图像;
将所述视频帧图像渲染到纹理,得到相应渲染后的纹理;
基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件;
对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
上述方案中,所述基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件,包括:
响应于图形处理器(GPU,Graphics Processing Unit)发送的编码指令,采用数字信号处理器(DSP,Digital Signal Processing)对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
上述方案中,所述基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件,包括:
CPU读取所述渲染后的纹理至内存,得到对应所述内存中的图像;
采用CPU对所述内存中的图像进行编码,得到用于所述视频客户端发布的视频文件。
上述方案中,所述基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件,包括:
初始化用于对所述渲染后的纹理进行编码的DSP;
确定所述初始化成功时,采用所述DSP对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件;
确定所述初始化失败时,采用CPU对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
上述方案中,所述对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件,包括:
解码所述第一视频文件,得到所述第一视频文件的视频帧图像;
将所述第一视频文件的视频帧图像渲染到纹理,得到添加有水印的纹理;
采用硬件编码的方式,对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
上述方案中,所述将所述视频帧图像渲染到纹理,得到相应渲染后的纹理,包括:
加载内存中的所述视频帧图像至GPU,得到相应的纹理;
采用GPU对得到的所述纹理进行渲染,得到所述渲染后的纹理。
第二方面,本公开实施例还提供了一种视频文件的处理装置,所述装置包括:
第一解码单元,用于解码基于移动终端的视频客户端得到的视频文件,得到对应的视频帧图像;
第一渲染单元,用于将所述视频帧图像渲染到纹理,得到相应渲染后的纹理;
第一编码单元,用于基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件;
加水印单元,用于对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
上述方案中,所述第一编码单元采用DSP实现;
所述第一编码单元,还用于响应于GPU发送的编码指令,对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
上述方案中,所述第一编码单元采用CPU实现;
所述第一编码单元,还用于读取所述渲染后的纹理至内存,得到对应所述内存中的图像;
对所述内存中的图像进行编码,得到用于所述视频客户端发布的第一视频文件。
上述方案中,所述装置还包括初始化单元;
所述初始化单元,用于初始化用于对所述渲染后的纹理进行编码的DSP;
确定所述初始化成功时,调用所述DSP对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件;
确定所述初始化失败时,触发CPU对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
上述方案中,所述加水印单元包括:
第二解码单元,用于解码所述第一视频文件,得到所述第一视频文件的视频帧图像;
第二渲染单元,用于将所述第一视频文件的视频帧图像渲染到纹理,得到添加有水印的纹理;
第二编码单元,用于采用硬件编码的方式,对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
上述方案中,所述第一渲染单元,还用于加载内存中的所述视频帧图像至GPU,得到相应的纹理;
对得到的所述纹理进行渲染,得到所述渲染后的纹理。
第三方面,本公开实施例还提供一种移动终端,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本公开实施例提供的所述视频文件的处理方法。
第四方面,本公开实施例还提供一种存储介质,存储有可执行指令,所述可执行指令被执行时,用于实现本公开实施例提供的所述视频文件的处理方法。
应用本公开上述实施例具有以下有益效果:
应用本公开上述实施例,能够基于移动终端的视频客户端得到的视频文件,在一次处理中同时获得用于视频客户端发布的视频文件,以及用于分享至其它客户端的添加有水印的视频文件,相较于单独获得上述两份视频文件来说,耗时短、效率高,用户体验好。
附图说明
图1为本公开实施例提供的视频文件的处理***的架构示意图;
图2为实现本公开实施例提供的移动终端的组成结构示意图;
图3为本公开实施例提供的视频文件的处理方法的流程示意图;
图4为本公开实施例提供的视频客户端的一个界面示意图;
图5为本公开实施例提供的视频文件的处理方法的流程示意图;
图6为本公开实施例提供的视频文件的处理方法的流程示意图;
图7为本公开实施例提供的视频文件的处理装置的组成结构示意图。
具体实施方式
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开实施例的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本公开实施例。
本公开实施例提供的附图中的流程图和框图,图示了按照本公开实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
需要指出,本公开实施例所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本公开实施例能够以除了在这里图示或描述的以外的顺序实施。
对本公开实施例进行进一步详细说明之前,对本公开实施例中涉及的名词和术语进行说明,本公开实施例中涉及的名词和术语适用于如下的解释。
1)水印,是指向多媒体(图像、视频等)中添加某些数字信息以达到文件真伪鉴别、版权保护等功能,嵌入的水印设置于宿主文件中,不影响原始文件的可观性和完整性。
2)纹理,视频帧中的对象在颜色、几何上有规律的特性,以视频帧中各纹理像素的纹理坐标和对应的颜色值表示。
3)响应于,用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
参见图1,图1是本公开实施例提供的视频文件的处理***的一个可选的架构示意图,为实现支撑一个示例性应用,移动终端10(示例性示出了移动终端10-1和移动终端10-2)通过网络20连接服务器30,网络20可以是广域网或者局域网,又或者是二者的组合,使用无线链路实现数据传输。
移动终端10上设置有视频客户端(如视频直播客户端),通过视频客户端获取原始视频文件,对该原始视频文件进行解码,得到对应的视频帧图像;将所述视频帧图像渲染到纹理,得到相应渲染后的纹理;基于所述渲染后的纹理,采用并行处理的方式,分别合成用于所述视频客户端发布的视频文件,以及,合成用于分享至其它客户端的添加有水印的视频文件;
相应的,移动终端10还用于通过所述视频客户端在图形界面110(示例性示出了图形界面110-1和图形界面110-2)上显示其它移动终端发布的视频。
服务器30,用于接收移动终端10通过所述视频客户端发布的视频文件,使得其他移动终端能够通过所述视频客户端播放所述视频文件;
以及用于接收移动终端10通过所述视频客户端发送的分享至其它客户端的添加有水印的视频文件,使得移动终端能够通过被分享的所述其它客户端播放所述添加有水印的视频文件。
下面参见图2,图2是实现本公开实施例的移动终端的组成结构示意图。在本公开实施例中,移动终端包括但不限于诸如移动电话、个人数字助理(PDA,PersonalDigitalAssistant)、平板电脑(PAD)、便携式多媒体播放器(PMP,Portable Media Player)、车载终端(例如车载导航终端)等等的移动终端。图2示出的移动终端仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图2所示,移动终端可以包括处理装置(例如中央处理器、图形处理器等)210,其可以根据存储在只读存储器(ROM,Read-Only Memory)220中的程序或者从存储装置280加载到随机访问存储器(RAM,Random Access Memory)230中的程序而执行各种适当的动作和处理。在RAM 230中,还存储有移动终端操作所需的各种程序和数据。处理装置210、ROM 220以及RAM230通过总线240彼此相连。输入/输出(I/O,Input/Output)接口250也连接至总线240。
通常,以下装置可以连接至I/O接口250:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置260;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置270;包括例如磁带、硬盘等的存储装置280;以及通信装置290。通信装置290可以允许移动终端与其他设备进行无线或有线通信以交换数据。虽然图2示出了具有各种装置的移动终端,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,所提供的流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,计算机程序可以通过通信装置290从网络上被下载和安装,或者从存储装置280被安装,或者从ROM220被安装。在计算机程序被处理装置210执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、射频(RF)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述移动终端中所包含的;也可以是单独存在,而未装配入移动终端中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该移动终端执行时,使得移动终端执行本公开实施例提供的上述视频文件的处理方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)和广域网(WAN),以连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
描述于本公开实施例中所涉及到的单元和/或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。
对于硬件的方式来说,实现本公开实施例的移动终端的单元和/或模块可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件实现,用于执行实现本公开实施例提供的方法。
图3为本公开实施例提供的视频文件的处理方法的流程示意图,参见图3,本公开实施例的视频文件的处理方法包括:
步骤301:解码基于移动终端的视频客户端得到的视频文件,得到对应的视频帧图像。
在实际应用中,本公开实施例的视频文件的处理方法可由移动终端(如手机)来实施,移动终端上设置有视频客户端(如直播客户端、短视频APP等),用户通过移动终端中安装的视频客户端进行视频录制,得到原始视频文件,在视频录制过程中,用户可通过视频客户端对录制的视频进行编辑,如添加特效、滤镜等,以合成添加有特效或滤镜的视频文件并通过视频客户端进行发布。
图4为本公开实施例提供的视频客户端的一个界面示意图,参见图4,用户通过该视频客户端完成视频录制后,可点击“发布”按键实现具备特效处理的视频文件的合成,当用户同时勾选界面上的“保存本地”后,可实现同时合成两份视频文件,一份用于视频客户端(如视频客户端A)发布,另一份用于保存并分享至其它视频客户端(如视频客户端B),这里所说的其它视频客户端与所述移动终端上的所述视频客户端为不同的应用程序,功能可以相同或不同。
在实际实施中,移动终端接收到用户通过所述视频客户端的界面触发的视频合成指令,对基于所述视频客户端得到的视频文件进行解码,得到对应的视频帧图像,在一实施例中,移动终端可通过如下方式实现视频帧图像的获得:
基于视频文件的封装格式,对基于所述视频客户端得到的视频文件解码,得到内存中的视频帧图像(即buffer)。
步骤302:将所述视频帧图像渲染到纹理,得到相应渲染后的纹理。
在一实施例中,可通过如下方式实现所述渲染后的纹理的获得:
加载内存中的视频帧图像至GPU,得到相应的纹理(texture);采用GPU对得到的纹理进行渲染,得到所述渲染后的纹理。这里所述的渲染用于添加特效或滤镜等,因此,对纹理进行渲染后得到的纹理为添加特效/滤镜的纹理。
步骤303:基于渲染后的纹理,编码得到用于视频客户端发布的第一视频文件。
在一实施例中,可采用硬件编码的方式实现用于视频客户端发布的第一视频文件的合成,具体地,GPU在得到渲染后的纹理之后,发送编码指令给DSP,DSP响应于GPU发送的编码指令,对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。其中,上述DSP可集成于GPU上,或与GPU独立存在,如此,由于编码合成用于发布的视频文件的过程,通过专门的硬件DSP来实现,使得相较于采用软件编码的方式来说处理速度更快,效率更高,用户体验更好。
在一实施例中,还可采用软件编码的方式实现用于视频客户端发布的第一视频文件的合成,具体地,CPU读取所述渲染后的纹理至内存,得到对应所述内存中的图像(buffer);对所述内存中的图像进行编码,得到用于所述视频客户端发布的视频文件。如此,由于编码合成用于发布的视频文件的过程通过CPU实现,使得相较于采用硬件编码的方式来说得到的视频文件的大小更小,所占用的移动终端的存储空间更小。
基于本公开上述实施例,在实际应用中,可针对实际应用场景的需要(如需要处理速度快/需要视频文件较小)进行对应第一视频文件的编码方式的选取。例如,对于时效性要求较高的情况,采用硬件编码的方式进行视频文件的合成,而要求视频文件较小时,采用软件编码的方式进行视频文件的合成。
在实际应用中,可对用于视频客户端发布的第一视频文件的编码方式设定相应的优先级,例如可设定优先采用硬件编码的方式,在实际实施时,对用于对渲染后的纹理进行编码的DSP进行初始化,并判断初始化是否成功,当DSP初始化成功(即DSP成功启动)时,采用硬编码的方式,即采用所述DSP对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件;当DSP初始化失败时,再采用优先级较低的软编码的方式,即采用CPU对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。如此,优先保证第一视频文件的合成速度,在硬件可靠性低无法保证合成速度的情况下,保证第一视频文件的顺利合成,使得用户始终有良好的使用体验。
在实际应用中,移动终端得到第一视频文件以后,可以基于视频客户端上传第一视频文件至服务器,以实现第一视频文件的发布,当用户通过移动终端中的该视频客户端触发获取指令(如点击对应第一视频文件的相关信息(链接、图标等))时,向所述服务器请求并获取第一视频文件进行播放。
步骤304:对第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
在本公开实施例中,添加有水印的第二视频文件基于第一视频文件得到,也就是说,用于视频客户端发布的第一视频文件的合成,与用于分享至其它视频客户端的添加有水印的第二视频文件的合成,采用的是串行的处理方案,如此,能够在一次处理过程中合成两份具备不同用途的视频文件(不加水印的特效视频文件及添加有水印的视频文件),大大缩短了单独的生成每个视频文件所需要的时间,提高了用户体验,在一实施例中,可通过如下方式合成用于分享至其它视频客户端的添加有水印的第二视频文件:
解码所述第一视频文件,得到所述第一视频文件的视频帧图像;将所述第一视频文件的视频帧图像渲染到纹理,得到添加有水印的纹理;采用硬件编码的方式,对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
在实际实施时,解码第一视频文件,得到内存中的第一视频文件的视频帧图像,加载第一视频文件的视频帧图像至GPU,得到相应的纹理;采用GPU对得到的所述纹理进行渲染,得到所述渲染后的纹理;GPU对所述渲染后的纹理进行渲染,得到添加有水印的纹理;并采用硬件DSP的编码方式对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。如此,当用户进行视频文件分享时,例如,通过视频客户端A得到添加有水印的视频文件,用户通过视频客户端A将添加有水印的视频文件分享至视频客户端B,由于该视频文件携带水印,可实现对该视频文件的版权保护。
图5为本公开实施例提供的视频文件的处理方法的流程示意图,图6为本公开实施例提供的视频文件的处理方法的另一流程示意图,该方法应用于移动终端,该移动终端上设置有视频客户端,结合图5及图6,本公开实施例的视频文件的处理方法包括:
步骤501:移动终端接收到视频合成指令。
在实际应用中,参见图4,当用户基于视频客户端录制视频完成时,在勾选“保存本地”的情况下点击“发布”按键,触发视频合成指令,该视频合成指令指示合成用于视频客户端发布的视频文件,以及,用于保存和/或分享至其它视频客户端的添加有水印的视频文件。
步骤502:响应于所述视频合成指令,获取基于视频客户端得到的视频文件。
这里,在实际应用中,基于视频客户端得到的视频文件为用户通过该视频客户端录制的原始视频文件。
步骤503:解码得到的视频文件,得到对应的视频帧图像。
在一实施例中,移动终端可通过如下方式实现视频帧图像的获得:
基于视频文件的封装格式,对基于所述视频客户端得到的视频文件解码,得到内存中的视频帧图像(即buffer),即图6中对原始视频进行解码得到buffer。
步骤504:将所述视频帧图像渲染到纹理,得到相应渲染后的纹理。
在一实施例中,可通过如下方式实现所述渲染后的纹理的获得:
加载内存中的视频帧图像至GPU,得到相应的纹理(texture);采用GPU对得到的纹理进行渲染,得到所述渲染后的纹理,即图6中加载buffer至GPU得到原始texture,对原始texture进行渲染得到渲染后的texture。这里所述的渲染用于对纹理添加特效或滤镜等,因此,对纹理进行渲染后得到的纹理为添加特效/滤镜的纹理。
步骤505:对渲染后的纹理进行编码,得到用于视频客户端发布的第一视频文件。
这里,对渲染后的纹理进行编码可以采用硬件编码方式或软件编码方式,当采用硬件编码方式时,在实际实施时,采用集成于GPU的DSP对渲染后的纹理进行编码,得到用于视频客户端发布的第一视频文件,即图6中对渲染后texture编码得到合成视频文件;当采用软件编码方式时,在实际实施时,CPU读取渲染后的纹理至内存,得到对应所述内存中的图像;CPU对所述内存中的图像进行编码,得到用于所述视频客户端发布的第一视频文件。
步骤506:解码第一视频文件,得到所述第一视频文件的视频帧图像。
这里,对第一视频文件解码的方式与对视频客户端得到的视频文件解码的方式相同。
步骤507:将第一视频文件的视频帧图像渲染到纹理,得到添加有水印的纹理。
在实际实施时,加载内存中第一视频文件的视频帧图像至GPU,得到相应的纹理(texture);采用GPU对得到的纹理进行渲染,得到添加有水印的纹理。
步骤508:对添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
在实际应用中,可采用硬件编码的方式对添加有水印的纹理进行编码,如采用DSP对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的视频文件。
应用本公开上述实施例,能够在一次处理流程结束时得到两份具备不同用途的视频文件(第一视频文件及第二视频文件),相较于分别单独的去获取该两份视频文件,耗时短,用户体验好。
在实际应用中,移动终端得到第一视频文件及第二视频文件以后,可以基于视频客户端上传得到的视频文件至服务器,以实现视频文件的发布,当用户通过该视频客户端触发获取指令(如点击对应视频文件的相关信息(链接、图标等))时,移动终端向服务器请求并获取视频文件进行播放。
在一实施例中,移动终端在得到第二视频文件之后,保存第二视频文件至移动终端本地,以在接收到用户触发的分享指令(用于指示分享第二视频文件至其它视频客户端)时,通过视频客户端分享第二视频文件至其它视频客户端。
在一实施例中,移动终端在得到第二视频文件之后,还可在视频客户端的界面中呈现分享提示信息给用户,并在接收到用户触发的确认消息时分享所述第二视频文件。
图7为本公开实施例提供的视频文件的处理装置的组成结构示意图,参见图7,本公开实施例提供的视频文件的处理装置包括:
第一解码单元71,用于解码基于移动终端的视频客户端得到的视频文件,得到对应的视频帧图像;
第一渲染单元72,用于将所述视频帧图像渲染到纹理,得到相应渲染后的纹理;
第一编码单元73,用于基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件;
加水印单元74,用于对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
在一实施例中,所述第一编码单元采用DSP实现;
所述第一编码单元,还用于响应于图形处理器GPU发送的编码指令,对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
在一实施例中,所述第一编码单元采用CPU实现;
所述第一编码单元,还用于读取所述渲染后的纹理至内存,得到对应所述内存中的图像;
对所述内存中的图像进行编码,得到用于所述视频客户端发布的第一视频文件。
在一实施例中,所述装置还包括初始化单元;
所述初始化单元,用于初始化用于对所述渲染后的纹理进行编码的DSP;
确定所述初始化成功时,调用所述DSP对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件;
确定所述初始化失败时,触发CPU对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
在一实施例中,所述加水印单元包括:
第二解码单元,用于解码所述第一视频文件,得到所述第一视频文件的视频帧图像;
第二渲染单元,用于将所述第一视频文件的视频帧图像渲染到纹理,得到添加有水印的纹理;
第二编码单元,用于采用硬件编码的方式,对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
在一实施例中,所述第一渲染单元,还用于加载内存中的所述视频帧图像至GPU,得到相应的纹理;
对得到的所述纹理进行渲染,得到所述渲染后的纹理。
相应的,本公开实施例还提供了一种存储介质,存储有可执行指令,所述可执行指令被执行时,用于实现本公开实施例提供的上述视频文件的处理方法。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。

Claims (14)

1.一种视频文件的处理方法,其特征在于,所述方法包括:
解码基于移动终端的视频客户端得到的视频文件,得到对应的视频帧图像;
将所述视频帧图像渲染到纹理,得到相应渲染后的纹理;
基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件;
对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
2.如权利要求1所述的方法,其特征在于,所述基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件,包括:
响应于图形处理器GPU发送的编码指令,采用数字信号处理器DSP对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
3.如权利要求1所述的方法,其特征在于,所述基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件,包括:
中央处理器CPU读取所述渲染后的纹理至内存,得到对应所述内存中的图像;
采用CPU对所述内存中的图像进行编码,得到用于所述视频客户端发布的视频文件。
4.如权利要求1所述的方法,其特征在于,所述基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件,包括:
初始化用于对所述渲染后的纹理进行编码的DSP;
确定所述初始化成功时,采用所述DSP对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件;
确定所述初始化失败时,采用CPU对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
5.如权利要求1所述的方法,其特征在于,所述对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件,包括:
解码所述第一视频文件,得到所述第一视频文件的视频帧图像;
将所述第一视频文件的视频帧图像渲染到纹理,得到添加有水印的纹理;
采用硬件编码的方式,对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
6.如权利要求1至5任一项所述的方法,其特征在于,所述将所述视频帧图像渲染到纹理,得到相应渲染后的纹理,包括:
加载内存中的所述视频帧图像至GPU,得到相应的纹理;
采用GPU对得到的所述纹理进行渲染,得到所述渲染后的纹理。
7.一种视频文件的处理装置,其特征在于,所述装置包括:
第一解码单元,用于解码基于移动终端的视频客户端得到的视频文件,得到对应的视频帧图像;
第一渲染单元,用于将所述视频帧图像渲染到纹理,得到相应渲染后的纹理;
第一编码单元,用于基于所述渲染后的纹理,编码得到用于所述视频客户端发布的第一视频文件;
加水印单元,用于对所述第一视频文件进行添加水印处理,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
8.如权利要求7所述的装置,其特征在于,所述第一编码单元采用数字信号处理器DSP实现;
所述第一编码单元,还用于响应于图形处理器GPU发送的编码指令,对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
9.如权利要求7所述的装置,其特征在于,所述第一编码单元采用中央处理器CPU实现;
所述第一编码单元,还用于读取所述渲染后的纹理至内存,得到对应所述内存中的图像;
对所述内存中的图像进行编码,得到用于所述视频客户端发布的第一视频文件。
10.如权利要求7所述的装置,其特征在于,所述装置还包括初始化单元;
所述初始化单元,用于初始化用于对所述渲染后的纹理进行编码的DSP;
确定所述初始化成功时,调用所述DSP对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件;
确定所述初始化失败时,触发CPU对所述渲染后的纹理进行编码,得到用于所述视频客户端发布的第一视频文件。
11.如权利要求7所述的装置,其特征在于,所述加水印单元包括:
第二解码单元,用于解码所述第一视频文件,得到所述第一视频文件的视频帧图像;
第二渲染单元,用于将所述第一视频文件的视频帧图像渲染到纹理,得到添加有水印的纹理;
第二编码单元,用于采用硬件编码的方式,对所述添加有水印的纹理进行编码,得到用于分享至其它视频客户端的添加有水印的第二视频文件。
12.如权利要求7至11任一项所述的装置,其特征在于,
所述第一渲染单元,还用于加载内存中的所述视频帧图像至GPU,得到相应的纹理;
对得到的所述纹理进行渲染,得到所述渲染后的纹理。
13.一种移动终端,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现如权利要求1至6任一项所述的视频文件的处理方法。
14.一种存储介质,其特征在于,存储有可执行指令,所述可执行指令被执行时,用于实现权利要求1至6任一项所述的视频文件的处理方法。
CN201811574273.1A 2018-12-21 2018-12-21 视频文件的处理方法、装置、移动终端及存储介质 Active CN111355978B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811574273.1A CN111355978B (zh) 2018-12-21 2018-12-21 视频文件的处理方法、装置、移动终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811574273.1A CN111355978B (zh) 2018-12-21 2018-12-21 视频文件的处理方法、装置、移动终端及存储介质

Publications (2)

Publication Number Publication Date
CN111355978A true CN111355978A (zh) 2020-06-30
CN111355978B CN111355978B (zh) 2022-09-06

Family

ID=71198017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811574273.1A Active CN111355978B (zh) 2018-12-21 2018-12-21 视频文件的处理方法、装置、移动终端及存储介质

Country Status (1)

Country Link
CN (1) CN111355978B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113810640A (zh) * 2021-08-12 2021-12-17 荣耀终端有限公司 视频处理方法、装置及电子设备
CN114845162A (zh) * 2021-02-01 2022-08-02 北京字节跳动网络技术有限公司 视频播放方法、装置、电子设备及存储介质
CN116235500A (zh) * 2020-09-30 2023-06-06 斯纳普公司 生成用于分享到外部应用的媒体内容项

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102638658A (zh) * 2012-03-01 2012-08-15 盛乐信息技术(上海)有限公司 音视频编辑方法及***
CN106506335A (zh) * 2016-11-10 2017-03-15 北京小米移动软件有限公司 分享视频文件的方法及装置
CN107277616A (zh) * 2017-07-21 2017-10-20 广州爱拍网络科技有限公司 视频特效渲染方法、装置及终端
WO2018024179A1 (zh) * 2016-08-04 2018-02-08 腾讯科技(深圳)有限公司 一种视频处理方法、服务器及终端、计算机存储介质
CN108282164A (zh) * 2017-01-05 2018-07-13 腾讯科技(深圳)有限公司 一种数据编码及解码方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102638658A (zh) * 2012-03-01 2012-08-15 盛乐信息技术(上海)有限公司 音视频编辑方法及***
WO2018024179A1 (zh) * 2016-08-04 2018-02-08 腾讯科技(深圳)有限公司 一种视频处理方法、服务器及终端、计算机存储介质
CN106506335A (zh) * 2016-11-10 2017-03-15 北京小米移动软件有限公司 分享视频文件的方法及装置
CN108282164A (zh) * 2017-01-05 2018-07-13 腾讯科技(深圳)有限公司 一种数据编码及解码方法和装置
CN107277616A (zh) * 2017-07-21 2017-10-20 广州爱拍网络科技有限公司 视频特效渲染方法、装置及终端

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116235500A (zh) * 2020-09-30 2023-06-06 斯纳普公司 生成用于分享到外部应用的媒体内容项
CN114845162A (zh) * 2021-02-01 2022-08-02 北京字节跳动网络技术有限公司 视频播放方法、装置、电子设备及存储介质
CN114845162B (zh) * 2021-02-01 2024-04-02 北京字节跳动网络技术有限公司 视频播放方法、装置、电子设备及存储介质
CN113810640A (zh) * 2021-08-12 2021-12-17 荣耀终端有限公司 视频处理方法、装置及电子设备

Also Published As

Publication number Publication date
CN111355978B (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
WO2022127278A1 (zh) 一种虚拟场景的渲染方法和装置
CN111355978B (zh) 视频文件的处理方法、装置、移动终端及存储介质
CN113457160B (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
US20240184438A1 (en) Interactive content generation method and apparatus, and storage medium and electronic device
CN111447504B (zh) 三维视频的处理方法、装置、可读存储介质和电子设备
WO2022057575A1 (zh) 一种多媒体数据的发布方法、装置、设备及介质
CN110856036A (zh) 远程桌面实现方法、交互方法、装置、设备、存储介质
CN111355997B (zh) 视频文件的生成方法、装置、移动终端及存储介质
CN111355960B (zh) 合成视频文件的方法、装置、移动终端及存储介质
CN112218148A (zh) 屏幕录制方法、装置、计算机设备和计算机可读存储介质
US12041379B2 (en) Image special effect processing method, apparatus, and electronic device, and computer-readable storage medium
CN106688015B (zh) 处理用于当解码图像时对于块的操作的参数
CN112991143A (zh) 一种图元装配的方法、装置及计算机存储介质
CN117065357A (zh) 媒体数据处理方法、装置、计算机设备和存储介质
WO2023024983A1 (zh) 视频录制方法、设备、存储介质及程序产品
CN111385638B (zh) 视频处理方法和装置
CN109640023B (zh) 一种视频录制方法、装置、服务器及存储介质
CN113837918A (zh) 多进程实现渲染隔离的方法及装置
CN111435995B (zh) 用于生成动态图片的方法、装置和***
WO2021043128A1 (zh) 粒子计算方法、装置、电子设备及计算机可读存储介质
CN114845162B (zh) 视频播放方法、装置、电子设备及存储介质
CN111381796B (zh) 一种在客户端上实现ktv功能的处理方法、装置及用户设备
WO2023245494A1 (zh) 从渲染引擎中获取纹理数据的方法及装置、电子设备
CN118276987A (zh) 虚拟人集成中的驱动方法、装置及可读存储介质
CN113893525A (zh) 云游戏运行方法、装置、电子设备及计算机可读介质

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
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: Tiktok vision (Beijing) Co.,Ltd.

CP01 Change in the name or title of a patent holder