CN108494792A - 一种flash播放器播放hls视频流的转换系统及其工作方法 - Google Patents

一种flash播放器播放hls视频流的转换系统及其工作方法 Download PDF

Info

Publication number
CN108494792A
CN108494792A CN201810312365.6A CN201810312365A CN108494792A CN 108494792 A CN108494792 A CN 108494792A CN 201810312365 A CN201810312365 A CN 201810312365A CN 108494792 A CN108494792 A CN 108494792A
Authority
CN
China
Prior art keywords
hls
video
flash player
http
servers
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
CN201810312365.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.)
Sichuan Bai Tong Tong Technology Co Ltd
Original Assignee
Sichuan Bai Tong Tong Technology 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 Bai Tong Tong Technology Co Ltd filed Critical Sichuan Bai Tong Tong Technology Co Ltd
Priority to CN201810312365.6A priority Critical patent/CN108494792A/zh
Publication of CN108494792A publication Critical patent/CN108494792A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • 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/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种flash播放器播放hls视频流的转换系统及其工作方法,flash播放器模块进行视频地址分析,根据得到的视频播放地址向http代理模块发送http播放请求,然后向hls服务器请求m3u8文件,hls服务器返回相应的m3u8文件;http代理模块解析m3u8文件并向hls服务器请求相应的切片文件,hls服务器返回相应的切片文件返回;http代理模块向编码模块发送待转码的切片文件,编码模块将待转码的切片文件转换为flv格式,然后通过http代理模块返回至flash播放器解码并播放。本发明只需要一种满足hls协议的ts格式的文件就能满足flash播放器和移动终端的需求,减少了直播服务器系统的复杂性和降低了系统的不稳定性因素,减少了视频格式转换的时间和步骤,同时节省了磁盘空间。

Description

一种flash播放器播放hls视频流的转换系统及其工作方法
技术领域
本发明属于互联网音视频技术领域,具体涉及一种flash播放器播放hls视频流的转换系统及其工作方法。
背景技术
目前在PC端播放视频还是采用页面嵌入flash播放器的方式,flash播放器目前支持的协议有http、rtmp、rtmpc等,但不支持hls协议,支持播放的视频格式有flv、mp4、f4v、3gp。随着移动互联网视频播放技术的快速发展,尤其是由苹果公司提出的视频播放协议hls协议已经统领了移端终端的视频播放协议。在直播领域,为了满足不同的终端,直播服务器通常会开通两路协议,一路支持PC端的flash播放器协议,另一路支持移动终端的hls协议;在视频点播领域,为了满足不同的终端,通常会支持两种点播协议,一种是支持PC端flash播放器的协议,另一种是支持移动终端的hls协议。由此可见,hls协议既支持直播,还支持点播。
hls协议播放视频的优点如下:
1、性能高。采用HTTP协议传输数据。
2、穿防火墙能力强。hls协议的本质是采用了HTTP协议进行数据传输,
目前互联网中的防火墙都开放HTTP协议的端口80。
3、原生支持很好:IOS、Android平台支持完美。
4、采用hls协议播放视频的优势在于:将大文件切片,任意的切片视频不依赖于其它切片视频。由于hls协议采用切片,因此读取一个切片比读取一个大文件花费的时间要小。因此,hls协议在视频点播中支持的快进、快退的体验非常好,达到所见即所得的效果。
5、采用hls协议的直播优势在于:由于hls协议采用了切片机制,一个切片不依赖于另一个切片,因此当某个切片在网络传输过程中发生数据错误时,播放影响也仅在出现数据错误的某个切片,不会影响其它切片和全局视频播放。当某个切片不存时,会自动播放下一个切片,因此,hls协议的容错能力比其它协议播放视频的容错能力强。
当前PC端flash播放器播放视频还存在如下问题:
1、直播问题:
PC端flash播放器直播主要采用flv的视频格式进行播放,但是flv视频格式是一个连续的视频流,由若干个tag标签组成,每个tag标签都依赖前一个tag标签,因此当其中的某个tag标签出现问题的时候,视频播放就会出现问题且不能自我恢复,需要重新请求播放视频。
2、视频点播问题
PC端视频点播目前通常采用将mp4、flv文件进行分段,通常视频按每段时长15分钟或30分钟进行分段处理。但是在实现播放过程中,当某一段即将播放完成,进入下一分段视频时,会出现卡顿或黑屏现象。某一分段依赖于前一个分段,因此,在视频快进、快退时,体验不友好。
发明内容
本发明的目的在于:解决上述现有技术中的不足,提供一种flash播放器播放hls视频流的转换系统及其工作方法,只需要一种满足hls协议的ts格式的文件就能满足flash播放器和移动终端的需求,显著减少了直播服务器系统的复杂性和降低了系统的不稳定性因素,减少了视频格式转换的时间和步骤,同时大大节省了磁盘空间。
为了实现上述目的,本发明采用的技术方案为:
一种flash播放器播放hls视频流的转换系统,它包括:
Internet网络;
分别与Internet网络连接的hls服务器和直播前端;所述hls服务器通过CDN网络连接用户端。
进一步的,上述的直播前端包括与Internet网络连接的直播编码器和与直播编码器连接的若干台摄像机。
进一步的,上述的播放端包括flash播放器、IOS播放器、Android播放器和H5播放器。
进一步的,上述的hls服务器包括hls直播服务器和hls点播服务器。
进一步的,上述的flash播放器包括:
与hls服务器连接的编码器模块和http代理模块,编码器模块用于将切片文件按照flv封装格式进行重新封装;
与所述http代理模块连接的flash播放器模块;
所述编码器模块与http代理模块连接。
进一步的,上述的flash播放器模块还包括协议解析模块。
进一步的,上述的http代理模块包括:
http代理模块,用于接收所述flash播放器的http请求,并响应请求;
http客户端模块,用于向所述hls服务器请求m3u8文件和切片文件;
m3u8文件解析模块,用于解析所述hls服务器返回的m3u8文件,获取切片文件表。
进一步的,上述的http代理模块还包括动态决策模块,动态决策模块用于判断所述http客户端模块采用并行或串行方式向hls服务器请求切片文件。
一种flash播放器播放hls视频流的转换方法,应用权利要求1所述的一种flash播放器播放hls视频流的转换系统,包括以下步骤:
步骤一:flash播放器模块进行视频地址分析,根据得到的视频播放地址向http代理模块发送http播放请求;
步骤二:http代理模块根据http播放请求向hls服务器请求m3u8文件,hls服务器返回相应的m3u8文件;
步骤三:http代理模块解析hls服务器返回的m3u8文件,得到切片文件列表;
步骤四:http代理模块根据切片文件列表向hls服务器请求相应的切片文件,hls服务器将相应的切片文件返回至http代理模块;
步骤五:http代理模块向编码模块发送待转码的切片文件,编码模块将待转码的切片文件转换为flv格式,然后通过http代理模块返回至flash播放器;
步骤六:flash播放器解码flv格式切片文件并播放。
进一步的,上述步骤三中得到切片文件列表之后还包括判断当前http播放请求为直播请求或点播请求,若当前请求为点播请求,启用动态决策算法。
进一步的,上述启用动态决策算法具体包括以下步骤:
步骤101:预设带宽初始期望值,初始状态时,采用串行方式向hls服务器请求第一个切片文件;
步骤102:每隔一定时间n统计数据接收率R,数据接收率R的计算公式为:R=S/n,其中,S代表一个时间间隔n内接收数据的大小;
步骤103:根据数据接收率R判断采用串行方式或并行方式向hls服务器请求切片文件,当数据接收率R大于或等于带宽初始期望值,切换到并行方式,当数据接收率R小于带宽初始期望值,切换到串行方式;
串行方式为依次向hls服务器请求切片文件列表中的切片文件;
并行方式为每次向hls服务器请求多个切片文件列表中的切片文件。
进一步的,采用并行方式请求切片文件具体包括以下步骤:
步骤201:预设第二带宽初始期望值;
步骤202:定义每次请求切片文件的数量为m,2<=m<=3;
步骤203:当数据接收率R满足大于或等于带宽初始期望值,小于或等于第二带宽初始期望值时,m=2;
当数据接收率R满足大于第二带宽初始期望值时,m=3。
进一步的,上述的带宽初始期望值为8Mb/s,所述的第二带宽初始期望值为15Mb/s。
进一步的,步骤四中将切片文件转换为flv格式具体包括以下步骤:
步骤301:接收一个完整的切片文件,获取切片文件的音频ID和视频ID;
步骤302:解析音频ID和视频ID,得到音频数据和视频数据;
步骤303:查找音频数据和视频数据的解码时间戳DTS和显示时间戳PTS;
步骤304:根据解码时间戳DTS和显示时间戳PTS计算flv格式切片文件的参考时间戳Composition Time=(PTS–DTS)/90,
其中,90为切片参考时钟90KHz;
步骤305:预设flv解码时间戳初始值为40ms;
步骤306:将音频数据和视频数据根据flv解码时间戳和参考时间戳按flv的格式重新封装,得到flv格式的音视频数据;
步骤307:将flv格式的音视频数据通过http代理模块返回至flash播放器模块。
进一步的,判断http播放请求为直播请求或点播请求具体为:当m3u8文件以“#EXT-X-ENDLIST”结束时或m3u8文件中包含“#EXT-X-PLAYLIST-TYPE:VOD”,则当前请求为点播请求。
由于采用了上述技术方案,本发明的有益效果是:
本发明只需要一种满足hls协议的ts格式的文件就能满足flash播放器和移动终端的需求,显著减少了直播服务器系统的复杂性和降低了系统的不稳定性因素,减少了视频格式转换的时间和步骤,同时大大节省了磁盘空间。
本发明还解决了播放器快进、快退时需要长时间等待的问题和传统视频分段方法中播放器在分段之间切换时出现黑屏的问题。
本发明还采用了一种动态决策算法,应用于hls协议播放视频点播的情况,用于解决如何提高flash播放器端与视频服务器端带宽利用率最大化问题。
附图说明
图1为本发明的数据传输流程示意图。
图2为本发明的flash播放器模块结构示意图。
图3为本发明的数据传输时序示意图。
图4为本发明的结构示意图。
附图标记:1-直播前端,2-hls直播服务器,3-hls点播服务器,4-直播编码器,5-摄像机,6-播放端。
具体实施方式
参照附图1-4,对本发明的实施方式做具体的说明。
一种flash播放器播放hls视频流的转换系统,包括以下模块:
flash播放器模块、HTTP代理模块、编码模块组成。
flash播放器模块:主要功能有播放请求地址解析,获取音视频数据,解码音视频数据,呈现画面,播放声音。所述flash播放器模块进还包括协议解析模块,根据传入的视频地址进行判断是否请求hls协议播放视频。
HTTP代理模块包含以下模块:
HTTP服务端模块:充当HTTP服务角色,接收所述flash播放器的http请求,并响应请求。
HTTP客户端模块:充当HTTP客户端角色,向hls服务器请求m3u8文件及ts文件。
m3u8文件解析模块:解析hls服务器返回的m3u8文件,获取ts文件列表。
动态决策模块:采用动态决策,支持采用并行还是串行方式向hls服务器请求ts文件。
所谓串行方式:依次向hls服务器请求ts文件列表中的ts文件。
所谓并行方式:每次向hls服务器请求ts文件列表中的多个ts文件。
根据用户和hls服务器的带宽情况,动态判断采用哪种方式,且在两种方式可自由动态切换。
编码模块主要是将ts文件按照flv封装格式进行重新封装。包括以下模块:
ts解析模块,时间戳转换模块,flv封装模块。
ts解析模块:收到一个完整的ts文件后,抽取其中的音视频数据。
时间戳转换模块:由于ts文件与flv文件使用的时间戳不同,所以要进行转换。
flv封装模块:将从ts文件抽取的音视频数据按flv文件格式重新封装。
图1是一种实现flash播放器播放hls协议的视频方法流程图,包括:
步骤S101,flash播放器请求播放视频地址,所述flash播放器进行视频地址分析,若视频地址包含以“m3u8”字符串结尾,则表示当前请求播放的是一个hls协议的视频。
步骤S102,根据视频播放地址,向hls服务器请求m3u8文件。
假如现在请求播放中央电视台一台,其m3u8地址为:http://IP:port/live/cctv.m3u8。
hls服务器返回m3u8文件为:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-VERSION:3
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/0.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/1.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/2.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/3.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/4.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/5.ts
步骤S103,解析ts文件地址,根据所述步骤S102中返回的m3u8文件,自上而下解析出所有ts文件地址。
步骤S104,请求ts文件。在所述S104步骤之前,所述步骤S103之后,进一步包括:
判断当前请求是直播请求还是点播请求,当m3u8文件以
“#EXT-X-ENDLIST”结束时或m3u8文件中包含
“#EXT-X-PLAYLIST-TYPE:VOD”表示当前请求播放点播;
若为点播,启用动态决策算法;
动态决策算法如下:
初始状态时,我们采用串行方式,请求ts文件列表中的第一个ts文件,每n秒统计数据接收率R=S/n,S代表n秒接收数据大小,n代表一个正整数值,定义在{3<=n<=5}。当R的值>=8Mb/s时,代表播放器与hls服务器之间带宽值>=8Mb/s,此时切换到并行方式。因此R>=8Mb/s时,作为串行与并行方式之间动态切换的临界值。R>=8Mb/s作为我们一个带宽的初始期望值,这个值可以根据实际带宽环境进行调整。
并行方式下,一次请求的ts文件数量m定义在{2<=m<=3}若8Mb/s<=R<=15Mb/s,则一次请求ts文件数量m的值为2,若R>=15Mb/s时,m的值为3。同理,当R<8Mb/s时,切换至串行方式。
根据所述动态决策算法,以下m3u8文件将按以下步骤请求ts文件。
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-VERSION:3
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/0.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/1.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/2.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/3.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/4.ts
#EXTINF:10,
HTTP://IP:PORT/CCTV1/2018/03/22/19/5.ts
#EXT-X-ENDLIST
首先采用串行方式请求:HTTP://IP:PORT/CCTV1/2018/03/22/19/0.ts文件,当R>=8Mb/s时,则动态切换至并行方式请求,则开启一个新的线程请求HTTP://IP:PORT/CCTV1/2018/03/22/19/1.ts文件。当R>=15Mb/s时,则开启新的线程请求HTTP://IP:PORT/CCTV1/2018/03/22/19/2.ts。直至已经开始下载的文件下载完成,当R值发生变化,再做出相应的动态决策。动态决策表如下:
步骤S105,按以下方式将ts文件转flv格式的文件:
1、接收一个完整的ts文件;
2、搜索ts同步字节0x47,查找PMT,PAT表,进一步查找音频ID,视频ID;
3、根据2步中的查找到音频ID和视频ID,解析出音频数据和视频数据;
4、查找DTS(解码时间戳)和PTS(显示时间戳);
5、根据4中的值计算出flv需要的Composition Time(参考时间戳)=(PTS–DTS)/90,其中90为ts参考时钟90KHz。flv TimeStamp(解码时间戳)初始值为0,每一个视频tag按的TimeStamp在前一个TimeStamp的值上面加40,其中40的单位为ms(毫秒),为什么加40呢,这是因为当前视频帧率基本在20-30帧/秒,所以一帧播放的时间基本在40毫少左右。
6、根据音视频数据和TimeStamp以及Composition Time按flv的格式重新封装音视频。
步骤S106,将封装的flv数据返回给flash播放器。
步骤S107,flash播放器解码flv文件,解码音视频文件,呈现画面和播放声音。
综上所述,本申请在不增加任何设备,不需要任何技术改造的情况下,只需要一路hls协议的直播流就可以满足flash播放器和移动端播放直播的需求,解决了传统直播服务器要分别为flash播放器和移动端提供直播流的问题,本申请显著减少了直播服务器系统的复杂性和降低了系统的不稳定性因素。
相比传统视频点播,分别为flash播放器和移动端提供不同视频格式的文件,既同一个视频文件要转码成两种不同的格式的视频文件,一种满足flash播放器的要求,另一种满足移动终端的需求。本申请只需要一种满足hls协议的ts格式的文件就能满足flash播放器和移动终端的需求。本申请减少了视频格式转换的时间和步骤,同时大大节省了磁盘空间。相比传统视频点播,本申请还解决了播放器快进、快退时需要长时间等待问题,以及传统视频分片方法中,播放器在分片之间切换时出现黑屏问题。
本申请还采用了一种动态决策算法,用于解决如何提高flash播放器端与视频服务器端带宽利用率最大化问题。

