CN102970598A - 一种机顶盒解复用ts传输流的方法及系统 - Google Patents

一种机顶盒解复用ts传输流的方法及系统 Download PDF

Info

Publication number
CN102970598A
CN102970598A CN2012105311008A CN201210531100A CN102970598A CN 102970598 A CN102970598 A CN 102970598A CN 2012105311008 A CN2012105311008 A CN 2012105311008A CN 201210531100 A CN201210531100 A CN 201210531100A CN 102970598 A CN102970598 A CN 102970598A
Authority
CN
China
Prior art keywords
demultiplexing
transport stream
data
top box
packet
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
CN2012105311008A
Other languages
English (en)
Other versions
CN102970598B (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.)
Sichuan Jiuzhou Investment Holding Group Co.,Ltd.
Original Assignee
Sichuan Jiuzhou Electric Group 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 Sichuan Jiuzhou Electric Group Co Ltd filed Critical Sichuan Jiuzhou Electric Group Co Ltd
Priority to CN201210531100.8A priority Critical patent/CN102970598B/zh
Publication of CN102970598A publication Critical patent/CN102970598A/zh
Application granted granted Critical
Publication of CN102970598B publication Critical patent/CN102970598B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及数字电视机顶盒技术领域,本发明公开了一种机顶盒解复用TS传输流的方法,其具体包含以下步骤:1.发送端对多路节目进行复用;2.解复用进程读识别出TS包;3.解析TS包头;4.解析节目关联表PAT;5.根据节目映射表PMT包中音频数据的PID和视频数据的PID,在TS传输流中找到相应的音频TS数据包和视频TS数据包,并对音频TS数据包和视频TS数据包进行解析,得到解复用后的音频数据和视频数据并进行输出。不需要增加任何的硬件成本,降低了机顶盒的生产成本,同时也增加了机顶盒中CPU的利用率。

Description

