CN110636335B - 一种实时视频的hls快速分享的方法 - Google Patents
一种实时视频的hls快速分享的方法 Download PDFInfo
- Publication number
- CN110636335B CN110636335B CN201910905085.0A CN201910905085A CN110636335B CN 110636335 B CN110636335 B CN 110636335B CN 201910905085 A CN201910905085 A CN 201910905085A CN 110636335 B CN110636335 B CN 110636335B
- Authority
- CN
- China
- Prior art keywords
- video
- hls
- server
- real
- address
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 239000000463 material Substances 0.000 claims abstract description 4
- 239000012634 fragment Substances 0.000 claims description 9
- 230000006835 compression Effects 0.000 claims description 5
- 238000007906 compression Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring 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)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种实时视频的HLS快速分享的方法,IP摄像机和服务器准备就绪,服务器周期获取IP摄像机的当前截图或者IP摄像机周期向服务器上传截图;服务器定时使用截图素材生成视频片段;服务器收到客户端的HLS媒体请求后,立即使用步骤2的视频片段生成HLS播放地址M3U8,并记为地址A,返回地址A给客户端;客户端播放该播放地址A,同时服务器开始获取该摄像机视频,开启正常的HLS转码过程。本发明即时生成播放地址,用户即时可播,无需等待。
Description
技术领域
本发明涉及一种分享方法,特别是一种实时视频的HLS快速分享的方法,属于流媒体技术领域。
背景技术
实时视频的HLS分享是指基于HLS协议,分发实时视频数据。针对实时视频,一般持续采集视频,然后按HLS协议规范,对视频进行分片、同时生成索引文件(.M3U8)。在广播电视等领域,这种方式比较适合。
但在视频监控等领域,由于视频源数量庞大,同时受前端限制,这个HLS的处理一般在后端服务器来做。如果仍然采用上述“持续”处理的方式,则服务器和带宽需求巨大。因此一般采取需要观看的时候服务器端临时启动转码的过程。但是这样在用户触发观看后,需要等待一定的时间播放地址才能生成、播放,影响用户体验。从触发到能播放这个等待的时间却是无法去除的——服务器获取媒体数据,服务器产生媒体片段,待片段产生一定数量后产生索引文件(.M3U8)均需要时间。
同时,上述的等待该流媒体备好的这个等待时长对于各播放端来说是不可确知的,也给播放端的开发制造了一定的困难——不可播放需要再试等。
发明内容
本发明所要解决的技术问题是提供一种实时视频的HLS快速分享的方法,即时生成播放地址,用户即时可播。
为解决上述技术问题,本发明所采用的技术方案是:
一种实时视频的HLS快速分享的方法,其特征在于包含以下步骤:
步骤一:IP摄像机和服务器准备就绪,服务器周期获取IP摄像机的当前截图或者IP摄像机周期向服务器上传截图;
步骤二:服务器定时使用截图素材生成视频片段;
步骤三:服务器收到客户端的HLS媒体请求后,立即使用步骤二的视频片段,按照hls规范将其分片,同时生成HLS的M3U8索引文件,记为播放地址A,返回给客户端;
步骤四:客户端播放该播放地址A,同时服务器开始获取该摄像机视频,开启正常的HLS转码过程。
进一步地,所述步骤二中生成视频片段的具体过程为
2.1视频片段的帧率为f,视频片段的时长为r,则一段视频片段共计有f*r幅图片;
2.2设定截图周期为T1,那么至少需要T1*(f*r+1)秒才能准备好一个视频片段的全部照片;由于HLS的视频片段的帧率和时长一般是一定的,因此制作视频片段的周期T2>=T1*(f*r+1);
2.3视频片段生成:按照图片生成的时间,顺序读取图片,并解码为编码器可以利用的图像数据,然后使用视频压缩算法按一定的帧率将上述图片数据作为视频帧进行编码压缩,进一步地按Mp4格式存成文件,形成视频片段。
进一步地,所述2.3中编码器可以利用的图像数据格式为YUV。
进一步地,所述2.3中视频压缩算法采用H.264。
进一步地,所述2.3中视频片段生成的过程代码为
定义一个文件8128CD2002D_0_1.m3u8 :
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:3
#EXT-X-TARGETDURATION:8
#EXTINF:5.089,
8128CD2002D_0_1-3.ts
#EXTINF:4.255,
8128CD2002D_0_1-4.ts
#EXTINF:4.547,
8128CD2002D_0_1-5.ts
#EXT-X-DISCONTINUITY
#EXTINF:7.770,
8128CD2002D_0_1-6.ts
#EXTINF:6.000,
8128CD2002D_0_1-7.ts
8128CD2002D_0_1-6.ts和8128CD2002D_0_1-7.ts为新媒体片,上部为预先生成的媒体片,#EXT-X-DISCONTINUITY为按HLS协议规范。
进一步地,所述步骤四中的客户端为专用的客户端软件或者浏览器。
进一步地,所述步骤四中,服务器开启正常的HLS转码过程,产生正常HLS播放地址M3U8,并记为地址B,按HLS协议规范,将新文件片加入到A地址的M3U8文件后。
本发明与现有技术相比,具有以下优点和效果:本发明提供了一种实时视频的HLS快速分享的方法,即时生成播放地址,用户即时可播,无需等待。
附图说明
图1是本发明的一种实时视频的HLS快速分享的方法的流程图。
具体实施方式
下面通过实施例对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
如图1所示,本发明的一种实时视频的HLS快速分享的方法,其特征在于包含以下步骤:
步骤一:IP摄像机和服务器准备就绪,服务器周期获取IP摄像机的当前截图或者IP摄像机周期向服务器上传截图;
步骤二:服务器定时使用截图素材生成视频片段;其具体过程为:
2.1视频片段的帧率为f,视频片段的时长为r,则一段视频片段共计有f*r幅图片;
2.2设定截图周期为T1,那么至少需要T1*(f*r+1)秒才能准备好一个视频片段的全部照片;由于HLS的视频片段的帧率和时长一般是一定的,因此制作视频片段的周期T2>=T1*(f*r+1);
2.3视频片段生成:按照图片生成的时间,顺序读取图片,并解码为编码器可以利用的图像数据,然后使用视频压缩算法按一定的帧率将上述图片数据作为视频帧进行编码压缩,进一步地按Mp4格式存成文件,形成视频片段。
其中,2.3实现的代码为:
定义一个文件8128CD2002D_0_1.m3u8 :
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:3
#EXT-X-TARGETDURATION:8
#EXTINF:5.089,
8128CD2002D_0_1-3.ts
#EXTINF:4.255,
8128CD2002D_0_1-4.ts
#EXTINF:4.547,
8128CD2002D_0_1-5.ts
#EXT-X-DISCONTINUITY
#EXTINF:7.770,
8128CD2002D_0_1-6.ts
#EXTINF:6.000,
8128CD2002D_0_1-7.ts
8128CD2002D_0_1-6.ts和8128CD2002D_0_1-7.ts为新媒体片,上部为预先生成的媒体片,#EXT-X-DISCONTINUITY为按HLS协议规范。
在本实施例中,视频片段的帧率f一般取值为25,时长r为5秒钟,则一段视频片段共计有f*r=25*5=125幅画片。设截图周期T1为2则至少需要T1*(f*r+1)=2*(25*5+1)=252秒方能准备好一个视频片段的全部照片;HLS的视频片段的帧率和时长一般是一定的,更多数量的的截图显然是可以制作更多的视频片段。基于以上条件,则制作视频片段的周期T2>=T1*(f*r+1)。
步骤三:服务器收到客户端的HLS媒体请求后,立即使用步骤2的视频片段生成HLS播放地址M3U8,并记为地址A,返回地址A给客户端;
视频分片是将步骤二生成的视频片段按HLS规范所要求进行分片——将较长时间(一般为30s以上)的一段视频分成一定时长(比如5s钟)的视频片段。
步骤四:客户端播放该播放地址A,同时服务器开始获取该摄像机视频,开启正常的HLS转码过程。客户端为专用的客户端软件或者浏览器。服务器开启正常的HLS转码过程,产生正常HLS播放地址M3U8,并记为地址B,按HLS协议规范,将新文件片加入到A地址的M3U8文件后。
本发明提供了一种实时视频的HLS快速分享的方法,即时生成播放地址,用户即时可播,无需等待。本发明以HLS流媒体协议而做,解决问题的思路应该不限应用于此一种协议。本发明使用IP摄像机和后端服务器的监控***为例,并不限定为此一种应用领域。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质,在本发明的精神和原则之内,对以上实施例所作的任何简单的修改、等同替换与改进等,均仍属于本发明技术方案的保护范围之内。
Claims (6)
1.一种实时视频的HLS快速分享的方法,其特征在于包含以下步骤:
步骤一:IP摄像机和服务器准备就绪,服务器周期获取IP摄像机的当前截图或者IP摄像机周期向服务器上传截图;
步骤二:服务器定时使用截图素材生成视频片段;
所述步骤二中生成视频片段的具体过程为
2.1视频片段的帧率为f,视频片段的时长为r,则一段视频片段共计有f*r幅图片;
2.2设定截图周期为T1,那么至少需要T1*(f*r+1)秒才能准备好一个视频片段的全部照片;由于HLS的视频片段的帧率和时长一般是一定的,因此制作视频片段的周期T2>= T1*(f*r+1);
2.3视频片段生成:按照图片生成的时间,顺序读取图片,并解码为编码器可以利用的图像数据,然后使用视频压缩算法按一定的帧率将上述图片数据作为视频帧进行编码压缩,进一步地按Mp4格式存成文件,形成视频片段;
步骤三:服务器收到客户端的HLS媒体请求后,立即使用步骤二的视频片段,按照hls规范将其分片,同时生成HLS的M3U8索引文件,记为播放地址A,返回给客户端;
步骤四:客户端播放该播放地址A,同时服务器开始获取该摄像机视频,开启正常的HLS转码过程。
2.按照权利要求1所述的一种实时视频的HLS快速分享的方法,其特征在于:所述2.3中编码器可以利用的图像数据格式为YUV。
3.按照权利要求1所述的一种实时视频的HLS快速分享的方法,其特征在于:所述2.3中视频压缩算法采用H.264。
4.按照权利要求1所述的一种实时视频的HLS快速分享的方法,其特征在于:所述2.3中视频片段生成的过程代码为
定义一个文件8128CD2002D_0_1.m3u8 :
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:3
#EXT-X-TARGETDURATION:8
#EXTINF:5.089,
8128CD2002D_0_1-3.ts
#EXTINF:4.255,
8128CD2002D_0_1-4.ts
#EXTINF:4.547,
8128CD2002D_0_1-5.ts
#EXT-X-DISCONTINUITY
#EXTINF:7.770,
8128CD2002D_0_1-6.ts
#EXTINF:6.000,
8128CD2002D_0_1-7.ts
8128CD2002D_0_1-6.ts和8128CD2002D_0_1-7.ts为新媒体片,上部为预先生成的媒体片,#EXT-X-DISCONTINUITY为按HLS协议规范。
5.按照权利要求1所述的一种实时视频的HLS快速分享的方法,其特征在于:所述步骤四中的客户端为专用的客户端软件或者浏览器。
6.按照权利要求1所述的一种实时视频的HLS快速分享的方法,其特征在于:所述步骤四中,服务器开启正常的HLS转码过程,产生正常HLS播放地址M3U8,并记为地址B,按HLS协议规范,将新文件片加入到A地址的M3U8文件后。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910905085.0A CN110636335B (zh) | 2019-09-24 | 2019-09-24 | 一种实时视频的hls快速分享的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910905085.0A CN110636335B (zh) | 2019-09-24 | 2019-09-24 | 一种实时视频的hls快速分享的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110636335A CN110636335A (zh) | 2019-12-31 |
CN110636335B true CN110636335B (zh) | 2022-04-08 |
Family
ID=68973893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910905085.0A Active CN110636335B (zh) | 2019-09-24 | 2019-09-24 | 一种实时视频的hls快速分享的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110636335B (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105592318B (zh) * | 2014-10-21 | 2020-05-19 | 中兴通讯股份有限公司 | 一种实现hls频道回看业务的***、设备和方法 |
CN108391179B (zh) * | 2018-04-26 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 直播数据处理方法、装置、服务器、终端及存储介质 |
CN110213616B (zh) * | 2018-05-15 | 2021-12-28 | 腾讯科技(深圳)有限公司 | 视频提供方法、获取方法、装置及设备 |
CN110049346A (zh) * | 2019-04-10 | 2019-07-23 | 视联动力信息技术股份有限公司 | 一种视频直播的方法和*** |
-
2019
- 2019-09-24 CN CN201910905085.0A patent/CN110636335B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110636335A (zh) | 2019-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11470405B2 (en) | Network video streaming with trick play based on separate trick play files | |
US10841667B2 (en) | Producing video data | |
US9247317B2 (en) | Content streaming with client device trick play index | |
CN107615756B (zh) | 一种用于实现快速平滑视点切换的视频服务器、方法及视频*** | |
CN105282627B (zh) | 一种获取直播视频切片的方法及服务器 | |
CN107147919B (zh) | 直播快速启播方法及*** | |
US20140359678A1 (en) | Device video streaming with trick play based on separate trick play files | |
CN103747287B (zh) | 应用于flash的视频播放速度调整的方法及*** | |
WO2018076998A1 (zh) | 一种回放视频文件的生成方法和装置 | |
US20140297804A1 (en) | Control of multimedia content streaming through client-server interactions | |
CN107634930B (zh) | 一种媒体数据的获取方法和装置 | |
WO2014193996A2 (en) | Network video streaming with trick play based on separate trick play files | |
CN104394426B (zh) | 流媒体倍速播放方法和装置 | |
EP2640084A2 (en) | Video distribution system, apparatus, method and medium for distributing time shifted content starting from a selected chapter | |
CN108632642B (zh) | 流媒体推送方法及装置 | |
CN106789976A (zh) | 媒体文件的播放方法、服务端、客户端及*** | |
CN111193936B (zh) | 视频流传输方法、装置、电子设备及计算机可读存储介质 | |
CN110139128B (zh) | 一种信息处理方法、***、电子设备及存储介质 | |
RU2651241C2 (ru) | Передающее устройство, способ передачи, приемное устройство и способ приема | |
CN112235600B (zh) | 视频数据及视频业务请求的处理方法、装置及*** | |
KR20140007893A (ko) | 비디오 스트림을 최적화하기 위한 방법 | |
CN110636335B (zh) | 一种实时视频的hls快速分享的方法 | |
CN112929677A (zh) | 直播视频的回看方法、装置和服务器 | |
CN114697712A (zh) | 一种媒体流的下载方法、装置、设备及存储介质 | |
CN110545447B (zh) | 一种音视频同步的方法及装置 |
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 | ||
CB02 | Change of applicant information |
Address after: 210000 No. 268, Hanzhoung Road, Nanjing, Jiangsu Applicant after: CLP Hongxin Information Technology Co., Ltd Address before: 210000 No. 268, Hanzhoung Road, Nanjing, Jiangsu Applicant before: Jiangsu Hongxin System Integration Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |