CN104168439B - 一种视频编码方法和装置 - Google Patents

一种视频编码方法和装置 Download PDF

Info

Publication number
CN104168439B
CN104168439B CN201310183173.7A CN201310183173A CN104168439B CN 104168439 B CN104168439 B CN 104168439B CN 201310183173 A CN201310183173 A CN 201310183173A CN 104168439 B CN104168439 B CN 104168439B
Authority
CN
China
Prior art keywords
video file
multimedia audio
image data
data
file
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
Application number
CN201310183173.7A
Other languages
English (en)
Other versions
CN104168439A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310183173.7A priority Critical patent/CN104168439B/zh
Priority to PCT/CN2014/070802 priority patent/WO2014183478A1/en
Priority to US14/274,056 priority patent/US9936266B2/en
Publication of CN104168439A publication Critical patent/CN104168439A/zh
Application granted granted Critical
Publication of CN104168439B publication Critical patent/CN104168439B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Landscapes

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

Abstract

本发明公开了一种视频编码方法:依次获取各原始图像数据;根据获取到的各原始图像数据依次生成各多媒体音视频文件;对各多媒体音视频文件分别进行解析,以及按照预定标准对解析结果进行封装,得到各多媒体音视频文件所对应的、符合所述预定标准的编码图像数据,并分别输出。本发明同时公开了一种视频编码装置。应用本发明所述方案,能够满足流式视频业务对小粒度帧级别的编码图像数据的需求。

Description