一种机顶盒解复用TS传输流的方法及系统
技术领域
本发明涉及机顶盒技术领域,尤其涉及一种机顶盒解复用TS传输流的方法及系统。
背景技术
MPEG-2是ISO/IEC/JTC1/SC29/WG11制定的图像压缩标准,它是为了适应数字电视节目的生成、编辑、存储、传输和现实的综合要求而研发的,广泛用于数字电视广播和DVD。数字电视基本上都采用MPEG-2标准进行压缩、打包传输,而IPTV为了能与数字电视广播节目相兼容,它的音视频也采用MPEG-2标准。为了提高带宽利用率,发送端一般都会对多路节目进行复用,形成节目传输流(Multip program transport stream),简称TS传输流,所以我们IPTV机顶盒端就需要对接收到的流或者经TS封装过的文件进行解复用。现有技术中解复用一般采用硬件解复用电路实现,硬件解复用无疑会增加机顶盒的成本,而且硬件解复用电路只能解复用TS媒体,造成了对硬件资源的浪费。
发明内容
本发明的目的是针对现有技术中采用硬件解复用电路导致机顶盒成本高的技术问题,提供一种机顶盒解复用TS传输流的方法。本发明还公开了一种机顶盒解复用TS传输流的系统。
本发明的目的通过下述技术方案来实现:
一种机顶盒解复用TS传输流的方法,其具体包含以下步骤:1.发送端对多路节目进行复用,形成TS传输流传输给机顶盒CPU进行解复用;2.解复用进程读取TS传输流数据,根据TS包的标志位识别出TS包;3.解析TS包头,根据分组标识符PID找到节目关联表PAT,其中PAT的分组标识符PID=0;4,解析节目关联表PAT,得到节目映射表PMT的分组标识符PID,根据节目映射表PMT的分组标示符PID,找到节目映射表PMT包;5.根据节目映射表PMT包中音频数据的PID和视频数据的PID,在TS传输流中找到相应的音频TS数据包和视频TS数据包,并对音频TS数据包和视频TS数据包进行解析,得到解复用后的音频数据和视频数据并进行输出。
更进一步地,上述步骤1还包括将TS传输流写入共享内存池,机顶盒CPU从共享内存池中读取TS传输流并放入解复用缓存中,以进行后续的解复用处理。
更进一步地,上述方法还包括采用多个解复用进程解析解复用缓存中的数据,多个解复用进程共享共享缓存池中的数据。
更进一步地,上述共享内存的方式为指派方式,共享内存设置读、写指针,将写指针指派给将TS传输流写入共享内存的中间件,将读指针指派给将TS传输流从共享内存中读出的解复用进程。
更进一步地,上述方法还包括计算共享缓存池中的数据大小,并将数据划成小于或者等于固定大小的数据送入解复用队列中。
本发明还公开了一种机顶盒解复用TS传输流的系统,其具体包括发送端、接收端,所述发送端用于对多路节目进行复用,形成TS传输流传输给接收端;所述接收端包括机顶盒CPU,所述机顶盒CPU用于解复用;所述机顶盒CPU中运行解复用进程,所述解复用进程包括读取模块、解析模块、输出模块,所述读取模块用于读取TS传输流数据,根据TS包的标志位识别出TS包。所述解析模块用于解析TS包头,根据分组标识符PID找到节目关联表PAT,其中PAT的分组标识符PID=0;解析节目关联表PAT,得到节目映射表PMT的分组标识符PID,根据节目映射表PMT的分组标示符PID,找到节目映射表PMT包;根据节目映射表PMT包中音频数据的PID和视频数据的PID,在TS传输流中找到相应的音频TS数据包和视频TS数据包,并对音频TS数据包和视频TS数据包进行解析。所述输出模块用于将得到的解复用后的音频数据和视频数据进行输出。
更进一步地,上述系统还包括共享内存模块,所述共享内存模块采用中间件将TS传输流写入共享内存池,机顶盒CPU从共享内存池中读取TS传输流并放入解复用缓存中,以进行后续的解复用处理。
更进一步地,上述还包括多进程处理模块,所述多进程处理模块用于采用多个解复用进程解析解复用缓存中的数据,多个解复用进程共享共享缓存池中的数据。
更进一步地,上述系统还包括指派模块,所述指派模块用于共享内存的共享控制,共享内存设置读、写指针,将写指针指派给将TS传输流写入共享内存的中间件,将读指针指派给将TS传输流从共享内存中读出的解复用进程。
更进一步地,上述系统还包括数据大小计算模块,所述数据大小计算模块用于计算共享缓存池中的数据大小,并将数据划成小于或者等于固定大小的数据送入解复用队列中。
通过采用以上技术方案,本发明具有以下有益效果:使得在机顶盒中不需要增加解复用电路就可以实现对TS传输流的解复用,上述机顶盒解复用的方法采用在机软件的方式运行在机顶盒的CPU中,不需要增加任何的硬件成本,降低了机顶盒的生产成本,同时也增加了机顶盒中CPU的利用率。同时解复用的效率高,成本低。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合具体实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明公开了一种机顶盒解复用TS传输流的方法,其具体包含以下步骤:1.发送端对多路节目进行复用,形成TS传输流传输给机顶盒CPU进行解复用;2.解复用进程读取TS传输流数据,根据TS包的标志位识别出TS包;3.解析TS包头,根据分组标识符PID找到节目关联表PAT,其中PAT的分组标识符PID=0;4,解析节目关联表PAT,得到节目映射表PMT的分组标识符PID,根据节目映射表PMT的分组标示符PID,找到节目映射表PMT包;5.根据节目映射表PMT包中音频数据的PID和视频数据的PID,在TS传输流中找到相应的音频TS数据包和视频TS数据包,并对音频TS数据包和视频TS数据包进行解析,得到解复用后的音频数据和视频数据并进行输出。通过采用上述技术方案,使得在机顶盒中不需要增加解复用电路就可以实现对TS传输流的解复用,上述机顶盒解复用的方法采用在机软件的方式运行在机顶盒的CPU中,不需要增加任何的硬件成本,降低了机顶盒的生产成本,同时也增加了机顶盒中CPU的利用率。
更进一步地,上述步骤1还包括将TS传输流写入共享内存池,机顶盒CPU从共享内存池中读取TS传输流并放入解复用缓存中,以进行后续的解复用处理。通过设置共享内存池,TS传输流数据的存取通过共享实现,减少了数据的拷贝,提高了机顶盒的效率。
更进一步地,上述方法还包括采用多个解复用进程解析解复用缓存中的数据,多个解复用进程共享共享缓存池中的数据。一方面采用多个解复用进程,提高了机顶盒的效率,另外一方面多个进程共享数据,减少数据拷贝,提高效率。
更进一步地,上述共享内存的方式为指派方式,共享内存设置读、写指针,将写指针指派给将TS传输流写入共享内存的中间件,将读指针指派给将TS传输流从共享内存中读出的解复用进程。中间件只将TS传输流写入共享内存,解复用进程只将TS传输流从共享内存中读出至解复用缓存中。中间件对共享内存只有写的权限,解复用进程对共享内存只有读的权限。因此采用指派的方式就完成了共享内存的控制,数据的读写,只需要关注进程指派的共享缓存的读写指针位置,不需要对共享缓存进行加锁保护,减少了数据拷贝,加快了对数据的操作,也降低了CPU的消耗,这种方式更显现出其高效、快速的优势。
更进一步地,上述方法还包括计算共享缓存池中的数据大小,并将数据划成小于或者等于固定大小的数据送入解复用队列中。读取进程判断该数据是TS数据,则计算出可读取的数据大小,然后将数据划成小于或等于固定大小的,如1316的数据块送入解复用队列中。解复用队列有数据后,解复用进程使用出队操作取出数据,进行解复用。
本发明还公开了一种机顶盒解复用TS传输流的系统,其具体包括发送端、接收端,所述发送端用于对多路节目进行复用,形成TS传输流传输给接收端;所述接收端包括机顶盒CPU,所述机顶盒CPU用于解复用;所述机顶盒CPU中运行解复用进程,所述解复用进程包括读取模块、解析模块、输出模块,所述读取模块用于读取TS传输流数据,根据TS包的标志位识别出TS包。
所述解析模块用于解析TS包头,根据分组标识符PID找到节目关联表PAT,其中PAT的分组标识符PID=0;解析节目关联表PAT,得到节目映射表PMT的分组标识符PID,根据节目映射表PMT的分组标示符PID,找到节目映射表PMT包;根据节目映射表PMT包中音频数据的PID和视频数据的PID,在TS传输流中找到相应的音频TS数据包和视频TS数据包,并对音频TS数据包和视频TS数据包进行解析。
所述输出模块用于将得到的解复用后的音频数据和视频数据进行输出。通过采用上述技术方案,使得在机顶盒中不需要增加解复用电路就可以实现对TS传输流的解复用,上述机顶盒解复用的方法采用在机软件的方式运行在机顶盒的CPU中,不需要增加任何的硬件成本,降低了机顶盒的生产成本,同时也增加了机顶盒中CPU的利用率。
更进一步地,上述系统还包括共享内存池,采用中间件将TS传输流写入共享内存池,机顶盒CPU从共享内存池中读取TS传输流并放入解复用缓存中,以进行后续的解复用处理。通过设置共享内存池,TS传输流数据的存取通过共享实现,减少了数据的拷贝,提高了机顶盒的效率。
更进一步地,上述系统还包括多进程处理模块,所述多进程处理模块用于采用多个解复用进程解析解复用缓存中的数据,多个解复用进程共享共享缓存池中的数据。一方面采用多个解复用进程,提高了机顶盒的效率,另外一方面多个进程共享数据,减少数据拷贝,提高效率。
更进一步地,上述系统还包括指派模块,所述指派模块用于共享内存的共享控制,共享内存设置读、写指针,将写指针指派给将TS传输流写入共享内存的中间件,将读指针指派给将TS传输流从共享内存中读出的解复用进程。中间件只将TS传输流写入共享内存,解复用进程只将TS传输流从共享内存中读出至解复用缓存中。中间件对共享内存只有写的权限,解复用进程对共享内存只有读的权限。因此采用指派的方式就完成了共享内存的控制,数据的读写,只需要关注进程指派的共享缓存的读写指针位置,不需要对共享缓存进行加锁保护,减少了数据拷贝,加快了对数据的操作,也降低了CPU的消耗,这种方式更显现出其高效、快速的优势。
更进一步地,上述系统还包括数据大小计算模块,所述数据大小计算模块用于计算共享缓存池中的数据大小,并将数据划成小于或者等于固定大小的数据送入解复用队列中。读取进程判断该数据是TS数据,则计算出可读取的数据大小,然后将数据划成小于或等于固定大小的,如1316的数据块送入解复用队列中。解复用队列有数据后,解复用进程使用出队操作取出数据,进行解复用。
采用上述本发明的技术方案,使得无需硬件模块支持,通过CPU算法软解复用ts格式封装的文件和媒体流。根据DVB-13818数字电视规范设计,兼容网络流和本地文件形式的TS数据。共享数据缓存的访问及保护采用使用权指派方式取代加锁的方式。
上述的实施例中所给出的系数和参数,是提供给本领域的技术人员来实现或使用本发明的,本发明并不限定仅取前述公开的数值,在不脱离本发明的发明思想的情况下,本领域的技术人员可以对上述实施例作出种种修改或调整,因而本发明的保护范围并不被上述实施例所限,而应该是符合权利要求书提到的创新性特征的最大范围。

Claims (10)

1.一种机顶盒解复用TS传输流的方法,其具体包含以下步骤:1.发送端对多路节目进行复用,形成TS传输流传输给机顶盒CPU进行解复用;2.解复用进程读取TS传输流数据,根据TS包的标志位识别出TS包;3.解析TS包头,根据分组标识符PID找到节目关联表PAT,其中PAT的分组标识符PID=0;4,解析节目关联表PAT,得到节目映射表PMT的分组标识符PID,根据节目映射表PMT的分组标示符PID,找到节目映射表PMT包;5.根据节目映射表PMT包中音频数据的PID和视频数据的PID,在TS传输流中找到相应的音频TS数据包和视频TS数据包,并对音频TS数据包和视频TS数据包进行解析,得到解复用后的音频数据和视频数据并进行输出。
2.如权利要求1所述的机顶盒解复用TS传输流的方法,其特征在于所述步骤1还包括将TS传输流写入共享内存池,机顶盒CPU从共享内存池中读取TS传输流并放入解复用缓存中,以进行后续的解复用处理。
3.如权利要求2所述的机顶盒解复用TS传输流的方法,其特征在于所述方法还包括采用多个解复用进程解析解复用缓存中的数据,多个解复用进程共享共享缓存池中的数据。
4.如权利要求3所述的机顶盒解复用TS传输流的方法,其特征在于所述共享内存的方式为指派方式,共享内存设置读、写指针,将写指针指派给将TS传输流写入共享内存的中间件,将读指针指派给将TS传输流从共享内存中读出的解复用进程。
5.如权利要求4所述的机顶盒解复用TS传输流的方法,其特征在于所述方法还包括计算共享缓存池中的数据大小,并将数据划成小于或者等于固定大小的数据送入解复用队列中。
6.一种机顶盒解复用TS传输流的系统,其特征在于包括发送端、接收端,所述发送端用于对多路节目进行复用,形成TS传输流传输给接收端;所述接收端包括机顶盒CPU,所述机顶盒CPU用于解复用;所述机顶盒CPU中运行解复用进程,所述解复用进程包括读取模块、解析模块、输出模块,所述读取模块用于读取TS传输流数据,根据TS包的标志位识别出TS包;
所述解析模块用于解析TS包头,根据分组标识符PID找到节目关联表PAT,其中PAT的分组标识符PID=0;解析节目关联表PAT,得到节目映射表PMT的分组标识符PID,根据节目映射表PMT的分组标示符PID,找到节目映射表PMT包;根据节目映射表PMT包中音频数据的PID和视频数据的PID,在TS传输流中找到相应的音频TS数据包和视频TS数据包,并对音频TS数据包和视频TS数据包进行解析;
所述输出模块用于将得到的解复用后的音频数据和视频数据进行输出。
7.如权利要求6所述的机顶盒解复用TS传输流的系统,其特征在于所述系统还包括共享内存模块,所述共享内存模块采用中间件将TS传输流写入共享内存池,机顶盒CPU从共享内存池中读取TS传输流并放入解复用缓存中,以进行后续的解复用处理。
8.如权利要求7所述的机顶盒解复用TS传输流的系统,其特征在于所述系统还包括多进程处理模块,所述多进程处理模块用于采用多个解复用进程解析解复用缓存中的数据,多个解复用进程共享共享缓存池中的数据。
9.如权利要求8所述的机顶盒解复用TS传输流的系统,其特征在于所述系统还包括指派模块,所述指派模块用于共享内存的共享控制,共享内存设置读、写指针,将写指针指派给将TS传输流写入共享内存的中间件,将读指针指派给将TS传输流从共享内存中读出的解复用进程。
10.如权利要求9所述的机顶盒解复用TS传输流的系统,其特征在于所述系统还包括数据大小计算模块,所述数据大小计算模块用于计算共享缓存池中的数据大小,并将数据划成小于或者等于固定大小的数据送入解复用队列中。
CN201210531100.8A 2012-12-11 2012-12-11 一种机顶盒解复用ts传输流的方法及系统 Active CN102970598B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210531100.8A CN102970598B (zh) 2012-12-11 2012-12-11 一种机顶盒解复用ts传输流的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210531100.8A CN102970598B (zh) 2012-12-11 2012-12-11 一种机顶盒解复用ts传输流的方法及系统

Publications (2)

Publication Number Publication Date
CN102970598A true CN102970598A (zh) 2013-03-13
CN102970598B CN102970598B (zh) 2015-06-17

Family

ID=47800416

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210531100.8A Active CN102970598B (zh) 2012-12-11 2012-12-11 一种机顶盒解复用ts传输流的方法及系统

Country Status (1)

Country Link
CN (1) CN102970598B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107979776A (zh) * 2017-12-12 2018-05-01 青岛海信电器股份有限公司 音视频数据的录制方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101355640A (zh) * 2008-09-11 2009-01-28 敖发良 多显示数字电视机顶盒
CN102023961A (zh) * 2009-09-10 2011-04-20 中兴通讯股份有限公司 一种基于共享内存的通信方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101355640A (zh) * 2008-09-11 2009-01-28 敖发良 多显示数字电视机顶盒
CN102023961A (zh) * 2009-09-10 2011-04-20 中兴通讯股份有限公司 一种基于共享内存的通信方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107979776A (zh) * 2017-12-12 2018-05-01 青岛海信电器股份有限公司 音视频数据的录制方法及装置

Also Published As

Publication number Publication date
CN102970598B (zh) 2015-06-17

Similar Documents

Publication Publication Date Title
CN102984576B (zh) 一种ts传输流媒体音视频剥离的方法及系统
US9848217B2 (en) Method for transmitting and receiving program configuration information for scalable ultra high definition video service in hybrid transmission environment, and method and apparatus for effectively transmitting scalar layer information
US9538199B2 (en) Data transmission across independent streams
US20210185336A1 (en) Carriage systems encoding or decoding jpeg 2000 video
CN102404624A (zh) 一种数字机顶盒用支持硬件解码的全格式媒体播放器
CN101068367A (zh) 用于改变编解码器的方法和装置
CN103237255A (zh) 一种多线程的音视频同步控制方法及系统
CN1666498A (zh) 从加密的mpeg传输流中构造mpeg节目流的方法
CN101212671A (zh) 一种低延迟的实时复用传输流的方法
CN101980541A (zh) 数字电视接收装置及其换台方法
CN1666526A (zh) 用于jvt视频的通用适配层
WO2019128668A1 (zh) 视频码流处理方法、装置、网络设备和可读存储介质
CN103686203A (zh) 视频转码方法及装置
US20210029480A1 (en) Apparatus, a method and a computer program for delivering audio scene entities
US20140112395A1 (en) Method and apparatus for decoder buffering in hybrid coded video system
CN102970598B (zh) 一种机顶盒解复用ts传输流的方法及系统
CN107787585B (zh) 用于处理立体视频数据的mmt装置和mmt方法
CN101986712A (zh) 数字电视接收装置及其换台方法
US10291922B2 (en) Method and apparatus for decoding an enhanced video stream
CN104853243A (zh) 一种传送流解复用的方法和装置
US20120144443A1 (en) System and method for executing source buffering for multiple independent group transmission of real-time encoded scalabe video contents
US10630745B2 (en) MMT apparatus and MMT method for processing media data
CN107682716B (zh) 一种码率控制方法和装置
CN109743627A (zh) 基于avs+视频编码数字电影包的播放方法
CN101466030B (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210514

Address after: No. 6, Jiuhua Road, khuchuang Park, Mianyang, Sichuan

Patentee after: Sichuan Jiuzhou Investment Holding Group Co.,Ltd.

Address before: 621000 No.6, Jiuhua Road, Mianyang City, Sichuan Province

Patentee before: SICHUAN JIUZHOU ELECTRIC GROUP Co.,Ltd.