CN105898315A - 视频转码方法和装置*** - Google Patents

视频转码方法和装置*** Download PDF

Info

Publication number
CN105898315A
CN105898315A CN201510890653.6A CN201510890653A CN105898315A CN 105898315 A CN105898315 A CN 105898315A CN 201510890653 A CN201510890653 A CN 201510890653A CN 105898315 A CN105898315 A CN 105898315A
Authority
CN
China
Prior art keywords
decoded
decoding
input code
information
code flow
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
CN201510890653.6A
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.)
LeTV Cloud Computing Co Ltd
Original Assignee
LeTV Cloud Computing 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 LeTV Cloud Computing Co Ltd filed Critical LeTV Cloud Computing Co Ltd
Priority to CN201510890653.6A priority Critical patent/CN105898315A/zh
Priority to PCT/CN2016/088713 priority patent/WO2017096823A1/zh
Publication of CN105898315A publication Critical patent/CN105898315A/zh
Priority to US15/247,610 priority patent/US20170163990A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种视频转码方法和装置、***,其中,利用图形处理器GPU对输入码流进行解码,得到解码后的输入码流;利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息;根据所述编码所需的宏块信息,利用中央处理器CPU对所述解码后的输入码流按照目标码率进行编码。利用GPU解码来节省CPU资源,同时对解码流进行码流分析,在不影响转码质量的同时提高整体转码速度,节省转码CPU资源。

Description