Claims (10)

1.一种flash播放器播放hls视频流的转换系统,其特征在于,它包括:
Internet网络;
分别与Internet网络连接的hls服务器和直播前端(1);所述hls服务器通过CDN网络连接用户端(6);
所述的直播前端(1)包括与Internet网络连接的直播编码器(4)和与直播编码器(4)连接的若干台摄像机(5);
所述的播放端(6)包括flash播放器、IOS播放器、Android播放器和H5播放器;
所述的hls服务器包括hls直播服务器(2)和hls点播服务器(3)。
2.根据权利要求1所述的一种flash播放器播放hls视频流的转换系统,其特征在于所述的flash播放器包括:
与所述hls服务器连接的编码器模块和http代理模块,所述编码器模块用于将切片文件按照flv封装格式进行重新封装;
与所述http代理模块连接的flash播放器模块;
所述编码器模块与http代理模块连接;
所述的flash播放器模块还包括协议解析模块。
3.根据权利要求2所述的一种flash播放器播放hls视频流的转换系统,其特征在于所述的http代理模块包括:
http代理模块,用于接收所述flash播放器的http请求,并响应请求;
http客户端模块,用于向所述hls服务器请求m3u8文件和切片文件;
m3u8文件解析模块,用于解析所述hls服务器返回的m3u8文件,获取切片文件表;
所述的http代理模块还包括动态决策模块,所述动态决策模块用于判断所述http客户端模块采用并行或串行方式向hls服务器请求切片文件。
4.一种flash播放器播放hls视频流的转换方法,应用权利要求1所述的一种flash播放器播放hls视频流的转换系统,其特征在于,它包括以下步骤:
步骤一:flash播放器模块进行视频地址分析,根据得到的视频播放地址向http代理模块发送http播放请求;
步骤二:http代理模块根据http播放请求向hls服务器请求m3u8文件,hls服务器返回相应的m3u8文件;
步骤三:http代理模块解析hls服务器返回的m3u8文件,得到切片文件列表;
步骤四:http代理模块根据切片文件列表向hls服务器请求相应的切片文件,hls服务器将相应的切片文件返回至http代理模块;
步骤五:http代理模块向编码模块发送待转码的切片文件,编码模块将待转码的切片文件转换为flv格式,然后通过http代理模块返回至flash播放器;
步骤六:flash播放器解码flv格式切片文件并播放。
5.根据权利要求4所述的一种flash播放器播放hls视频流的转换方法,其特征在于所述步骤三中得到切片文件列表之后还包括判断当前http播放请求为直播请求或点播请求,若当前请求为点播请求,启用动态决策算法。
6.根据权利要求5所述的一种实现flash播放器播放hls协议的视频方法,其特征在于所述启用动态决策算法具体包括以下步骤:
步骤101:预设带宽初始期望值,初始状态时,采用串行方式向hls服务器请求第一个切片文件;
步骤102:每隔一定时间n统计数据接收率R,数据接收率R的计算公式为:R=S/n,其中,S代表一个时间间隔n内接收数据的大小;
步骤103:根据数据接收率R判断采用串行方式或并行方式向hls服务器请求切片文件,当数据接收率R大于或等于带宽初始期望值,切换到并行方式,当数据接收率R小于带宽初始期望值,切换到串行方式;
所述串行方式为依次向hls服务器请求切片文件列表中的切片文件;
所述并行方式为每次向hls服务器请求多个切片文件列表中的切片文件。
7.根据权利要求6所述的一种flash播放器播放hls视频流的转换方法,其特征在于采用并行方式请求切片文件具体包括以下步骤:
步骤201:预设第二带宽初始期望值;
步骤202:定义每次请求切片文件的数量为m,2<=m<=3;
步骤203:当数据接收率R满足大于或等于带宽初始期望值,小于或等于第二带宽初始期望值时,m=2;
当数据接收率R满足大于第二带宽初始期望值时,m=3。
8.根据权利要求7所述的一种flash播放器播放hls视频流的转换方法,其特征在于所述的带宽初始期望值为8Mb/s,所述的第二带宽初始期望值为15Mb/s。
9.根据权利要求4所述的一种flash播放器播放hls视频流的转换方法,其特征在于步骤四所述的将切片文件转换为flv格式具体包括以下步骤:
步骤301:接收一个完整的切片文件,获取切片文件的音频ID和视频ID;
步骤302:解析音频ID和视频ID,得到音频数据和视频数据;
步骤303:查找音频数据和视频数据的解码时间戳DTS和显示时间戳PTS;
步骤304:根据解码时间戳DTS和显示时间戳PTS计算flv格式切片文件的参考时间戳Composition Time=(PTS–DTS)/90,
其中,90为切片参考时钟90KHz;
步骤305:预设flv解码时间戳初始值为40ms;
步骤306:将音频数据和视频数据根据flv解码时间戳和参考时间戳按flv的格式重新封装,得到flv格式的音视频数据;
步骤307:将flv格式的音视频数据通过http代理模块返回至flash播放器模块。
10.根据权利要求5所述的一种flash播放器播放hls视频流的转换方法,其特征在于判断http播放请求为直播请求或点播请求具体为:当m3u8文件以“#EXT-X-ENDLIST”结束时或m3u8文件中包“#EXT-X-PLAYLIST-TYPE:VOD”,则当前请求为点播请求。
CN201810312365.6A 2018-04-09 2018-04-09 一种flash播放器播放hls视频流的转换系统及其工作方法 Pending CN108494792A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810312365.6A CN108494792A (zh) 2018-04-09 2018-04-09 一种flash播放器播放hls视频流的转换系统及其工作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810312365.6A CN108494792A (zh) 2018-04-09 2018-04-09 一种flash播放器播放hls视频流的转换系统及其工作方法

Publications (1)

Publication Number Publication Date
CN108494792A true CN108494792A (zh) 2018-09-04

Family

ID=63315124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810312365.6A Pending CN108494792A (zh) 2018-04-09 2018-04-09 一种flash播放器播放hls视频流的转换系统及其工作方法

Country Status (1)

Country Link
CN (1) CN108494792A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547813A (zh) * 2018-12-29 2019-03-29 山东浪潮商用系统有限公司 一种Android机顶盒上播放HLS视频流时无感知切换清晰度的方法
CN111212076A (zh) * 2020-01-08 2020-05-29 山东汇佳软件科技股份有限公司 面向全终端的低延迟按需分布式监控汇聚双模态转发方法
CN113206841A (zh) * 2021-04-26 2021-08-03 杭州当虹科技股份有限公司 基于hls协议的aes解密代理方法及系统
CN113923502A (zh) * 2021-11-04 2022-01-11 上海哔哩哔哩科技有限公司 直播视频播放方法及装置
CN114157643A (zh) * 2021-12-20 2022-03-08 海看网络科技(山东)股份有限公司 基于转码器hls协议固定码率参数的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104243430A (zh) * 2013-06-20 2014-12-24 腾讯科技(深圳)有限公司 一种流媒体播放方法及装置
CN105915489A (zh) * 2015-11-09 2016-08-31 乐视致新电子科技(天津)有限公司 针对hls协议栈在网络抖动时的优化实现方法和装置
CN106685942A (zh) * 2016-12-20 2017-05-17 徐亮 视频直播回播系统以及视频直播回播方法
CN107277081A (zh) * 2016-04-06 2017-10-20 北京优朋普乐科技有限公司 流媒体数据的切片下载方法和装置、流媒体系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104243430A (zh) * 2013-06-20 2014-12-24 腾讯科技(深圳)有限公司 一种流媒体播放方法及装置
CN105915489A (zh) * 2015-11-09 2016-08-31 乐视致新电子科技(天津)有限公司 针对hls协议栈在网络抖动时的优化实现方法和装置
CN107277081A (zh) * 2016-04-06 2017-10-20 北京优朋普乐科技有限公司 流媒体数据的切片下载方法和装置、流媒体系统
CN106685942A (zh) * 2016-12-20 2017-05-17 徐亮 视频直播回播系统以及视频直播回播方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
徐雅斌: "《计算机网络》", pages: 335 - 336 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547813A (zh) * 2018-12-29 2019-03-29 山东浪潮商用系统有限公司 一种Android机顶盒上播放HLS视频流时无感知切换清晰度的方法
CN111212076A (zh) * 2020-01-08 2020-05-29 山东汇佳软件科技股份有限公司 面向全终端的低延迟按需分布式监控汇聚双模态转发方法
CN113206841A (zh) * 2021-04-26 2021-08-03 杭州当虹科技股份有限公司 基于hls协议的aes解密代理方法及系统
CN113206841B (zh) * 2021-04-26 2022-08-23 杭州当虹科技股份有限公司 基于hls协议的aes解密代理方法及系统
CN113923502A (zh) * 2021-11-04 2022-01-11 上海哔哩哔哩科技有限公司 直播视频播放方法及装置
CN113923502B (zh) * 2021-11-04 2023-03-21 上海哔哩哔哩科技有限公司 直播视频播放方法及装置
CN114157643A (zh) * 2021-12-20 2022-03-08 海看网络科技(山东)股份有限公司 基于转码器hls协议固定码率参数的方法
CN114157643B (zh) * 2021-12-20 2023-01-13 海看网络科技(山东)股份有限公司 基于转码器hls协议固定码率参数的方法

