CN1327443C - 一种流媒体点播的音视频切换方法 - Google Patents
一种流媒体点播的音视频切换方法 Download PDFInfo
- Publication number
- CN1327443C CN1327443C CNB031047351A CN03104735A CN1327443C CN 1327443 C CN1327443 C CN 1327443C CN B031047351 A CNB031047351 A CN B031047351A CN 03104735 A CN03104735 A CN 03104735A CN 1327443 C CN1327443 C CN 1327443C
- Authority
- CN
- China
- Prior art keywords
- audio
- video
- sequence number
- server
- timestamp
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000008859 change Effects 0.000 claims abstract description 12
- 238000005516 engineering process Methods 0.000 claims abstract description 9
- 230000008569 process Effects 0.000 claims abstract description 7
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 230000009466 transformation Effects 0.000 claims description 4
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 230000008447 perception Effects 0.000 abstract description 3
- 238000012986 modification Methods 0.000 abstract description 2
- 230000004048 modification Effects 0.000 abstract description 2
- 230000005540 biological transmission Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000001256 tonic effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明属于计算机多媒体技术领域,涉及一种流媒体点播的音视频切换方法。其特征在于,当服务器以正常情况下发音视频文件时,可以根据需要,切换到不同的节目源,具体包括:完全由服务器实现的与客户端无关的切换方法和需要客户端进行少量修改的与客户端相关的切换方法。采用本发明,流媒体服务器在播放过程中,可以使得用户在通过网络欣赏音视频节目的同时,选择多个节目源,使得客户端在没有任何感知的,同时不需要任何改动或仅需要改动时间戳的情况下,看到多个音视频节目。从而为用户提供更多、更丰富的服务。
Description
技术领域
本发明属于计算机多媒体技术领域,特别涉及流媒体传输技术。
背景技术
流媒体技术是近年来兴起的一种在线播放技术。在线播放,顾名思义就是边下载边播放,播放器并不用等到多媒体文件全部下载到本地硬盘以后再播放,而是在下载的同时进行播放。播放器在客户端的内存中开辟出一个缓冲区,通常是几兆字节的空间,播放器等到缓冲区中有足够的数据后开始解码播放,这个过程通常需要几秒钟的时间,同下载完后再播放相比大大节省了等待时间,而且由于没有下载到硬盘上,而是直接存储到内存中,播放完后即被播放器删除,因此对数字版权起到保护作用。在技术上在线播放器要比下载播放的播放器更复杂,它必须支持网络播放功能。
“流媒体”不同于传统的多媒体,它是一种结构化的网络媒体流,它的主要特点就是以“音视频流”(Audio-Video Stream)的形式在网络上传送,播放器可以像播放本地文件一样播放网络流媒体,从而实现暂停、恢复、快进、快退等功能。
流媒体传输过程中,所使用的主要传输协议为实时流传输协议(Real-timeTransport Protocol),简称RTP协议。RTP是用于Internet上针对多媒体数据流的一种传输协议,被定义在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。RTP提供端对端网络传输功能,适合通过组播和点播传送实时数据,如音频、视频和仿真数据。RTP没有涉及资源预定和质量保证等实时服务。RTP报文格式中包括固定的RTP报文头、可选用的作用标识(CSRC)和负载数据。如果RTP所依赖的底层协议对RTP报文的格式有所要求,RTP报文的格式必须进行修改或重新定义。通常,单一的底层数据报文仅包含单一的RTP报文。
流媒体播放器对收到的RTP数据包的显示顺序及时间是根据RTP包头(Header)所包含的时间戳(timestamp)和序列号(sequence number)来确定的,时间戳是视频节目采集制作时存储到视频帧内的一种时间值,流媒体播放器利用它来决定某一视频帧在什么时间播放。序列号则代表了每个视频包的顺序,流媒体播放器利用它来对到达的所有数据包进行排序。流媒体播放器按照收到的视频帧序列号和时间戳的大小和顺序进行播放,就实现了正常播放。
已有的一种正常播放的方法如图1所示,包括以下步骤:
1)音视频文件在进行网络传输前,首先读取每一视频帧,或每一音频数据包,并将其封装到一个RTP包中;
2)将RTP包中此时的时间戳TS进行变换:TS→TS′;(这里的变换并没有具体要求,可以按照RFC3016协议进行变换,也可以选择自己的变换方式,只要保证客户端能够识别,并且能够反变换回TS即可)
3)RTP包中的序列号,首先进行累加(SN=SN+1);
4)将经过时间戳和序列号变换后的RTP数据包通过网络传送出去;
5)客户端的流媒体播放器收到RTP数据包后,先根据它的序列号SN进行排队;
6)根据排列好的RTP数据包,依次对其中的时间戳进行反变换,TS′→TS;
7)播放器将转换后的RTP包送到解码单元进行解码,还原为一帧数据;
8)播放器将解码后的视频帧或音频帧送到显示单元,显示单元根据视频帧或音频帧内的时间戳TS,显示该视频帧;
9)播放器按照正常情况播放电影文件。
上述的播放方法有以下不足之处:
用户在通过网络欣赏音视频节目时,不能选择节目源;同时,服务器在提供音视频服务时,也不具备智能性及商业应用前景。
发明内容
本发明的目的是为克服已有技术的不足之处,提出一种基于流媒体技术的音视频流切换技术。采用本发明,流媒体服务器在播放过程中,可以使得用户在通过网络欣赏音视频节目的同时,选择多个节目源,使得客户端在没有任何感知的,同时不需要任何改动或仅需要改动时间戳的情况下,看到多个音视频节目。从而为用户提供更多、更丰富的服务。
本发明提出一种基于流媒体技术的服务器音视频流切换方法,其特征在于,当服务器以正常情况下发音视频文件时,可以根据需要,切换到不同的节目源,切换方法包括两种:完全由服务器实现的与客户端无关的切换方法和需要客户端进行少量修改的与客户端相关的切换方法。
其中,本发明与客户端无关的切换方法,包括以下步骤:
1)服务器依照正常流程,向客户端下发音视频文件;
2)当播放到一设定时刻,由服务器决定是否插入新的音视频流:若否,则正常播放原有的音视频文件;
3)若是,服务器对于将要播放的新的音视频文件进行初始化工作;
4)同时对于目前正在播放的音视频流暂停或者退出;
5)根据音、视频流的不同,分别记录下暂停或者退出的RTP数据包中的序列号SN_old和时间戳TS_old;
其中:序列号和时间戳均为正整数;
6)读取将要播放的新的音视频文件,并将其中一帧封装到RTP数据包中;
7)将RTP包中此时的音、视频时间戳、序列号分别加上已暂停或退出音视频文件的序列号SN_old和时间戳TS_old;
8)对RTP包中的音、视频时间戳TS进行变换,同时序列号SN递增1;
TS→TS′;
SN=SN+1;
9)将经过变换后的时间戳和序列号的RTP数据包通过网络传送出去;
10)客户端无需任何改动,与正常播放的流程相同,开始观看一部新的音视频文件。
本发明与客户端相关的切换方法,包括以下步骤:
1)服务器依照正常流程,向客户端下发音视频文件;
2)当播放到一设定时刻,由服务器决定是否插入新的音视频流:若否,则正常播放原有的音视频文件;
3)若是,服务器对于将要播放的新的音视频文件进行初始化工作;
4)同时对于目前正在播放的音视频流暂停或者退出;
5)根据音、视频流的不同,记录下暂停或者退出的RTP数据包中的序列号SN_old;(不需要服务器主动记录时间戳)
6)读取将要播放的新的音视频文件,并将其中一帧封装到RTP数据包中;
7)将此时RTP包中的序列号加上已退出音视频文件的序列号SN;
8)对RTP包中的时间戳TS进行变换,同时序列号SN递增1;
1.TS→TS′;
2.SN=SN+1;
9)将经过时间戳和序列号变换后的RTP数据包通过网络传送出去;
10)客户端收到此时的RTP数据包,将其还原为一帧,根据其中的序列号SN进行排序,并对时间戳进行反变换:TS′→TS;
11)播放器此时将检测到时间戳TS发生显著变化,如回零;
12)客户端认为这是一部新的音视频文件,调整当前基准时间匹配新的时间戳,并重新开始计时;
13)客户端开始观看一部新的音视频文件。
本发明的原理
流媒体服务器与播放器之间,用以确定音视频流的最主要标志为序列号和时间戳,若可以保证,到达客户端的RTP数据包中的序列号毫无变化,时间戳也毫无变化(与客户端无关)的播放方式;或者序列号毫无变化,时间戳由客户端调整(与客户端相关)的播放方式,那么就可以在服务器端进行各种音视频流文件的切换,而客户端可以正常观看。
本发明的优点
1.不拘泥于一种音视频文件的播放,可以根据服务器需要,随时切换到任意一个音视频文件;
2.这种切换在用户看来是无缝的,即用户毫无感知;
3.客户端不需要任何辅助动作或者需要稍加改动,主要由服务器独立完成;
4.操作简单,易于实现;
5.与编解码器和网络协议无关;
6.效果明显,极具商业潜力。
附图说明
图1为当前流媒体正常播放方法流程图。
图2为本发明的流媒体点播的音视频切换方法实施例一流程图。
图3为本发明的流媒体点播的音视频切换方法实施例二流程图。
具体实施方式
本发明提出的一种基于流媒体技术的音视频流切换实现方法实施例结合附图详细
说明如下:
本实施例的服务器端的配置
CPU:Intel PIII 1GHz
内存:128M
操作系统:RedHat7.1 Linux Server
流媒体服务器:LSMP Media Server
客户端配置
CPU:Intel PIII 800MHz
内存:128M
操作系统:Windows2000 Professional
播放器:LSMP Media Player
点播电影:lucky.mp4;
切换电影:likeyou.mp4;
切换时间:60秒钟
本发明提出的服务器音视频流切换实现方法的实施例一如图2所示,本实施例采用与客户端无关的流切换方法;其具体包括以下步骤:
1.服务器依照正常流程向客户端发送音视频文件:lucky.mp4;
2.当到达60秒钟后,服务器决定插入新的音视频文件likeyou.mp4;
3.服务器对于新的音视频文件likeyou.mp4进行初始化;
4.同时,结束当前音视频文件lucky.mp4的播放;
5.记录下lucky.mp4播放中的相关信息:音频的时间戳TSa_old为78、序列号SNa_old为235和视频的时间戳TSv_old为567、序列号SNv_old为1890;
6.读取likeyou.mp4文件的一帧,并将其封装到RTP包中;
7.将该RTP包中的音频时间戳TSa_new、音频序列号SNa_new、视频时间戳TSv_new、视频序列号SNv_new分别加上lucky.mp4的相应序列号和时间戳:
TSv_new=TSv_new+567;
TSa_new=TSa_new+78;
SNv_new=SNv_new+1890;
SNa_new=SNa_new+235;
8.对RTP包中的时间戳进行变换,同时序列号递增1;
TS→TS′;
SN=SN+1;
9.将变换后的RTP包通过网络发送到客户端;
10.客户端在无需任何变动的情况下,开始观看一部新的音视频文件。
本发明提出的服务器音视频流切换实现方法的实施例二如图3所示,本实施例采用与客户端相关的切换方法;其具体包括以下步骤:
1.服务器依照正常流程向客户端发送音视频文件:lucky.mp4;
2.当到达60秒钟后,服务器决定插入新的音视频文件likeyou.mp4,
3.服务器对于新的音视频文件likeyou.mp4进行初始化;
4.同时,结束当前音视频文件lucky.mp4的播放;
5.记录下lucky.mp4播放中的相关信息:音频的序列号SNa_old为235和视频的序列号SNv_old为1890;(不需要服务器主动记录时间戳)
6.读取likeyou.mp4文件的一帧,并将其封装到RTP包中;
7.将该RTP包中的音频序列号SNa_new、视频序列号SNv_ new分别加上lucky.mp4的音、视频序列号:
SNv_new=SNv_new+1890;
SNa_new=SNa_new+235;
8.对RTP包中的时间戳进行变换,同时序列号递增1;
TS→TS′;
SN=SN+1;
9.将变换后的RTP包通过网络发送到客户端;
10.客户端播放器在收到数据包后,将其还原为一帧,根据序列号SN排序,对时间戳进行反变换:TS′→TS,得到TS;
11.播放器检测到当前数据包的时间戳为0,(即时间戳TS发生显著变化);
12.客户端认为这是一部新的音视频文件,调整当前基准时间匹配新的时间戳,并重新计时;
13.客户端开始观看一部新的音视频文件。
Claims (2)
1、一种基于流媒体技术的服务器音视频流切换方法,其特征在于,当服务器以正常情况下发音视频文件时,采用与客户端无关的切换方法,该方法具体包括以下步骤:
1)服务器依照正常流程,向客户端下发音视频文件;
2)当播放到一设定时刻,由服务器决定是否插入新的音视频流:若否,则正常播放原有的音视频文件;
3)若是,服务器对于将要播放的新的音视频文件进行初始化工作;
4)同时对于目前正在播放的音视频流暂停或者退出;
5)根据音视频流的不同,分别记录下暂停或者退出的RTP数据包中的序列号和时间戳,其中:序列号和时间戳均为正整数;
6)读取将要播放的新的音视频文件,并将其中一帧封装到RTP数据包中;
7)将RTP包中此时的音视频时间戳、序列号分别加上已暂停或退出音视频文件的序列号和时间戳;
8)对RTP包中的音视频时间戳进行变换,同时序列号递增1:
9)经过变换后的时间戳和序列号的RTP数据包通过网络传送出去;
10)客户端无需任何改动,与正常播放的流程相同,开始观看一部新的音视频文件。
2、一种基于流媒体技术的服务器音视频流切换方法,其特征在于,当服务器以正常情况下发音视频文件时,采用与客户端相关的切换方法,该方法具体以下步骤:
1)服务器依照正常流程,向客户端下发音视频文件;
2)当播放到一设定时刻,由服务器决定是否插入新的音视频流:若否,则正常播放原有的音视频文件;
3)若是,服务器对于将要播放的新的音视频文件进行初始化工作;
4)同时对于目前正在播放的音视频流暂停或者退出;
5)根据音视频流的不同,记录下暂停或者退出的RTP数据包中的序列号;
6)读取将要播放的新的音视频文件,并将其中一帧封装到RTP数据包中;
7)将此时RTP包中的序列号加上已退出音视频文件的序列号;
8)对RTP包中的时间戳进行变换,同时序列号递增1;
9)将经过时间戳和序列号变换后的RTP数据包通过网络传送出去;
10)客户端收到此时的RTP数据包,将其还原为一帧,根据其中的序列号SN进行排序,并对时间戳进行反变换;
11)播放器此时将检测到时间戳TS发生显著变化;
12)客户端认为这是一部新的音视频文件,调整当前基准时间匹配新的时间戳,并重新开始计时;
13)客户端开始观看一部新的音视频文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031047351A CN1327443C (zh) | 2003-02-28 | 2003-02-28 | 一种流媒体点播的音视频切换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031047351A CN1327443C (zh) | 2003-02-28 | 2003-02-28 | 一种流媒体点播的音视频切换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1431660A CN1431660A (zh) | 2003-07-23 |
CN1327443C true CN1327443C (zh) | 2007-07-18 |
Family
ID=4790063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031047351A Expired - Fee Related CN1327443C (zh) | 2003-02-28 | 2003-02-28 | 一种流媒体点播的音视频切换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1327443C (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100426730C (zh) * | 2006-08-11 | 2008-10-15 | 杭州华三通信技术有限公司 | 基于组播的轮切装置,系统及方法 |
CN101277179B (zh) * | 2007-03-29 | 2012-08-08 | 华为技术有限公司 | 发送、接收通知消息的方法、装置及系统 |
US7881335B2 (en) | 2007-04-30 | 2011-02-01 | Sharp Laboratories Of America, Inc. | Client-side bandwidth allocation for continuous and discrete media |
WO2009060615A1 (en) * | 2007-11-07 | 2009-05-14 | Thomson Licensing | Editing apparatus, editing method, and editing program |
CN101453690B (zh) * | 2007-11-29 | 2011-09-21 | 中兴通讯股份有限公司 | 一种移动流媒体场景业务中的场景状态管理方法 |
CN101990112B (zh) * | 2009-08-07 | 2015-01-07 | 传线网络科技(上海)有限公司 | 互联网点播信号动态切换方法 |
CN108337230A (zh) * | 2017-12-26 | 2018-07-27 | 武汉烽火众智数字技术有限责任公司 | 一种基于智能手机的音视频实时回传方法及系统 |
CN112911335B (zh) * | 2021-02-03 | 2022-05-27 | 烽火通信科技股份有限公司 | 一种基于视频编码的服务调度方法、视频服务器和机顶盒 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5956482A (en) * | 1996-05-15 | 1999-09-21 | At&T Corp | Multimedia information service access |
CN1278384A (zh) * | 1997-09-04 | 2000-12-27 | 发现通信公司 | 通过计算机网络对包含图象校正的图象访问与控制的装置 |
CN1350400A (zh) * | 2000-10-20 | 2002-05-22 | 林石墙 | 有线节目收视数据处理的方法 |
US20020116716A1 (en) * | 2001-02-22 | 2002-08-22 | Adi Sideman | Online video editor |
-
2003
- 2003-02-28 CN CNB031047351A patent/CN1327443C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5956482A (en) * | 1996-05-15 | 1999-09-21 | At&T Corp | Multimedia information service access |
CN1278384A (zh) * | 1997-09-04 | 2000-12-27 | 发现通信公司 | 通过计算机网络对包含图象校正的图象访问与控制的装置 |
CN1350400A (zh) * | 2000-10-20 | 2002-05-22 | 林石墙 | 有线节目收视数据处理的方法 |
US20020116716A1 (en) * | 2001-02-22 | 2002-08-22 | Adi Sideman | Online video editor |
Also Published As
Publication number | Publication date |
---|---|
CN1431660A (zh) | 2003-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023024834A1 (zh) | 一种游戏数据处理方法、装置及存储介质 | |
CN101271720B (zh) | 一种手机流媒体音视频的同步方法 | |
US7346698B2 (en) | Webcasting method and system for time-based synchronization of multiple, independent media streams | |
RU2543568C2 (ru) | Плавная потоковая передача клиентского мультимедиа без фиксации состояния | |
US7376747B2 (en) | Streaming of data | |
CN101371488B (zh) | 一种不同媒体流间的同步方法及系统 | |
JP4702397B2 (ja) | コンテンツサーバ、情報処理装置、ネットワーク機器、コンテンツ配信方法、情報処理方法およびコンテンツ配信システム | |
CN110915180A (zh) | 低时延媒体摄取系统、设备和方法 | |
US20090080864A1 (en) | Method and apparatus for implementing network personal video recorder for digital video settop boxes | |
US20090293093A1 (en) | Content server, information processing apparatus, network device, content distribution method, information processing method, and content distribution system | |
CN106507186B (zh) | 一种媒体信息的切换方法、服务器及存储介质 | |
CN101106697A (zh) | 数据传输系统、接收装置和方法、以及发送装置和方法 | |
CN101420316A (zh) | 影像分发系统、影像中继装置 | |
JP2004272712A (ja) | 受信装置および情報閲覧方法 | |
CN108494792A (zh) | 一种flash播放器播放hls视频流的转换系统及其工作方法 | |
CN1327443C (zh) | 一种流媒体点播的音视频切换方法 | |
JP5428734B2 (ja) | ネットワーク機器、情報処理装置、ストリーム切替方法、情報処理方法、プログラムおよびコンテンツ配信システム | |
JP4735666B2 (ja) | コンテンツサーバ、情報処理装置、ネットワーク機器、コンテンツ配信方法、情報処理方法およびコンテンツ配信システム | |
CN1972447A (zh) | 基于流媒体技术的多画面播放器及其播放方法 | |
WO2014036873A1 (zh) | 一种传输流的共享方法 | |
CN102710967A (zh) | 一种云电视系统与方法 | |
CN101242527A (zh) | 分布式实时播放方法与装置 | |
CN101938633A (zh) | 一种基于互动机顶盒的嵌入式流媒体播放模块的实现方法 | |
CA3026535C (en) | Multimedia resource synchronous pushing method based on heterogeneous network | |
KR101999235B1 (ko) | Mmtp기반 하이브리드 브로드캐스트 브로드밴드 서비스 제공 방법 및 시스템 |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070718 Termination date: 20140228 |