视频转码方法和装置***
技术领域
本发明属于互联网视频处理技术领域,具体地说,涉及一种视频转码方法和装置、***。
背景技术
目前随着互联网视频和硬件设备的发展,人们制作视频的成本越来越低,对视频的质量要求也日益提高。视频的分辨率越来越大,高清(1080P,1920x1080)甚至超清(4K,3840x2160)日益普遍。对于视频转码行业而言,视频转码的压力也越来越大。在进行大分辨率视频直播,离线转码时,转码服务器往往处于很高的负荷之下。如何在已有的转码服务器上更有效的利用硬件资源来提高转码速度是业内共同的话题。
发明内容
有鉴于此,本申请提供了一种视频转码方法和装置、***,可以利用GPU解码来节省CPU资源,同时对解码流进行码流分析,在不影响转码质量的同时提高整体转码速度,节省转码CPU资源。
本发明实施例提供一种视频转码方法,包括:
利用图形处理器GPU对输入码流进行解码,得到解码后的输入码流;
利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息;
根据所述编码所需的宏块信息,利用中央处理器CPU对所述解码后的输入码流按照目标码率进行编码。
其中,利用图形处理器GPU对输入码流进行解码,包括:
确定所述GPU是否支持所述输入码流的解码,若支持,则获取所述GPU的解码能力信息;通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码。
其中,利用图形处理器GPU对输入码流进行解码之前,包括:
根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流。
其中,利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息,包括:
利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;
对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
本申请还提供一种视频转码装置,包括:
解码模块,位于图形处理器GPU侧,用于对输入码流进行解码,得到解码后的输入码流;
分析模块,位于中央处理器CPU侧,用于对解码后的输入码流进行分析,得到编码所需的宏块信息;
编码模块,位于中央处理器CPU侧,用于根据所述编码所需的宏块信息,对所述解码后的输入码流按照目标码率进行编码。
其中,所述的装置还包括:
判断模块,用于确定所述GPU是否支持所述输入码流的解码;
获取模块,用于在判断模块确定所述GPU支持所述输入码流的解码,则获取所述GPU的解码能力信息;
发送模块,用于通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码。
其中,所述的装置还包括:
初始化模块,用于根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流。
其中,所述分析模块具体用于:
利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;
对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的宏块信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
本申请还提供一种视频转码***,包括:解码器和编码器;
所述解码器,用于利用图形处理器GPU对输入码流进行解码,得到解码后的输入码流;
所述编码器,用于利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息;根据所述编码所需的宏块信息,利用中央处理器CPU对所述解码后的输入码流按照目标码率进行编码。
其中,所述解码器,还用于确定所述GPU是否支持所述输入码流的解码,若支持,则获取所述GPU的解码能力信息;根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流;通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码;
所述编码器,还用于利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的宏块信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
本提案提出了一种基于GPU和CPU混合的转码架构,主要应用于H.264,HEVC等转码方案。利用GPU解码来节省CPU资源,同时对解码流进行码流分析,在不影响转码质量的同时提高整体转码速度,节省转码CPU资源。该转码架构相比现有转码架构可以节省10%的CPU资源,从而在确保恢复的视频质量的前提下,提高了转码速度,更好地满足了实时视频转码要求。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请实施例提供的一种视频转码方法的流程示意图;
图2为本发明实施例提出的一种CPU+GPU混合转码架构流程图;
图3为本发明实施例提出的一种GPU上完成视频解码的流程图;
图4本发明实施例提出的一种CPU上完成码流分析流程图;
图5是本申请实施例提供的一种视频转码装置的结构示意图。
具体实施方式
以下将配合附图及实施例来详细说明本发明的实施方式,藉此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
如在说明书及权利要求当中调用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。此外,“耦接”一词在此包含任何直接及间接的电性耦接手段。因此,若文中描述一第一装置耦接于一第二装置,则代表所述第一装置可直接电性耦接于所述第二装置,或通过其他装置或耦接手段间接地电性耦接至所述第二装置。说明书后续描述为实施本发明的较佳实施方式,然所述描述乃以说明本发明的一般原则为目的,并非用以限定本发明的范围。本发明的保护范围当视所附权利要求所界定者为准。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者***中还存在另外的相同要素。
发明人在实现本发明的过程中发现:
由于视频分辨率、码率的不断提高,视频解码的复杂度也在不断的提高,视频解码计算所占用的***资源相应的也在持续增加。用CPU(CentralProcessing Unit,中央处理器)进行视频解码(软解码)要占用大量的CPU计算资源,甚至有可能出现CPU计算资源无法满足高分辨率、高码率的需要。
本发明实施例提出了一种新的视频转码***架构,主要应用于H.264,HEVC等各种视频格式的转换。传统转码方案往往全部计算都基于对CPU资源的使用,在高分辨率高质量的转码过程中,CPU资源往往负荷过大,从而影响转码速度。本发明实施例所述的转码***架构特点在于将转码过程中的视频解码工作放在图形处理器(英语:Graphics Processing Unit,缩写:GPU)上完成,仅把解码信息分析的部分放在CPU上,通过有效利用GPU解码缓解CPU计算资源,从而提高整体转码速度。该转码方案可以在完全不影响转码质量的情况下,节省CPU资源,提高转码速度。
图1是本申请实施例提供的一种视频转码方法的流程示意图,如图1所示,包括:
101、利用图形处理器GPU对输入码流进行解码,得到解码后的输入码流;
在一种实施方式中,步骤101具体实现时包括:
首先,确定所述GPU是否支持所述输入码流的解码,若支持,则获取所述GPU的解码能力信息;
根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间;
通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码;
将解码后的所述输入码流保存到上述分配的内存空间。
其中,上述确定GPU是否支持所述输入码流的解码,当有待解码的视频需要进行解码时,应用程序可以通过***程序(如windows操作***)建立与GPU的驱动程序的连接。具体的,应用程序生成DXVA Output(输出)Pin(接口),并使用DXVA Output Pin连接到VMR(Video MixingRenderer,视频混合渲染器)的IAMVideoAccelerator Input Pin(windows***提供的用于应用程序连接GPU驱动程序的接口,可以称之为GPU驱动连接接口,属于DXVA接口的一种),生成相应的Filter Graph(滤镜图,就是多个连接在一起,完成特定功能(比如视频播放,视频捕获)的滤镜的组合)。应用程序建立与GPU的驱动程序的连接之后,可以向驱动程序查询GPU的解码能力信息,驱动程序接收到查询指令后,向应用程序发送GPU的解码能力信息,如该GPU的解码能力信息包括DXVA_ModeH261_B、DXVA_ModeH263_B、DXVA_ModeMPEG1_A、DXVA_ModeMPEG2_B等。
当获取的解码能力信息中存在支持待解码的视频的编码格式的解码能力信息时,应用程序继续查询GPU在该解码能力信息对应的工作模式下是否支持待解码的视频的解码配置信息,如果是,则表明查询结果为GPU能够支持待解码视频的解码。如果获取的解码能力信息中不存在支持待解码的视频的编码格式的解码能力信息,或者查询到GPU在此工作模式下不支持待解码视频的解码配置信息,则表明查询结果为GPU不能够支持待解码视频的解码。具体的,应用程序可以从待解码的视频的文件中获取到该视频的编码格式和解码配置信息,该编码格式可以包括H261、H263、H264、MPEG2等,该解码配置信息可以包括分辨率、码率、缓存帧数、色彩空间格式等信息。具体的,应用程序在驱动程序上报的解码能力信息中查找能够支持待解码视频的编码格式的解码能力信息,如果能够查找到,则进一步将该解码能力信息和待解码视频的解码配置信息发送给GPU驱动程序,以查询GPU在相应的工作模式下是否支持相应的解码配置。
例如(此处解码配置信息仅以分辨率和码率为例说明),某视频的编码格式为H261,分辨率为1280×720,码率2000kbps,并假设GPU支持DXVA_ModeH261_B的工作模式,且在该工作模式下最高可以支持1280×720的分辨率、3000kbps的码率,视频播放器在驱动程序上报的解码能力信息中查找到DXVA_ModeH261_B后,将DXVA_ModeH261_B、1280×720和2000kbps发送给驱动程序,以查询GPU在DXVA_ModeH261_B的工作模式下是否支持1280×720的分辨率和2000kbps的码率,驱动程序会返回“支持”的信息。
102、利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息;
具体地,步骤102在实现时包括:
利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的宏块信息,其中,宏块信息包括:块类型信息、分块模式信息、运动矢量信息、块编码类型(Coded Block Pattern,简称CBP)信息、量化参数和宏块残差等编码所需的信息;宏块编码模式包括:块类型信息、分块模式信息和运动矢量信息。
103、根据所述编码所需的宏块信息,利用中央处理器CPU对所述解码后的输入码流按照目标码率进行编码。
下面以具体实现方式为例对本发明的技术方案进行详细的描述:
图2为本发明实施例提出的一种CPU+GPU混合转码架构流程图,如图2所示,该转码架构主要有两个部分的改进:1.视频的解码在GPU上完成;2.输入解码后的视频信息的分析以及记录在CPU上完成。
为了调用GPU进行视频解码,首先要选择使用可以支持GPU视频解码的服务器,例如intel的E3-1285服务器。图3为本发明实施例提出的一种GPU上完成视频解码的流程图,如图3所示,在转码开始运行之后,当输入码流到达解码端,解码器需要首先初始化GPU解码参数,并为当前帧分配内存空间。初始化GPU参数时,需要参考对应GPU解码模块的调用接口要求,选择适当的设备。分配空间时必须满足GPU解码需求:空间必须32字节对齐,亮度与色差空间之间必须连续。如果采用交由GPU设备来分配内存空间的方式,则需要在初始化GPU时做相应设置。完成之后,即可通过调用GPU视频解码的接口为当前帧进行解码。此时解码过程仅占用GPU资源,不占用任何CPU资源。当GPU解码完成后,会将解码帧填充到之前预分配的内存空间中,至此,GPU解码一帧完成。之后需要将解码帧输出到下游,共转码架构的下一步继续处理。
由于解码过程是在GPU上进行,无法存储输入码流的详细解码信息,所以转码架构需要增加一个分析模块,用于分析并存储输入码流中解码参数,以供接下来的编码器复用。该分析模块运行于CPU上,仅负责码流分析,不做更深一层解码,且没有较大内存操作,其速度远远快于解码。图4本发明实施例提出的一种CPU上完成码流分析流程图,如图4所示,首先需要分析输入码流的头信息,得到熵编码类型。接下来为了得到更具体的码流信息,需要对码流进行熵解码。在熵解码的过程中,丢弃所有解码残差信息,仅记录下宏块类型,运动矢量,宏块编码比特等信息。这些信息将提供给编码器复用。
本提案提出了一种基于GPU和CPU混合的转码架构,主要应用于H.264,HEVC等转码方案。利用GPU解码来节省CPU资源,同时对解码流进行码流分析,在不影响转码质量的同时提高整体转码速度,节省转码CPU资源。该转码架构相比现有转码架构可以节省10%的CPU资源,从而在确保恢复的视频质量的前提下,提高了转码速度,更好地满足了实时视频转码要求。
图5是本申请实施例提供的一种视频转码装置的结构示意图,如图5所示,包括:
解码模块51,位于图形处理器GPU侧,用于对输入码流进行解码,得到解码后的输入码流;
分析模块52,位于中央处理器CPU侧,用于对解码后的输入码流进行分析,得到编码所需的宏块信息;
编码模块53,位于中央处理器CPU侧,用于根据所述编码所需的宏块信息,对所述解码后的输入码流按照目标码率进行编码。
其中,所述的装置还包括:
判断模块53,用于确定所述GPU是否支持所述输入码流的解码;
获取模块54,用于在判断模块确定所述GPU支持所述输入码流的解码,则获取所述GPU的解码能力信息;
发送模块55,用于通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码。
所述的装置还包括:
初始化模块56,用于根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流。
其中,所述分析模块52具体用于:
利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;
对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的宏块信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
图5所示的装置可以执行图1所示的方法,其实现原理和技术效果不再赘述。
本发明实施例还提供一种视频转码***,其特征在于,包括:解码器和编码器;
所述解码器,用于利用图形处理器GPU对输入码流进行解码,得到解码后的输入码流;
所述编码器,用于利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息;根据所述编码所需的宏块信息,利用中央处理器CPU对所述解码后的输入码流按照目标码率进行编码。
所述解码器,还用于确定所述GPU是否支持所述输入码流的解码,若支持,则获取所述GPU的解码能力信息;根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流;通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码;
所述编码器,还用于利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的宏块信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
本发明实施例所述***可以执行图1所示的方法,其实现原理和技术效果不再赘述。
上述说明示出并描述了本发明的若干优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

Claims (10)

1.一种视频转码方法,其特征在于,包括:
利用图形处理器GPU对输入码流进行解码,得到解码后的输入码流;
利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息;
根据所述编码所需的宏块信息,利用中央处理器CPU对所述解码后的输入码流按照目标码率进行编码。
2.如权利要求1所述的方法,其特征在于,利用图形处理器GPU对输入码流进行解码,包括:
确定所述GPU是否支持所述输入码流的解码,若支持,则获取所述GPU的解码能力信息;通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码。
3.如权利要求1或2所述的方法,其特征在于,利用图形处理器GPU对输入码流进行解码之前,包括:
根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流。
4.如权利要求3所述的方法,其特征在于,利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息,包括:
利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;
对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
5.一种视频转码装置,其特征在于,包括:
解码模块,位于图形处理器GPU侧,用于对输入码流进行解码,得到解码后的输入码流;
分析模块,位于中央处理器CPU侧,用于对解码后的输入码流进行分析,得到编码所需的宏块信息;
编码模块,位于中央处理器CPU侧,用于根据所述编码所需的宏块信息,对所述解码后的输入码流按照目标码率进行编码。
6.如权利要求5所述的装置,其特征在于,还包括:
判断模块,用于确定所述GPU是否支持所述输入码流的解码;
获取模块,用于在判断模块确定所述GPU支持所述输入码流的解码,则获取所述GPU的解码能力信息;
发送模块,用于通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码。
7.如权利要求5或6所述的装置,其特征在于,还包括:
初始化模块,用于根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流。
8.如权利要求7所述的装置,其特征在于,所述分析模块具体用于:
利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;
对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的宏块信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
9.一种视频转码***,其特征在于,包括:解码器和编码器;
所述解码器,用于利用图形处理器GPU对输入码流进行解码,得到解码后的输入码流;
所述编码器,用于利用中央处理器CPU对解码后的输入码流进行分析,得到编码所需的宏块信息;根据所述编码所需的宏块信息,利用中央处理器CPU对所述解码后的输入码流按照目标码率进行编码。
10.如权利要求9所述的***,其特征在于:
所述解码器,还用于确定所述GPU是否支持所述输入码流的解码,若支持,则获取所述GPU的解码能力信息;根据与所述解码能力信息对应的解码接口,初始化所述GPU的解码参数,并为所述待解码的输入码流分配内存空间,所述内存空间用于保存解码后的所述输入码流;通过与所述解码能力信息对应的解码接口将所述输入码流发送给所述GPU进行解码;
所述编码器,还用于利用所述CPU分析所述解码后的输入码流的头信息,得到熵编码类型;对所述解码后的输入码流进行熵解码,在熵解码的过程中,丢弃所有解码残差信息,记录下编码所需的宏块信息,其中,所述编码所需的宏块信息包括块类型信息、分块模式信息、运动矢量信息、块编码类型信息、量化参数和宏块残差等编码所需的信息。
CN201510890653.6A 2015-12-07 2015-12-07 视频转码方法和装置*** Pending CN105898315A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201510890653.6A CN105898315A (zh) 2015-12-07 2015-12-07 视频转码方法和装置***
PCT/CN2016/088713 WO2017096823A1 (zh) 2015-12-07 2016-07-05 视频转码方法和装置***
US15/247,610 US20170163990A1 (en) 2015-12-07 2016-08-25 Video transcoding method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510890653.6A CN105898315A (zh) 2015-12-07 2015-12-07 视频转码方法和装置***

Publications (1)

Publication Number Publication Date
CN105898315A true CN105898315A (zh) 2016-08-24

Family

ID=57002853

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510890653.6A Pending CN105898315A (zh) 2015-12-07 2015-12-07 视频转码方法和装置***

Country Status (2)

Country Link
CN (1) CN105898315A (zh)
WO (1) WO2017096823A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107920253A (zh) * 2017-10-31 2018-04-17 北京赛思信安技术股份有限公司 一种基于gpu的视频处理方法
WO2018126975A1 (zh) * 2017-01-09 2018-07-12 阿里巴巴集团控股有限公司 一种全景视频转码方法、装置和设备
CN109213593A (zh) * 2017-07-04 2019-01-15 阿里巴巴集团控股有限公司 用于全景视频转码的资源分配方法、装置和设备
CN110971903A (zh) * 2019-10-17 2020-04-07 西安万像电子科技有限公司 编码方法、设备及***
CN111031389A (zh) * 2019-12-11 2020-04-17 Oppo广东移动通信有限公司 视频处理方法、电子装置和存储介质
CN111246214A (zh) * 2018-11-28 2020-06-05 杭州海康威视数字技术股份有限公司 一种视频解码方法、装置
CN114760495A (zh) * 2022-03-21 2022-07-15 南京芯驰半导体科技有限公司 一种基于视频处理单元的视频硬件解码方法及***

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110475128B (zh) * 2019-08-02 2021-09-28 视联动力信息技术股份有限公司 一种视频转码方法、装置、电子设备和存储介质
CN112788343A (zh) * 2021-02-23 2021-05-11 北京睿芯高通量科技有限公司 一种用于视频处理服务端的软硬件编码协同***、方法及电子装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090016430A1 (en) * 2007-05-11 2009-01-15 Advance Micro Devices, Inc. Software Video Encoder with GPU Acceleration
CN101998117A (zh) * 2009-08-13 2011-03-30 华为技术有限公司 视频转码方法和装置
CN102273205A (zh) * 2008-11-04 2011-12-07 先进微装置公司 以gpu加速的软件视频转码器
CN103260021A (zh) * 2012-02-21 2013-08-21 腾讯科技(深圳)有限公司 一种视频解码方法和装置
CN103491379A (zh) * 2013-09-25 2014-01-01 浙江宇视科技有限公司 一种提升智能分析性能的方法和装置
CN103581665A (zh) * 2012-08-02 2014-02-12 英特尔公司 转码视频数据
CN104980752A (zh) * 2015-06-11 2015-10-14 武汉大千信息技术有限公司 利用cpu和gpu实现多路自适应并行转码的方法及***

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090016430A1 (en) * 2007-05-11 2009-01-15 Advance Micro Devices, Inc. Software Video Encoder with GPU Acceleration
CN102273205A (zh) * 2008-11-04 2011-12-07 先进微装置公司 以gpu加速的软件视频转码器
CN101998117A (zh) * 2009-08-13 2011-03-30 华为技术有限公司 视频转码方法和装置
CN103260021A (zh) * 2012-02-21 2013-08-21 腾讯科技(深圳)有限公司 一种视频解码方法和装置
CN103581665A (zh) * 2012-08-02 2014-02-12 英特尔公司 转码视频数据
CN103491379A (zh) * 2013-09-25 2014-01-01 浙江宇视科技有限公司 一种提升智能分析性能的方法和装置
CN104980752A (zh) * 2015-06-11 2015-10-14 武汉大千信息技术有限公司 利用cpu和gpu实现多路自适应并行转码的方法及***

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018126975A1 (zh) * 2017-01-09 2018-07-12 阿里巴巴集团控股有限公司 一种全景视频转码方法、装置和设备
CN108289228A (zh) * 2017-01-09 2018-07-17 阿里巴巴集团控股有限公司 一种全景视频转码方法、装置和设备
US11153584B2 (en) 2017-01-09 2021-10-19 Alibaba Group Holding Limited Methods, apparatuses and devices for panoramic video transcoding
CN109213593A (zh) * 2017-07-04 2019-01-15 阿里巴巴集团控股有限公司 用于全景视频转码的资源分配方法、装置和设备
CN109213593B (zh) * 2017-07-04 2022-05-10 阿里巴巴集团控股有限公司 用于全景视频转码的资源分配方法、装置和设备
CN107920253B (zh) * 2017-10-31 2020-08-18 北京赛思信安技术股份有限公司 一种基于gpu的视频处理方法
CN107920253A (zh) * 2017-10-31 2018-04-17 北京赛思信安技术股份有限公司 一种基于gpu的视频处理方法
CN111246214A (zh) * 2018-11-28 2020-06-05 杭州海康威视数字技术股份有限公司 一种视频解码方法、装置
CN111246214B (zh) * 2018-11-28 2022-05-06 杭州海康威视数字技术股份有限公司 一种视频解码方法、装置
CN110971903A (zh) * 2019-10-17 2020-04-07 西安万像电子科技有限公司 编码方法、设备及***
CN111031389A (zh) * 2019-12-11 2020-04-17 Oppo广东移动通信有限公司 视频处理方法、电子装置和存储介质
CN111031389B (zh) * 2019-12-11 2022-05-20 Oppo广东移动通信有限公司 视频处理方法、电子装置和存储介质
CN114760495A (zh) * 2022-03-21 2022-07-15 南京芯驰半导体科技有限公司 一种基于视频处理单元的视频硬件解码方法及***

Also Published As

Publication number Publication date
WO2017096823A1 (zh) 2017-06-15

Similar Documents

Publication Publication Date Title
CN105898315A (zh) 视频转码方法和装置***
US10986355B2 (en) Method for signaling a step-wise temporal sub-layer access sample
JP2020141416A (ja) ハイブリッド上位互換性のあるデータストリームをデコードするための方法
Ding et al. A switchable deep learning approach for in-loop filtering in video coding
CN104641645B (zh) 用于视频译码的交错视频数据的指示的方法和设备
Lei et al. Design and implementation of a real-time video stream analysis system based on FFMPEG
CN101621692B (zh) 一种基于预测模式的h.264/avc视频信息隐藏方法
US8934544B1 (en) Efficient motion estimation in hierarchical structure
US10819994B2 (en) Image encoding and decoding methods and devices thereof
RU2009142429A (ru) Системы кодирования
CN105681826B (zh) 视频数据传输***和方法以及视频数据解码方法
Liang et al. Detection of double compression for HEVC videos with fake bitrate
CN103402091B (zh) 云桌面图像分类与编码方法
WO2017101350A1 (zh) 变分辨率的编码模式预测方法及装置
CN105430408A (zh) 一种基于Intel、AMD和Nvidia三平台的H264硬件解码***
CN106101714A (zh) 一种与压缩编码过程紧耦合的h.264视频信息隐藏方法
CN105847871A (zh) 视频编解码方法及其装置
CN103034993A (zh) 一种数字视频转码检测方法
CN105874800A (zh) 在相同帧中处理多个图像区域或处理多个帧的多个句法解析电路的句法解析装置和相关句法解析方法
CN102577412B (zh) 一种图像编码方法和装置
Iranfar et al. A machine learning-based approach for power and thermal management of next-generation video coding on MPSoCs: work-in-progress
Borges et al. Fast HEVC-to-AV1 transcoding based on coding unit depth inheritance
US20170163990A1 (en) Video transcoding method and system
CN102724553A (zh) 图像编码方法、图像解码方法及图像编码器和图像解码器
CA2972448C (en) Motion video predict coding method, motion video predict coding device, motion video predict coding program, motion video predict decoding method, motion video predict decoding device, and motion video predict decoding program

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160824

WD01 Invention patent application deemed withdrawn after publication