Similar Documents

Publication Publication Date Title
US9414111B2 (en) Caption data delivery apparatus and methods
US11310540B2 (en) Interfaces between dash aware application and dash client for service interactivity support
US20160337424A1 (en) Transferring media data using a websocket subprotocol
CN108494792A (zh) 一种flash播放器播放hls视频流的转换系统及其工作方法
US8788933B2 (en) Time-shifted presentation of media streams
EP3096526B1 (en) Communication apparatus, communication data generation method, and communication data processing method
US6580756B1 (en) Data transmission method, data transmission system, data receiving method, and data receiving apparatus
EP2784954A1 (en) Method for linking mmt media and dash media
CN107634930B (zh) 一种媒体数据的获取方法和装置
US10887645B2 (en) Processing media data using file tracks for web content
US20140139735A1 (en) Online Media Data Conversion Method, Online Video Playing Method and Corresponding Device
WO2008061416A1 (fr) Procédé et système permettant d&#39;accepter des données media de divers formats de codage
US11284135B2 (en) Communication apparatus, communication data generation method, and communication data processing method
WO2013036451A1 (en) Streaming of multimedia data from multiple sources
US7643508B2 (en) Client side PID translation
US20180176278A1 (en) Detecting and signaling new initialization segments during manifest-file-free media streaming
CN113141522B (zh) 资源传输方法、装置、计算机设备及存储介质
CN105430510A (zh) 一种视频点播方法、网关、智能终端及视频点播系统
EP3096525B1 (en) Communication apparatus, communication data generation method, and communication data processing method
KR101829064B1 (ko) Dash 규격의 미디어 데이터와 mmt 전송 시스템과의 연동 방법 및 그 장치
Lohan et al. Integrated system for multimedia delivery over broadband ip networks
KR102391586B1 (ko) 시청각 콘텐츠 스트림을 mpeg2 사설 섹션내에 캡슐화하는 방법, mpeg2 전송 스트림 내에 멀티플렉스되어질 mpeg2 사설 섹션내에 시청각 콘텐츠를 캡슐화하는 장치, 디지털 tv용의 양방향 어플리케이션, 사용자 장치, 시청각 콘텐츠 또는 데이터의 전송을 위한 방법 및 데이터 네트워크를 위한 통신 프로토콜
KR101999235B1 (ko) Mmtp기반 하이브리드 브로드캐스트 브로드밴드 서비스 제공 방법 및 시스템

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination