CN102917276A - 一种应用于流媒体服务的音视频交错封装方法 - Google Patents
一种应用于流媒体服务的音视频交错封装方法 Download PDFInfo
- Publication number
- CN102917276A CN102917276A CN2012104505576A CN201210450557A CN102917276A CN 102917276 A CN102917276 A CN 102917276A CN 2012104505576 A CN2012104505576 A CN 2012104505576A CN 201210450557 A CN201210450557 A CN 201210450557A CN 102917276 A CN102917276 A CN 102917276A
- Authority
- CN
- China
- Prior art keywords
- video
- information
- audio
- audio pack
- video packets
- 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
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种应用于流媒体服务的音视频交错封装方法,涉及流媒体服务的内存封装和存储领域。它包括以下步骤:A、为基于MP4封装格式或通讯业标准协议视频格式的媒体文件建立元信息文件;B、将媒体文件中的视频数据按照所需网络发送标准打包成若干包含视频帧信息的视频包,将媒体文件中的音频数据按照所需网络发送标准打包成若干包含音频帧信息的音频包;C、按照音频包和视频包的解码时间戳顺序,将视频包和音频包进行交错排列;D、将元信息文件与交错排列后的视频包和音频包结合,形成待发送的媒体文件。本发明按照ISMA方式发送流媒体内容的发送流程比较简单,发送效率较高,实施成本较低。
Description
技术领域
本发明涉及流媒体服务的内存封装和存储领域,具体涉及一种应用于流媒体服务的音视频交错封装方法。
背景技术
ISMA(Internet Streaming Media Alliance,流媒体标准化团体)是视频信号编码标准与流媒体技术领域的一流专家组织,随着社会的发展,基于ISMA的流媒体内容已经广泛应用于生活之中。
目前,ISMA的流媒体内容一般通过MP4格式(Mpeg Audio Video Layer 4,音频兼视频的压缩格式)或者3GP格式(通讯业标准协议的视频格式)来存储,存储后的ISMA媒体文件在播放之前,需要按照ISMA的方式发送流媒体内容,即首先需要进行MP4文件或3GP文件的解析,再进行打包发送。
发送流媒体内容的音频数据之前,需要解析MP4文件或3GP文件的MOOV(Movie Box,媒体元数据容器)信息,以获取和确定音频帧的文件偏移信息、文件大小信息、DTS(Decoding Time Stamp,解码时间标记)信息和PTS(Presentation Time Stamp。演示时间戳)信息。
发送流媒体内容的视频数据之前,需要解析MP4文件或3GP文件的MOOV信息,以获取视频帧的文件偏移信息和文件大小信息、DTS信息和PTS信息。
发送音频数据和视频数据之前,需要根据音频帧的DTS信息和PTS信息、以及视频帧的DTS信息和PTS信息来实时计算和判断发送音频帧和视频帧的顺序。
但是,每次发送流媒体内容时,均需要根据MP4或3GP文件的MOOV信息获取音频帧和视频帧的文件偏移信息、文件大小信息、DTS信息和PTS信息,以便对音频帧和视频帧进行定位;对音频帧和视频帧进行定位的过程、以及实时计算和判断发送音频帧和视频帧的顺序的操作过程比较复杂,进而使得发送流媒体内容的发送流程不仅比较困难,发送效率较低,而且对视频帧和音频帧获取程序的开发和维护均需要消耗较多的资源,实施成本较高。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种用于流媒体服务的音视频交错封装方法,通过本发明封装的ISMA媒体文件的发送流程比较简单,发送效率较高,实施成本较低。
为达到以上目的,本发明提供的应用于流媒体服务的音视频交错封装方法,包括以下步骤:A、为基于MP4格式或通讯业标准协议视频格式的媒体文件建立元信息文件,所述元信息文件包括视频解码器标准中的序列参数集信息和图像参数集信息;B、将所述媒体文件中的视频数据按照所需网络发送标准打包成若干个包含视频帧信息的视频包,将所述媒体文件中的音频数据按照所需网络发送标准打包成若干个包含音频帧信息的音频包;C、按照所述音频包和所述视频包的解码时间戳顺序,将所述视频包和所述音频包进行交错排列;D、将所述元信息文件与交错排列后的视频包和音频包结合,形成待发送的媒体文件。
在上述技术方案的基础上,步骤B中每个视频包的视频帧信息包括文件偏移信息、文件大小信息、解码时间标记信息和演示时间戳信息;步骤B中每个音频包的音频帧信息包括文件偏移信息、文件大小信息、解码时间标记信息和演示时间戳信息。
在上述技术方案的基础上,步骤B中的所需网络发送标准为实时传输协议标准。
在上述技术方案的基础上,步骤B之后还包括以下步骤:为每个视频包添加标识媒体文件类型和长度的信息,形成每个视频包的头部;为每个音频包添加标识媒体文件类型和长度的信息,形成每个音频包的头部。
在上述技术方案的基础上,步骤C中将所述视频包和所述音频包进行交错排列的流程包括以下步骤:根据每个视频包的头部信息和每个音频包的头部信息,以每个视频包的视频帧和每个音频包的音频帧为粒度,以解码时间戳递增的顺序,对若干个视频包和若干个音频包进行交错排列。
在上述技术方案的基础上,步骤C中将所述视频包和所述音频包进行交错排列的流程包括以下步骤:根据每个视频包的头部信息和每个音频包的头部信息,以每个视频包和每个音频包为粒度,以解码时间戳递增的顺序,对若干个视频包和若干个音频包进行交错排列。
本发明的有益效果在于:
(1)本发明将媒体文件的视频数据和音频数据按照所需网络发送标准分别打包成若干个视频包和若干个音频包。按照ISMA的方式发送媒体内容时,只需读取视频包的头部信息和音频包的头部信息,即可获取视频包和音频包的信息,从而实现视频帧和音频帧的定位。与背景技术相比,通过本发明封装的ISMA媒体文件发送流媒体内容时,不需要根据MP4文件或3GP文件的MOOV信息即可获取和定位视频帧和音频帧的相关信息(文件偏移信息、文件大小信息、DTS信息和PTS信息),因此。通过本发明封装的ISMA媒体文件发送流媒体内容的发送流程比较简单,发送效率较高。
(2)本发明将视频包和音频包按解码时间戳递增顺序进行交错排列和存储,在发送流媒体内容时,只需按顺序读取视频包和音频包即可发送,不需要实时判断和计算音频和视频帧的顺序。因此,本发明的发送流程比较简单,发送效率较高。
(3)本发明打包成视频包和音频包的程序比较简单,与背景技术相比,本发明对程序的开发和维护所用的资源较少,实施成本较低。
附图说明
图1为本发明实施例中方法的流程图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例提供的应用于流媒体服务的音视频交错封装方法,包括以下步骤:
S101:为媒体文件建立单独的元信息文件,媒体文件为MP4格式的媒体文件、或者3GP格式的媒体文件。元信息文件用于保存媒体文件中与音视频编码(音频编码和视频编码)相关的关键信息,元信息文件中主要包括H.264(视频解码器标准)的SPS(Sequence Parameter Set,序列参数集)信息和PPS(Picture Parameter Set,图像参数集)信息。
S102:将媒体文件的视频数据按照RTP(Real-time Transport Protocol,实时传输协议)标准打包成若干个含有视频帧信息的视频包,每个视频包的视频帧信息包括文件偏移信息、文件大小信息、DTS(Decoding Time Stamp,解码时间标记)信息和PTS(PresentationTime Stamp。演示时间戳)信息。
S103:为每个视频包添加标识媒体文件类型和长度的信息,以形成每个视频包的头部。
S104:将媒体文件的音频数据按照RTP标准打包成若干个含有音频帧信息的音频包,每个音频包的音频帧信息包括文件偏移信息、文件大小信息、DTS信息和PTS信息。
S105:为每个音频包添加标识媒体文件类型和长度的信息,以形成每个音频包的头部。
S106:根据每个视频包的头部信息和每个音频包的头部信息,按照视频包和音频包的解码时间戳顺序,对若干个视频包和若干个音频包进行交错排列,形成待发送的媒体文件。
交错排列有两种方式,一种是根据每个视频包的头部信息和每个音频包的头部信息,以每个视频包的视频帧和每个音频包的音频帧为粒度,以解码时间戳递增的顺序进行交错排列;另一种是根据每个视频包的头部信息和每个音频包的头部信息,以每个视频包和每个音频包为粒度,以解码时间戳递增的顺序进行交错排列。
S107:将元信息文件与交错排列后的视频包和音频包结合,形成待发送的媒体文件。
本发明通过ISMA的方式发送流媒体内容的步骤为:
S201:将待发送的媒体文件中的元信息文件传递给用户,以便用户能够正确的解压通过H.264压缩的视频。
S202:对待发送的媒体文件进行解析,读取视频包的头部信息,获取视频包的视频帧信息;读取音频包的头部信息,获取音频包的音频帧信息。
S203:读取视频包的视频帧信息后进行发送。
S204:读取音频包的音频帧信息后进行发送。
S205:重复步骤S202、S203和S204,直至所有流媒体内容发送完毕。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (6)
1.一种应用于流媒体服务的音视频交错封装方法,其特征在于,包括以下步骤:
A、为基于MP4格式或通讯业标准协议视频格式的媒体文件建立元信息文件,所述元信息文件包括视频解码器标准中的序列参数集信息和图像参数集信息;
B、将所述媒体文件中的视频数据按照所需网络发送标准打包成若干个包含视频帧信息的视频包,将所述媒体文件中的音频数据按照所需网络发送标准打包成若干个包含音频帧信息的音频包;
C、按照所述音频包和所述视频包的解码时间戳顺序,将所述视频包和所述音频包进行交错排列;
D、将所述元信息文件与交错排列后的视频包和音频包结合,形成待发送的媒体文件。
2.如权利要求1所述的应用于流媒体服务的音视频交错封装方法,其特征在于:步骤B中每个视频包的视频帧信息包括文件偏移信息、文件大小信息、解码时间标记信息和演示时间戳信息;步骤B中每个音频包的音频帧信息包括文件偏移信息、文件大小信息、解码时间标记信息和演示时间戳信息。
3.如权利要求2所述的应用于流媒体服务的音视频交错封装方法,其特征在于:步骤B中的所需网络发送标准为实时传输协议标准。
4.如权利要求3所述的应用于流媒体服务的音视频交错封装方法,其特征在于,步骤B之后还包括以下步骤:为每个视频包添加标识媒体文件类型和长度的信息,形成每个视频包的头部;为每个音频包添加标识媒体文件类型和长度的信息,形成每个音频包的头部。
5.如权利要求4所述的应用于流媒体服务的音视频交错封装方法,其特征在于,步骤C中将所述视频包和所述音频包进行交错排列的流程包括以下步骤:根据每个视频包的头部信息和每个音频包的头部信息,以每个视频包的视频帧和每个音频包的音频帧为粒度,以解码时间戳递增的顺序,对若干个视频包和若干个音频包进行交错排列。
6.如权利要求4所述的应用于流媒体服务的音视频交错封装方法,其特征在于,步骤C中将所述视频包和所述音频包进行交错排列的流程包括以下步骤:根据每个视频包的头部信息和每个音频包的头部信息,以每个视频包和每个音频包为粒度,以解码时间戳递增的顺序,对若干个视频包和若干个音频包进行交错排列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210450557.6A CN102917276B (zh) | 2012-11-12 | 2012-11-12 | 一种应用于流媒体服务的音视频交错封装方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210450557.6A CN102917276B (zh) | 2012-11-12 | 2012-11-12 | 一种应用于流媒体服务的音视频交错封装方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102917276A true CN102917276A (zh) | 2013-02-06 |
CN102917276B CN102917276B (zh) | 2016-02-24 |
Family
ID=47615480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210450557.6A Active CN102917276B (zh) | 2012-11-12 | 2012-11-12 | 一种应用于流媒体服务的音视频交错封装方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102917276B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3024244A4 (en) * | 2013-07-19 | 2016-07-27 | Panasonic Ip Corp America | TRANSMISSION METHOD, RECEIVING METHOD, TRANSMITTING DEVICE, AND RECEIVING DEVICE |
CN107302715A (zh) * | 2017-08-10 | 2017-10-27 | 北京元心科技有限公司 | 多媒体文件的播放方法、封装方法以及相应的装置、终端 |
CN108881958A (zh) * | 2017-11-30 | 2018-11-23 | 北京视联动力国际信息技术有限公司 | 一种多媒体数据流封装方法和装置 |
WO2019227749A1 (zh) * | 2018-05-29 | 2019-12-05 | 北京字节跳动网络技术有限公司 | 一种元数据容器的解析方法、装置及存储介质 |
CN110910916A (zh) * | 2019-11-29 | 2020-03-24 | 四川效率源信息安全技术股份有限公司 | 一种基于文件结构的监控视频的雕复方法 |
CN112507148A (zh) * | 2020-12-16 | 2021-03-16 | 北京华宇信息技术有限公司 | 媒体文件自动合成方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1960268A (zh) * | 2006-08-16 | 2007-05-09 | 中兴通讯股份有限公司 | 一种移动多媒体广播多视频流的实现方法 |
CN101076121A (zh) * | 2006-05-17 | 2007-11-21 | 索尼株式会社 | 流生成装置、成像装置、数据处理装置和流生成方法 |
CN102595199A (zh) * | 2011-01-11 | 2012-07-18 | 中兴通讯股份有限公司 | 一种流媒体数据包的封装、传输方法及流媒体处理装置 |
CN102665103A (zh) * | 2012-04-13 | 2012-09-12 | 烽火通信科技股份有限公司 | 一种适用于流媒体服务的音频视频封装方法 |
-
2012
- 2012-11-12 CN CN201210450557.6A patent/CN102917276B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101076121A (zh) * | 2006-05-17 | 2007-11-21 | 索尼株式会社 | 流生成装置、成像装置、数据处理装置和流生成方法 |
CN1960268A (zh) * | 2006-08-16 | 2007-05-09 | 中兴通讯股份有限公司 | 一种移动多媒体广播多视频流的实现方法 |
CN102595199A (zh) * | 2011-01-11 | 2012-07-18 | 中兴通讯股份有限公司 | 一种流媒体数据包的封装、传输方法及流媒体处理装置 |
CN102665103A (zh) * | 2012-04-13 | 2012-09-12 | 烽火通信科技股份有限公司 | 一种适用于流媒体服务的音频视频封装方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3024244A4 (en) * | 2013-07-19 | 2016-07-27 | Panasonic Ip Corp America | TRANSMISSION METHOD, RECEIVING METHOD, TRANSMITTING DEVICE, AND RECEIVING DEVICE |
CN107302715A (zh) * | 2017-08-10 | 2017-10-27 | 北京元心科技有限公司 | 多媒体文件的播放方法、封装方法以及相应的装置、终端 |
CN108881958A (zh) * | 2017-11-30 | 2018-11-23 | 北京视联动力国际信息技术有限公司 | 一种多媒体数据流封装方法和装置 |
WO2019227749A1 (zh) * | 2018-05-29 | 2019-12-05 | 北京字节跳动网络技术有限公司 | 一种元数据容器的解析方法、装置及存储介质 |
US10979759B2 (en) | 2018-05-29 | 2021-04-13 | Beijing Bytedance Network Technology Co., Ltd. | Analysis method, device and storage medium of moov box |
CN110910916A (zh) * | 2019-11-29 | 2020-03-24 | 四川效率源信息安全技术股份有限公司 | 一种基于文件结构的监控视频的雕复方法 |
CN110910916B (zh) * | 2019-11-29 | 2021-08-03 | 四川效率源信息安全技术股份有限公司 | 一种基于文件结构的监控视频的雕复方法 |
CN112507148A (zh) * | 2020-12-16 | 2021-03-16 | 北京华宇信息技术有限公司 | 媒体文件自动合成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102917276B (zh) | 2016-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10715844B2 (en) | Method and apparatus for transceiving data for multimedia transmission system | |
KR101972951B1 (ko) | 오버헤드를 최소화한 헤더를 가지는 패킷 기반의 미디어 데이터 전송 방법 | |
CN102917276B (zh) | 一种应用于流媒体服务的音视频交错封装方法 | |
CA2909906C (en) | Method and apparatus for transmitting media data in multimedia transport system | |
CN105191248B (zh) | 用于发送数据和接收数据的方法和装置 | |
CN105009595B (zh) | 发送设备、发送方法、接收设备以及接收方法 | |
CN101222616B (zh) | 点播服务中的mpeg传送流的传输处理方法 | |
CN102665103A (zh) | 一种适用于流媒体服务的音频视频封装方法 | |
CN107872422A (zh) | 一种数据传输方法、装置及电子设备 | |
CN105379290A (zh) | 发送方法、接收方法、发送装置及接收装置 | |
CN1972453B (zh) | 一种移动多媒体广播***的数据流封装方法 | |
CN105007465A (zh) | 基于live555框架和ffmpeg库的密文H264视频直播和点播平台 | |
CN102595252A (zh) | 流媒体前向纠错实现方法及*** | |
CN101179735B (zh) | 一种多媒体广播***媒体数据流的封装方法 | |
CN101505420B (zh) | 一种视频压缩数据的封装方法 | |
CN101312531B (zh) | 一种广播***中的流媒体业务传输方法及流媒体帧封装器 | |
CN106303537B (zh) | 一种openh264多码流传输方法 | |
CN101330398B (zh) | 一种业务数据流的发送方法 | |
US10476994B2 (en) | Devices and methods for transmitting/receiving packet in multimedia communication system | |
CN109743627B (zh) | 基于avs+视频编码数字电影包的播放方法 | |
CN101247519A (zh) | 一种数据存储的方法和装置 | |
CN101500157A (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 |