一种视频编码方法和装置
技术领域
本发明涉及视频技术,特别涉及一种视频编码方法和装置。
背景技术
目前,各种视频编码标准得到了业界的广泛拥护,如H.264标准,尤其是在互联网快速步入无线时代后,其已经成为很多智能终端中的移动平台底层框架中的标配。
但是,对于某些移动平台,其会存在以下问题:
即这些移动平台仅能提供某种特定形式的封装,如仅能提供动态图像专家组4(MP4,MovingPicturesExpertsGroup4)文件级别的高粒度公开应用程序接口(API,ApplicationProgrammingInterface)封装,具体实现可包括:通过操作摄像头等,完成原始图像数据的获取,并进一步地实现原始图像数据的压缩编码和协议封装等,从而生成容器格式为MP4、视频编码格式为H.264的视频文件。
显然,上述方式对于离线类视频业务非常适用,但对于广大流式视频业务,由于其需要小粒度帧(Frame)级别的编码图像数据,因此,上述方式将不再适用,即不能满足流式视频业务对实时性等的需求,比如,在视频聊天应用场景下,需要将每帧原始图像数据处理完成后即立刻发送出去,而不能等待一段视频处理完成后再发送出去。
发明内容
有鉴于此,本发明提供了一种视频编码方法和装置,能够满足流式视频业务对小粒度帧级别的编码图像数据的需求。
本发明的技术方案是这样实现的:
一种视频编码方法,包括:
依次获取各原始图像数据;
根据获取到的各原始图像数据依次生成各多媒体音视频文件;
对各多媒体音视频文件分别进行解析,以及按照预定标准对解析结果进行封装,得到各多媒体音视频文件所对应的、符合所述预定标准的编码图像数据,并分别输出。
一种视频编码装置,包括:图像获取模块、文件生成模块以及文件解析模块;
所述图像获取模块,用于依次获取各原始图像数据,并分别发送给所述文件生成模块;
所述文件生成模块,用于根据获取到的各原始图像数据依次生成各多媒体音视频文件,并分别发送给所述文件解析模块;
所述文件解析模块,用于对各多媒体音视频文件分别进行解析,以及按照预定标准对解析结果进行封装,得到各多媒体音视频文件所对应的、符合所述预定标准的编码图像数据,并分别输出。
可见,采用本发明所述方案,可借助于移动平台的现有视频编码功能,获取各原始图像数据并根据获取到的各原始图像数据生成各多媒体音视频文件,如MP4文件,在此基础上,针对每个多媒体音视频文件,可分别通过对其进行解析以及对解析结果按照预定标准进行封装,得到该多媒体音视频文件对应的各符合所述预定标准的编码图像数据,如H.264编码图像数据,并输出,从而满足了流式视频业务对小粒度帧级别的编码图像数据的需求,进而提高了系统的兼容性等;而且,本发明所述方案实现起来简单方便,便于普及和推广。
附图说明
图1为本发明视频编码装置的运行环境示意图。
图2为本发明视频编码方法实施例的流程图。
图3为现有MP4文件的结构示意图。
图4为本发明视频编码装置实施例的组成结构示意图。
具体实施方式
针对现有技术中存在的问题,本发明中提出一种视频编码方案,能够借助于移动平台的现有视频编码功能,并能够满足流式视频业务对小粒度帧级别的编码图像数据的需求。
图1为本发明视频编码装置的运行环境示意图。该装置可位于智能终端中,如图1所示,该智能终端中可包括:控制器10、摄像头11、第一编码器12、第二编码器13、通信电路14、解码器15、显示屏16和供电单元17等。
其中,控制器10可用于控制摄像头11的工作情况,如控制其何时开始采集原始图像数据以及每隔多久采集一次原始数据图像等;摄像头11在控制器10的控制下采集原始图像数据,并将采集到的各原始图像数据分别发送给第一编码器12;第一编码器12根据摄像头11采集到的各原始图像数据生成各多媒体音视频文件,并将所生成的各多媒体音视频文件分别发送给第二编码器13;第二编码器13对接收到的各多媒体音视频文件分别进行解析以及对解析结果按照预定标准进行封装,得到各多媒体音视频文件分别对应的、各符合所述预定标准的编码图像数据,并通过通信电路14分别发送给接收端;通信电路14将第二编码器13输出的各符合所述预定标准的编码图像数据分别发送给接收端,并接收其它装置发送来的各符合所述预定标准的编码图像数据,发送给解码器15;解码器15对接收到的各符合所述预定标准的编码图像数据进行解码,并根据解码结果在显示屏16上进行图像显示;显示屏16可为液晶显示屏等;供电单元17分别为其它各部分进行供电,可采用电池或外接电源等供电方式。
在实际应用中,上述多媒体音视频文件可为MP4文件或MP5文件等,上述预定标准不限于H.264标准或H.265标准,以下以MP4文件和H.264标准为例,对本发明所述方案作进一步地详细说明。
图2为本发明视频编码方法实施例的流程图。如图2所示,包括:
步骤21:依次获取各原始图像数据。
在实际应用中,如在视频聊天应用场景下,可通过摄像头来采集各原始图像数据,其输出是符合一定数字图像色彩空间格式的字节流数据,一般是未经压缩的。
步骤22:根据获取到的各原始图像数据依次生成各MP4文件。
本步骤中,针对各原始图像数据,可分别按照H.264标准进行编码(压缩),并基于各编码后的图像数据,按照MP4文件格式标准生成各二进制文件,即MP4文件。
本领域技术人员公知,一个MP4文件通常对应于一段时长的视频,具体时长视实际情况而定,如1秒,根据该1秒内获取到的各原始图像数据生成一个MP4文件。
比如,在视频聊天应用场景下,摄像头每隔1/10秒采集一次原始图像数据,即获取到一帧原始图像,那么1秒内共采集10次原始图像数据,相应地,根据这10次采集到的原始图像数据即可生成一个MP4文件。
步骤21和步骤22的具体实现均为现有技术。
在现有技术的基础上,本发明所述方案中还提出了一定的改进措施,如:当获取到第一帧原始图像数据时,启动N个线程,N为大于1的正整数,具体取值可根据实际需要而定;这样,当每次满足一个新的MP4文件的生成条件时,确定是否存在空闲线程,如果是,则选取一个空闲线程来进行该MP4文件的生成,否则,等到出现空闲线程时再进行该MP4文件的生成。
举例说明:
假设共启动了两个线程,分别为线程1和线程2,在视频聊天应用场景下,每经过1秒生成一个MP4文件,那么,当经过第一个1秒后,即可利用线程1来生成第一个MP4文件,当经过第二个1秒后,假设线程1还未工作完毕,则可利用线程2来生成第二个MP4文件,当经过第三个1秒后,假设线程2还未工作完毕,但线程1已经工作完毕,则可利用线程1来生成第三个MP4文件,依此类推;这样一来,即可省去等待时间,从而加快了MP4文件的生成速度。
另外,在实际应用中,通常需要调用某些对象来生成MP4文件,由于这些对象的创建可能需要耗费比较长的时间,因此为减少时延,可预先创建好所需的对象,这样,当需要时,直接调用即可。
步骤23:针对所生成的每个MP4文件,通过对其进行解析以及对解析结果进行H.264标准封装,得到该MP4文件对应的各H.264编码图像数据,并分别输出。
对于离线类视频业务,由于其无需小粒度帧级别的编码图像数据,因此可按照现有方式,针对所生成的每个MP4文件,分别直接将其输出。
而对于流式视频业务,由于其需要小粒度帧级别的编码图像数据,因此需要针对所生成的每个MP4文件,通过对其进行解析以及对解析结果进行H.264标准封装,得到该MP4文件对应的各H.264编码图像数据,并分别输出得到的各H.264编码图像数据。
综合各个MP4文件来说,输出各H.264编码图像数据的原则为:对于一个H.264编码图像数据,其对应的原始图像数据越早被获取到,该H.264编码图像数据就越早被输出,即最终接收端的用户所看到的图像展示先后顺序需要与发送端各图像的获取先后顺序相同。
和步骤22中类似,本步骤中,也可同时启动多个线程来进行MP4文件的解析和封装,具体实现可为:当生成第一个MP4文件时,启动P个线程,P为大于1的正整数,具体取值可根据实际需要而定;当每次有一个新的MP4文件需要进行解析和封装时,确定是否存在空闲线程,如果是,则选取一个空闲线程来对该MP4文件进行解析和封装,否则,等到出现空闲线程时再对该MP4文件进行解析和封装。
举例说明:
假设共启动了两个线程,分别为线程3和线程4,当生成了第一个MP4文件后,可利用线程3来对第一个MP4文件进行解析和封装,当生成了第二个MP4文件后,假设线程3还未工作完毕,则可利用线程4来对第二个MP4文件进行解析和封装,当生成了第三个MP4文件后,假设线程4还未工作完毕,但线程3已经工作完毕,则可利用线程3来对第三个MP4文件进行解析和封装,依此类推;这样一来,即可省去等待时间,从而加快了MP4文件的解析和封装速度。
另外,对于一个MP4文件来说,对其进行解析和封装所耗费的时间要小于生成该MP4文件所耗费的时间,这样,就可能出现以下问题:当生成了一个MP4文件之后,对其进行解析和封装,并将得到的各H.264编码图像数据分别输出,此时,下一个MP4文件还未生成,从而导致输出出现中断。
为避免出现上述问题,本发明所述方案中提出,可在当所生成的MP4文件的个数达到Q个时,才开始对所生成的MP4文件进行解析和封装,Q为大于1的正整数,具体取值可根据实际需要而定,如3,即当缓存的MP4文件的数量达到预定要求时,才开始对MP4文件进行解析和封装。
举例说明:
当生成了第一个MP4文件之后,先对其进行缓存,而不去进行解析和封装,同样,当生成了第二个MP4文件之后,也对其进行缓存,而不去进行解析和封装,当生成了第三个MP4文件之后,对其进行缓存,并开始对第一个MP4文件进行解析和封装,依此类推,这样一来,在等待新的MP4文件生成的同时,可对之前所缓存的MP4文件进行解析和封装,从而避免了出现输出中断。
以下结合附图,对如何对MP4文件进行解析和封装等进行进一步地详细说明。
图3为现有MP4文件的结构示意图。
相应地,针对所生成的每个MP4文件,可分别对其进行解析,获取其中的mdatbox数据;之后,可将获取到的mdatbox数据中对应于不同的H.264编码图像数据的数据段中的前4个字节的取值分别修改为0x000x000x000x01,并将修改后的各数据段作为各H.264编码图像数据。
举例说明:
一个MP4文件基于10个原始图像数据生成,那么,通过对该MP4文件进行解析,可获取到其中的mdatbox数据,该mdatbox数据中包括有分别对应于这10个原始图像数据(每个原始图像数据分别对应于一个H.264编码图像数据)的数据段,将这10个数据段的前4个字节的取值分别修改为0x000x000x000x01,得到的10个修改后的数据段即为所需的10个H.264编码图像数据。
另外,由于后续接收到各H.264编码图像数据的接收端在进行解码时,必须要用到每个MP4文件所对应的序列参数集网络抽象层(SPSNAL,SequenceParameterSetNetworkAbstractionLayer)数据和图像参数集网络抽象层(PPSNAL,PictureParameterSetNetworkAbstractionLayer)数据,因此,针对所生成的每个MP4文件,在输出该MP4文件对应的第一个H.264编码图像数据之前,还需要分别生成该MP4文件对应的SPSNAL数据和PPSNAL数据,并将所生成的SPSNAL数据和PPSNAL数据连同第一个H.264编码图像数据一起输出,即在输出第一个H.264编码图像数据的同时,还需要输出SPSNAL数据和PPSNAL数据,之后则分别只输出各(非第一个)H.264编码图像数据即可。
具体来说,针对所生成的每个MP4文件,可分别按照H.264标准中定义的NAL数据结构生成该MP4文件对应的SPSNAL数据和PPSNAL数据,所述NAL数据结构为:0x000x000x000x01+网络抽象层单元头(NALUHeader)字段+网络抽象层单元载荷(NALUpayload)字段;
其中,对于SPSNAL数据,NALUHeader字段用于说明该NAL数据的类型为SPS,NALUpayload字段用于携带SPSNAL数据的载荷内容,可从对该MP4文件进行解析后获取到的stsdbox数据中获取;
对于PPSNAL数据,NALUHeader字段用于说明该NAL数据的类型为PPS,NALUpayload字段用于携带PPSNAL数据的载荷内容,可从对该MP4文件进行解析后获取到的stsdbox数据中获取。
NALUHeader字段的长度为1个字节(Byte),其结构如表一所示。
表一NALUHeader字段的结构
对于SPSNAL数据,其NALUHeader字段中的“F”比特位取值为0(共1个比特位),“NRI”比特位取值为11(共2个比特位),“Type”比特位取值为00111(共5个比特位);对于PPSNAL数据,其NALUHeader字段中的“F”比特位取值为0,“NRI”比特位取值为11,“Type”比特位取值为01000。
各H.264编码图像数据也需要符合0x000x000x000x01+NALUHeader字段+NALUpayload字段这一结构,将前述各数据段中的前4个字节的取值分别进行修改后,得到的各数据段即符合上述结构。
在实际应用中,对于输出的各H.264编码图像数据,可通过信道将其发送给接收端,所述信道可以是指有线或无线互联网、3G或2G电信通信网络或其它形式的数据传输通道,具体形式不作限制。另外,从数字通信系统的角度出发,在对数据进行传输之前,可先进行某种形式的信道编码,以提高数据的鲁棒性等,比如,将数据进行实时传输协议(RTP,Real-timeTransportProtocol)封装以适合互联网传输。
相应地,当接收端每接收到一个H.264编码图像数据时,可首先对其进行解码,之后,可根据解码结果进行图像显示。
由于一个H.264编码图像数据的数据量可能较大,因此在传输时可能需要进行分包处理,即分为多个数据包进行传输,这样,接收端在进行接收时,即需要将针对同一个H.264编码图像数据的多个数据包进行拼接。
另外,考虑到信道传输的不可靠性,可能接收到的数据包并非完全等同于发送的数据包,即出现错误,为此,在接收时可进行以下处理:直接丢弃发生错误的数据包,从可以正确解码的数据包开始进行解码器同步,或者,如果在数据包传输时使用了容错编码技术,如前向纠错(FEC,ForwardErrorCorrection)技术,则可使用容错编码技术的反向过程恢复出发生错误的数据包。
再有,接收端在进行解码时,可使用视频通信领域中的某些容错编码技术,如DataPartitioning、参考图像选择(ReferenceFrameSelection)等,以规避错误数据对解码过程的影响。
如何进行解码以及如何进行图像显示均为现有技术。
至此,即完成了关于本发明方法实施例的介绍。
基于上述介绍,图4为本发明视频编码装置实施例的组成结构示意图。如图4所示,包括:图像获取模块41、文件生成模块42以及文件解析模块43。
图像获取模块41,用于依次获取各原始图像数据,并分别发送给文件生成模块42;
文件生成模块42,用于根据获取到的各原始图像数据依次生成各多媒体音视频文件,并分别发送给文件解析模块43;
文件解析模块43,用于对各多媒体音视频文件分别进行解析,以及按照预定标准对解析结果进行封装,得到各多媒体音视频文件所对应的、符合所述预定标准的编码图像数据,并分别输出。
其中,文件解析模块43对每个多媒体音视频文件分别进行解析,获取其中的mdatbox数据,所述mdatbox数据中包括一个以上编码图像数据;将mdatbox数据中各编码图像数据的数据段前4个字节的取值分别按照所述预定标准的要求进行修改,将修改后的各数据段作为各符合所述预定标准的编码图像数据。
文件解析模块43可进一步用于,针对所生成的每个多媒体音视频文件,在输出该多媒体音视频文件对应的第一个符合所述预定标准的编码图像数据之前,分别生成该多媒体音视频文件对应的SPSNAL数据和PPSNAL数据,并将所生成的SPSNAL数据和PPSNAL数据连同第一个符合所述预定标准的编码图像数据一起输出。
具体地,文件解析模块43可按照所述预定标准中定义的NAL数据结构生成各多媒体音视频文件对应的SPSNAL数据和PPSNAL数据。
文件生成模块42可进一步用于,当获取到第一帧原始图像数据时,启动N个线程,N为大于1的正整数;当每次满足一个新的多媒体音视频文件的生成条件时,确定是否存在空闲线程,如果是,则选取一个空闲线程来进行该多媒体音视频文件的生成,否则,等到出现空闲线程时再进行该多媒体音视频文件的生成。
文件解析模块43还可进一步用于,当生成第一个多媒体音视频文件时,启动P个线程,P为大于1的正整数;当每次有一个新的多媒体音视频文件需要进行解析和封装时,确定是否存在空闲线程,如果是,则选取一个空闲线程来对该多媒体音视频文件进行解析和封装,否则,等到出现空闲线程时再对该多媒体音视频文件进行解析和封装。
文件解析模块43还可进一步用于,当确定所生成的多媒体音视频文件的个数达到Q个时,开始对所生成的多媒体音视频文件进行解析和封装,Q为大于1的正整数。
另外,图4所示装置中还可进一步包括:数据接收模块44、数据解码模块45以及图像显示模块46;
数据接收模块44,用于接收除自身所在视频编码装置以外的其它装置发送来的各符合所述预定标准的编码图像数据,并分别发送给数据解码模块45;
数据解码模块45,用于对接收到的各符合所述预定标准的编码图像数据分别进行解码,并根据解码结果在图像显示模块46中进行图像显示。
图4所示实施例中,较佳地,所述多媒体音视频文件可为MP4文件,所述预定标准可为H.264标准。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种视频编码方法,其特征在于,包括:
依次获取各原始图像数据;
根据获取到的各原始图像数据依次生成各多媒体音视频文件;
对各多媒体音视频文件分别进行解析,以及按照预定标准对解析结果进行封装,得到各多媒体音视频文件所对应的、符合所述预定标准的编码图像数据,并分别输出;所述预定标准包括H.264标准或H.265标准;
其中,所述对各多媒体音视频文件分别进行解析,以及按照预定标准对解析结果进行封装,得到各多媒体音视频文件所对应的、符合所述预定标准的编码图像数据的步骤,包括:
对每个多媒体音视频文件分别进行解析,获取其中的mdatbox数据,所述mdatbox数据中包括一个以上编码图像数据;
将所述mdatbox数据中各编码图像数据的数据段前4个字节的取值分别按照所述预定标准的要求进行修改,将修改后的各数据段作为各符合所述预定标准的编码图像数据;
该方法进一步包括:
针对所生成的每个多媒体音视频文件,在输出该多媒体音视频文件对应的第一个符合所述预定标准的编码图像数据之前,分别生成该多媒体音视频文件对应的序列参数集网络抽象层数据和图像参数集网络抽象层数据,并将所生成的序列参数集网络抽象层数据和图像参数集网络抽象层数据连同第一个符合所述预定标准的编码图像数据一起输出。
2.根据权利要求1所述的方法,其特征在于,所述分别生成该多媒体音视频文件对应的序列参数集网络抽象层数据和图像参数集网络抽象层数据的步骤,包括:
按照所述预定标准中定义的网络抽象层数据结构生成该多媒体音视频文件对应的序列参数集网络抽象层数据和图像参数集网络抽象层数据。
3.根据权利要求1~2中任一项所述的方法,其特征在于,该方法进一步包括:
当获取到第一帧原始图像数据时,启动N个线程,N为大于1的正整数;
当每次满足一个新的多媒体音视频文件的生成条件时,确定是否存在空闲线程,如果是,则选取一个空闲线程来进行该多媒体音视频文件的生成,否则,等到出现空闲线程时再进行该多媒体音视频文件的生成。
4.根据权利要求1~2中任一项所述的方法,其特征在于,该方法进一步包括:
当生成第一个多媒体音视频文件时,启动P个线程,P为大于1的正整数;
当每次有一个新的多媒体音视频文件需要进行解析和封装时,确定是否存在空闲线程,如果是,则选取一个空闲线程来对该多媒体音视频文件进行解析和封装,否则,等到出现空闲线程时再对该多媒体音视频文件进行解析和封装。
5.根据权利要求1~2中任一项所述的方法,其特征在于,该方法进一步包括:
当确定所生成的多媒体音视频文件的个数达到Q个时,开始对所生成的多媒体音视频文件进行解析和封装,Q为大于1的正整数。
6.根据权利要求1~2中任一项所述的方法,其特征在于,该方法进一步包括:
当每接收到一个符合所述预定标准的编码图像数据时,对其进行解码,并根据解码结果进行图像显示。
7.一种视频编码装置,其特征在于,包括:图像获取模块、文件生成模块以及文件解析模块;
所述图像获取模块,用于依次获取各原始图像数据,并分别发送给所述文件生成模块;
所述文件生成模块,用于根据获取到的各原始图像数据依次生成各多媒体音视频文件,并分别发送给所述文件解析模块;
所述文件解析模块,用于对各多媒体音视频文件分别进行解析,以及按照预定标准对解析结果进行封装,得到各多媒体音视频文件所对应的、符合所述预定标准的编码图像数据,并分别输出;所述预定标准包括H.264标准或H.265标准;
其中,所述文件解析模块对每个多媒体音视频文件分别进行解析,获取其中的mdatbox数据,所述mdatbox数据中包括一个以上编码图像数据;将所述mdatbox数据中各编码图像数据的数据段前4个字节的取值分别按照所述预定标准的要求进行修改,将修改后的各数据段作为各符合所述预定标准的编码图像数据;
所述文件解析模块进一步用于,针对所生成的每个多媒体音视频文件,在输出该多媒体音视频文件对应的第一个符合所述预定标准的编码图像数据之前,分别生成该多媒体音视频文件对应的序列参数集网络抽象层数据和图像参数集网络抽象层数据,并将所生成的序列参数集网络抽象层数据和图像参数集网络抽象层数据连同第一个符合所述预定标准的编码图像数据一起输出。
8.根据权利要求7所述的装置,其特征在于,
所述文件解析模块按照所述预定标准中定义的网络抽象层数据结构生成各多媒体音视频文件对应的序列参数集网络抽象层数据和图像参数集网络抽象层数据。
9.根据权利要求7~8中任一项所述的装置,其特征在于,
所述文件生成模块进一步用于,当获取到第一帧原始图像数据时,启动N个线程,N为大于1的正整数;当每次满足一个新的多媒体音视频文件的生成条件时,确定是否存在空闲线程,如果是,则选取一个空闲线程来进行该多媒体音视频文件的生成,否则,等到出现空闲线程时再进行该多媒体音视频文件的生成。
10.根据权利要求7~8中任一项所述的装置,其特征在于,
所述文件解析模块进一步用于,当生成第一个多媒体音视频文件时,启动P个线程,P为大于1的正整数;当每次有一个新的多媒体音视频文件需要进行解析和封装时,确定是否存在空闲线程,如果是,则选取一个空闲线程来对该多媒体音视频文件进行解析和封装,否则,等到出现空闲线程时再对该多媒体音视频文件进行解析和封装。
11.根据权利要求7~8中任一项所述的装置,其特征在于,
所述文件解析模块进一步用于,当确定所生成的多媒体音视频文件的个数达到Q个时,开始对所生成的多媒体音视频文件进行解析和封装,Q为大于1的正整数。
12.根据权利要求7~8中任一项所述的装置,其特征在于,该装置中进一步包括:数据接收模块、数据解码模块以及图像显示模块;
所述数据接收模块,用于接收除自身所在视频编码装置以外的其它装置发送来的各符合所述预定标准的编码图像数据,并分别发送给所述数据解码模块;
所述数据解码模块,用于对接收到的各符合所述预定标准的编码图像数据分别进行解码,并根据解码结果在所述图像显示模块中进行图像显示。
CN201310183173.7A 2013-05-17 2013-05-17 一种视频编码方法和装置 Active CN104168439B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310183173.7A CN104168439B (zh) 2013-05-17 2013-05-17 一种视频编码方法和装置
PCT/CN2014/070802 WO2014183478A1 (en) 2013-05-17 2014-01-17 Video encoding method and apparatus
US14/274,056 US9936266B2 (en) 2013-05-17 2014-05-09 Video encoding method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310183173.7A CN104168439B (zh) 2013-05-17 2013-05-17 一种视频编码方法和装置

Publications (2)

Publication Number Publication Date
CN104168439A CN104168439A (zh) 2014-11-26
CN104168439B true CN104168439B (zh) 2016-01-27

Family

ID=51897654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310183173.7A Active CN104168439B (zh) 2013-05-17 2013-05-17 一种视频编码方法和装置

Country Status (2)

Country Link
CN (1) CN104168439B (zh)
WO (1) WO2014183478A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105163169B (zh) * 2015-09-16 2018-08-07 暴风集团股份有限公司 一种适于传输的数据封装格式的方法及系统
CN107204093A (zh) * 2017-05-22 2017-09-26 上海热像机电科技股份有限公司 一种确定触发警情位置的方法及系统
CN107886467A (zh) * 2017-12-22 2018-04-06 飞依诺科技(苏州)有限公司 一种并行图像处理方法及系统
CN110719495A (zh) * 2018-07-13 2020-01-21 视联动力信息技术股份有限公司 一种视频数据的处理方法和系统
CN110858923B (zh) * 2018-08-24 2022-09-06 北京字节跳动网络技术有限公司 分段媒体文件生成方法、装置及存储介质
CN109274902B (zh) * 2018-09-04 2020-11-27 北京字节跳动网络技术有限公司 视频文件处理方法和装置
CN109618139A (zh) * 2019-01-10 2019-04-12 深圳市华金盾信息科技有限公司 一种基于视觉路由的智能视频监控系统及方法
CN110267062B (zh) * 2019-07-26 2022-07-08 深圳Tcl新技术有限公司 拼装视频帧的优化方法、装置及可读存储介质
CN112765185B (zh) * 2019-11-05 2023-04-07 株洲中车时代电气股份有限公司 一种车载设备数据更新方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098304A (zh) * 2011-01-25 2011-06-15 北京天纵网联科技有限公司 一种手机音视频边录边上传的方法
CN102404624A (zh) * 2011-11-07 2012-04-04 深圳市佳创视讯技术股份有限公司 一种数字机顶盒用支持硬件解码的全格式媒体播放器
CN103002353A (zh) * 2011-09-16 2013-03-27 杭州海康威视数字技术股份有限公司 对多媒体文件进行封装的方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010108053A1 (en) * 2009-03-19 2010-09-23 Azuki Systems, Inc. Method for scalable live streaming delivery for mobile audiences
CN102611690A (zh) * 2011-12-22 2012-07-25 南京邮电大学 一种基于超文本传输协议流化的容器格式转化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102098304A (zh) * 2011-01-25 2011-06-15 北京天纵网联科技有限公司 一种手机音视频边录边上传的方法
CN103002353A (zh) * 2011-09-16 2013-03-27 杭州海康威视数字技术股份有限公司 对多媒体文件进行封装的方法及装置
CN102404624A (zh) * 2011-11-07 2012-04-04 深圳市佳创视讯技术股份有限公司 一种数字机顶盒用支持硬件解码的全格式媒体播放器

Also Published As

Publication number Publication date
WO2014183478A1 (en) 2014-11-20
CN104168439A (zh) 2014-11-26

Similar Documents

Publication Publication Date Title
CN104168439B (zh) 一种视频编码方法和装置
KR101122143B1 (ko) 수신기 버퍼 아키텍처를 나타내는 버퍼 파라미터의 시그널링
CN104144331B (zh) 利用单sdi通道实现多路图像/视频编码数据传输的装置
CN102665140B (zh) 一种avs视频帧的rtp封装方法
JP7009610B2 (ja) ビデオエンコーダに基づく符号化ビットレート制御方法、装置及びビデオサーバー
US9936266B2 (en) Video encoding method and apparatus
CN111629283A (zh) 一种多流媒体网关服务系统及方法
CN103269433A (zh) 视频数据传输方法和视频数据传输系统
CN103503381B (zh) 设备重定向的数据传输的方法、装置及系统
CN110730364A (zh) 一种云手机数据传输方法、装置及存储介质
CN102256161B (zh) 一种osd信息的传输方法和设备
CN104767957A (zh) 基于嵌入式双核处理器的视频采集编码方法、系统及装置
CN105262970B (zh) 一种基于图像数据的封装方法及系统
CN101815073A (zh) 一种嵌入式蓝牙-以太网服务器
CN103428493A (zh) 轻型化高清视频无线传输系统
CN100586179C (zh) 一种智能家居网关呈现视频控制方法及其系统
CN108124183B (zh) 以同步获取影音以进行一对多影音串流的方法
KR20160140012A (ko) 영상 데이터 전송 및 수신 방법 및 장치
CN109348273A (zh) 多路视频实时传输方法、装置、基站设备及存储介质
CN104994390A (zh) 一种嵌入式视频处理器、系统及构建方法
CN103561282A (zh) 流媒体文件的数据传输方法和装置
CN107734345B (zh) 一种图片数据化传输方法及系统
CN110545449A (zh) 一种基于流媒体的工业现场数据传输的方法
CN104780390A (zh) 一种视频处理方法及装置
CN101232608A (zh) 一种双通道视频图像传输系统

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