CN115277651A - 基于xml文件的配置式流媒体软件方法及系统 - Google Patents
基于xml文件的配置式流媒体软件方法及系统 Download PDFInfo
- Publication number
- CN115277651A CN115277651A CN202210713335.2A CN202210713335A CN115277651A CN 115277651 A CN115277651 A CN 115277651A CN 202210713335 A CN202210713335 A CN 202210713335A CN 115277651 A CN115277651 A CN 115277651A
- Authority
- CN
- China
- Prior art keywords
- source
- source program
- frame
- folder
- protocol format
- 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
- 238000006243 chemical reaction Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000001502 supplementing effect Effects 0.000 claims description 23
- 238000012216 screening Methods 0.000 claims description 14
- 230000006798 recombination Effects 0.000 claims description 3
- 238000005215 recombination Methods 0.000 claims description 3
- 238000009432 framing Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 30
- 238000010586 diagram Methods 0.000 description 5
- 239000013589 supplement Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8543—Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种基于XML文件的配置式流媒体软件方法及系统,方法包括:配置XML文件;获取用户端请求访问服务器的源节目访问地址和用户端需要的请求输出源协议格式,并在源数据配置文件夹中匹配对应的源节目地址,从而确定源节目地址所对应的输入源协议格式;在参数配置文件夹中配置输入源协议格式和用户端的请求输出源协议格式;在系统执行文件夹下启动协议转换的启动程序,读取XML文件中的配置参数,获取到源节目数据流;对获取的源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧;对源节目数据流按照请求输出源协议格式编码规范进行编码重组,并输出指定协议流推送到用户端。本申请具有多场景的多种协议互转的效果。
Description
技术领域
本申请涉及流媒体的技术领域,尤其是涉及一种基于XML文件的配置式流媒体软件方法及系统。
背景技术
流媒体是一种利用流式传输方式使得音视频可以在网上播放的媒体格式。流媒体也被叫做边传边播放的媒体,媒体提供商在网络上传输媒体的同时,用户可以实现一边接收一边收听或观看被传输的媒体。它是通过将一个音视频传送服务器使得音视频当成数据包传送到网上,用户通过解压设备对这些数据包进行解压即可收听或观看音视频。
XML是一种标记语言,可以进行数据的传送,且XML已经成为一种通用的数据交换格式,它具有平台无关性、语言无关性,不管什么平台和语言,都可以进行数据交换,给信息技术的交互带来了极大的方便。XML可以用于媒体数据的传输,使得不同平台和语音的媒体都能传输到网络上进行播放下载。
在实际的流媒体软件系统使用中,由于媒体提供商所用的传输协议不同,导致传送到网络上的媒体格式各不相同,此时就需要对媒体进行协议转换,使得可以输出指定的协议进行观看。而目前市面上的项目协议转换软件转换方式单一,不能满足多种协议互转。
发明内容
本发明目的一是提供一种基于XML文件的配置式流媒体软件方法,通过对用户端访问服务器的源节目进行协议格式的转换,实现了多种协议互转,方便了用户端使用不同的协议格式进行观看节目,极大方便了流媒体软件的应用。
本发明的上述发明目的一是通过以下技术方案得以实现的:
一种基于XML文件的配置式流媒体软件方法,所述方法包括:
配置XML文件,所述XML文件包括系统执行文件夹、参数配置文件夹、源数据配置文件夹;所述系统执行文件夹配置有协议转换的启动程序;所述参数配置文件夹用于配置输入源协议格式和输出源协议格式,所述输入源协议格式为源节目的协议格式,所述输出源协议格式为用户端访问服务器的协议格式,所述源数据配置文件夹用于配置源节目地址;
获取用户端请求访问服务器的源节目访问地址和用户端请求服务器所需要的请求输出源协议格式,并在所述源数据配置文件夹中匹配对应的所述源节目地址,从而确定服务器的源节目地址所对应的所述输入源协议格式;
在所述参数配置文件夹中配置源节目对应于服务器的所述输入源协议格式,以及在所述参数配置文件夹中配置用户端的所述请求输出源协议格式;
在XML文件中的所述系统执行文件夹下启动协议转换的启动程序,进而读取所述源数据配置文件夹和所述参数配置文件夹中的配置参数,访问所述源节目访问地址从而获取源节目数据流;
对获取的所述源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧;
对所述源节目数据流按照所述参数配置文件夹配置的所述请求输出源协议格式编码规范进行编码重组,并输出指定协议流推送到用户端。
通过采用上述技术方案,在用户端进入服务器并请求访问服务器的源节目时,系统收到用户端的请求会自动识别用户端所访问的源节目访问地址,并自动匹配系统中存储的源节目地址,确定该源节目在系统中的源节目地址后,系统会根据该源节目从服务器中获取到该源节目的输入源协议格式,并获取到用户端请求服务器需要的请求输出源协议格式,对应匹配系统中存储的输出源协议格式,在系统确定用户端请求访问的源节目的输入源协议格式和请求输出源协议格式后,就会将这些信息配置到XML文件中去。信息配置完成后,系统会启动协议转换的程序,根据配置的源节目的信息,获取到源节目的数据流,并对源节目数据流按照输入源的协议格式进行预设解码规范进行解码,解码后的源节目数据流进一步根据用户端的请求输出源协议格式对源节目数据流编码重组,传输至用户端进行播放。这样即实现了源节目的快速协议转换,方便了用户端的多种协议需求。
本发明在一较佳示例中可以进一步配置为:所述对获取的源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧后,将所述源帧序列和源参数集帧存储于数据库中,所述源帧序列和源参数集帧为多组,多组所述源帧序列和源参数集帧分别对应通过多种规范协议解码而成。
通过采用上述技术方案,每一次用户端访问服务器的源节目数据流在解码后的源帧序列和源参数集帧都会存储到数据库中,填补数据库,这些源帧序列和源参数集帧会进行排列组合,每一个源节目的源帧序列和源参数集帧都会通过多种解码规范解码形成,并存储到数据库中,使得数据库的数据更加庞大,以便后续查找更加精准。
本发明在一较佳示例中可以进一步配置为:所述对源节目数据流按照所述参数配置文件夹配置的所述请求输出源协议格式编码规范进行编码重组前,通过收流函数对所述源节目数据流进行筛选比对。
通过采用上述技术方案,源节目数据流解码后不会立即按照请求输出源协议格式规范传输至用户端播放,而是先通过收流函数进行筛选比对,为后续对源节目数据流进行完善做准备。
本发明在一较佳示例中可以进一步配置为:所述通过收流函数对所述源节目数据流进行筛选比对包括,
读取所述参数配置文件夹的配置参数,从而读取所述源节目中的每一帧数据;
根据所述预设解码规范对所述源节目数据流进行比对,筛选出超出所述预设解码规范域值的无用帧序列、空白帧序列;
对所述源节目数据流筛选后,通过数据库对所述源节目数据流进行补帧。
通过采用上述技术方案,收流函数是通过读取参数配置文件夹的配置参数,从而读取到源节目的数据流,对源节目数据流中的每一帧数据都进行读取并比对,比对方法是将源节目数据流中的每一帧数据与预设编码规范的域值进行比对,超出域值的数据流即为不合格的数据流即筛选出去。
本发明在一较佳示例中可以进一步配置为:所述通过数据库对源节目数据流进行补帧包括,
将经所述收流函数筛选后的所述源节目数据流根据所述输出源协议编码规范编码重组后,传输至用户端进行播放,同时将该筛选后的所述源节目数据流存储到所述数据库中,生成用户端帧序列和用户端参数集帧;
将所述用户端帧序列和用户端参数集帧分别对应与所述源帧序列和源参数集帧进行比对,从而获取所述用户端帧序列和用户端参数集帧的缺失帧,并根据所述输出协议格式编码规范进行编码后,传输至用户端进行补帧播放。
通过采用上述技术方案,数据库中存储大量源节目的源帧序列和源参数集帧,通过源节目生成的用户端帧序列和用户端参数集帧与数据库中的源帧序列和源参数集帧进行比对,系统会在与用户端帧序列和用户端参数集帧相似度高的源帧序列以及源参数集帧中选择相似度最高的那个填补进源节目的用户端帧序列以及用户端参数集帧中,从而生成完整的源节目数据流,并根据输出源协议编码规范进行编码后,传输至用户端进行补帧播放。
本发明在一较佳示例中可以进一步配置为:所述预设解码规范包括H.263/H.264/ H.265等通用解码规范。
通过采用上述技术方案,获取的源节目数据流会根据H.263/ H.264/ H.265等通用解码规范进行解码。H.263/ H.264/ H.265等解码规范都是通用的解码规范,服务器中的大部分源节目都能通过通用解码规范进行解码。
本发明在一较佳示例中可以进一步配置为:所述配置XML文件包括系统日志输出文件夹,所述系统日志输出文件夹用于存放所述协议转换的启动程序运行时产生的日志。
通过采用上述技术方案,系统日志文件夹可以记录Linux系统中程序启动的问题信息,同时还可以监视Linux系统中发生的事件。
本发明在一较佳示例中可以进一步配置为:所述配置XML文件包括拓展功能文件夹,所述拓展功能文件夹用于存放关于XML文件的拓展功能文件。
通过采用上述技术方案,在XML文件下的拓展功能文件夹配置拓展功能,可以实现XML文件的拓展功能。
本发明在一较佳示例中可以进一步配置为:所述通过数据库对所述源节目数据流进行补帧包括,
将经所述收流函数筛选后的所述源节目数据流根据所述输出源协议格式编码规范编码重组后,传输至用户端进行播放,同时将该筛选后的所述源节目数据流存储到所述数据库中,生成所述用户帧序列和用户端参数集帧;
通过分析缺失帧相邻几个所述用户帧序列和用户端参数集帧所对应的所述源帧序列和源参数集帧,获取相邻几个所述用户帧序列和用户端参数集帧的平均值,在数据库中查找对应的所述源帧序列和源参数集帧,获取与平均值接近的所述源帧序列和源参数集帧,从而对所述缺失帧进行补帧处理,并根据所述输出协议编码规范进行编码后,传输至用户端进行补帧播放。
通过采用上述技术方案,分析需要补帧的用户端帧序列和用户端参数集帧相邻的几个用户端帧序列和用户端参数集帧,从而获取到相邻几个用户端帧序列和用户端参数集帧的平均值,在数据库中查找对应源帧序列和源参数集帧及获取平均值,选择平均值相似度最高的源帧序列和源参数集帧进行补帧处理,并根据输出协议编码规范进行编码后,传输至用户端进行补帧播放。
这种方法减少了补帧的失误率,使得缺失帧序列与相邻几个帧序列之前画面不会中断,实现了低延迟的功能。
本发明目的二是提供一种基于XML文件的配置式流媒体软件系统,具有对源节目的多种协议互转的功能。
本发明的上述发明目的二是通过以下技术方案得以实现的:
一种基于XML文件的配置式流媒体软件系统,包括:
配置模块,配置XML文件,所述XML文件包括系统执行文件夹、参数配置文件夹、源数据配置文件夹;所述系统执行文件夹配置有协议转换的启动程序;所述参数配置文件夹用于配置输入源协议格式和输出源协议格式,所述输入源协议格式为源节目的协议格式,所述输出源协议格式为用户端访问服务器的协议格式,所述源数据配置文件夹用于配置源节目地址;
获取模块,获取用户端请求访问服务器的源节目访问地址和用户端请求服务器所需要的请求输出源协议格式,并在所述源数据配置文件夹中匹配对应的所述源节目地址,从而确定服务器的源节目地址所对应的所述输入源协议格式;
信息配置模块,在所述参数配置文件夹中配置源节目对应于服务器的所述输入源协议格式,以及在所述参数配置文件夹中配置用户端的所述请求输出源协议格式;
启动模块,在XML文件中的所述系统执行文件夹下启动协议转换的启动程序,进而读取所述源数据配置文件夹和所述参数配置文件夹中的配置参数,访问所述源节目访问地址从而获取源节目数据流;
解码模块,对获取的所述源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧;
编码模块,对所述源节目数据流按照所述参数配置文件夹配置的所述请求输出源协议格式编码规范进行编码重组,并输出指定协议流推送到用户端。
通过采用上述技术方案,在配置模块提前配置好XML文件,XML文件中预先配置有服务器所有源节目地址、输入源协议格式和输出源协议格式,在XML文件内设置有协议转换的启动程序。当用户请求访问服务器的特定源节目时,会通过点击源节目访问地址进入到源节目访问页面,用户进入该源节目访问页面后,用户请求该源节目的输出源协议格式以输出对应协议的源节目进行观看。用户的访问该源节目的请求传输至系统时,获取模块会获取到用户访问的源节目访问地址,并与系统中配置的源节目地址进行匹配,以确定源节目地址。匹配完成后,系统通过服务器中记录的该源节目的输入源协议格式信息获取到该输入源协议格式。获取模块获取用户所需要的信息后,将这些信息传到信息配置模块中进行配置,在参数配置文件夹中配置该源节目的输入源协议格式和请求输出源协议格式。信息配置模块配置完信息后,启动模块开始启动协议转换的启动程序,读取配置参数,从而获取到源节目数据流,获取到的源节目数据流会传送至解码模块进行解码,解码后的源节目数据流会在编码模块中根据输出源协议规范进行编码,最后传输至用户端进行播放。
综上所述,本申请包括以下至少一种有益技术效果:
1.通过对用户访问服务器的源节目信息进行获取和匹配,在系统中配置源节目相关信息,通过启动协议转换程序从而对源节目进行快速的协议转换,输出用户请求访问的输出源协议格式进行观看,实现了多种协议互转的功能;
2.通过设置对源节目数据流一边补帧,一边传输至用户端进行刷新播放,实现了流媒体的功能,不仅能边播放还能边对播放的内容进行补帧播放,降低了节目播放的延迟,实现了低延迟的功能。
附图说明
图1是本申请提供的一种基于XML文件的配置式流媒体软件方法的流程图;
图2是本申请中S5的运行流程框图;
图3是本申请中S52的运行流程框图;
图4是本申请中S523的一种运行方法的流程框图;
图5是本申请中S523的另一种运行方法的流程框图;
图6是本申请中用户端、服务器以及终端三者之间的交互原理图。
具体实施方式
以下结合附图1-附图6,对本申请作进一步详细说明。
实施例一:
本实施例提供一种基于XML文件的配置式流媒体软件方法,参照图1,其中,方法包括:
配置XML文件,XML文件包括系统执行文件夹、参数配置文件夹、源数据配置文件夹;系统执行文件夹配置有协议转换的启动程序;参数配置文件夹用于配置输入源协议格式和输出源协议格式,输入源协议格式为源节目的协议格式,输出源协议格式为用户端访问服务器的协议格式,源数据配置文件夹用于配置源节目地址。
具体的,使用C语言编写脚本文件,在Linux系统中上传C语言脚本文件,在存放脚本文件中的目录打开C语言脚本文件,对C语言脚本文件直接编译形成XML文件。
XML文件生成后,XML文件中共分为五个目录,包括系统执行文件夹(bin)、参数配置文件夹(cfg)、源数据配置文件夹(db)、系统日志输出文件夹(log)和拓展功能文件夹(SsipXml)。其中,系统执行文件夹用来存放各种二进制执行文件,协议转换的启动程序放置在系统执行文件夹中;参数配置文件夹存放各种程序使用的通用配置文件,在本实施例中,协议转换所需要的输入源和输出源的协议格式就在参数配置文件夹中配置;源数据配置文件夹存放源数据的配置参数,在本申请实施例中,需要进行协议转换的源节目地址则在该文件夹中配置;系统日志输出文件夹通常用来存放程序运行时的日志,可以记录Linux系统中程序启动的问题信息,同时还可以监视Linux系统中发生的事件;拓展功能文件夹用来存放关于XML文件的拓展文件,可以实现XML文件的拓展功能。
通过将上述五个目录文件进行打包生成软件包,并把该软件包放到Linux系统中的opt/smart/sms目录下进行解压即实现了XML文件的基础配置。
当XML文件基础配置完成后,执行以下步骤:
S2、获取用户端请求访问服务器的源节目访问地址和用户端请求服务器所需要的请求输出源协议格式,并在源数据配置文件夹中匹配对应的源节目地址,从而确定服务器的源节目地址所对应的输入源协议格式。
在本实施例中,源节目指媒体服务器中提供的多种供用户观看的节目;源节目访问地址指用户在访问服务器的源节目时的地址,如网页链接;请求输出源协议格式指用户在访问服务器的源节目时,用户的请求协议格式,如http协议;输入源协议格式指第三方将源节目上传到服务器中的协议格式。
具体的,用户访问服务器中特定的源节目时,会通过点击链接进入到源节目访问页面,这个链接即为源节目访问地址。用户进入该源节目访问页面后,用户请求该源节目的输出源协议格式以输出对应协议的源节目进行观看。
用户的访问该源节目的请求传输至系统时,系统会根据用户点击的链接与系统中配置的源节目地址进行匹配,以匹配源节目访问地址对应的源节目地址。匹配完成后,系统通过服务器中记录的该源节目的输入源协议格式信息获取到该输入源协议格式。至此,系统即确定用户访问这个源节目的源节目地址、输入源协议格式以及输出源协议格式,进行下一步的配置步骤:
S3、在参数配置文件夹中配置源节目对应于服务器的输入源协议格式,以及在参数配置文件夹中配置用户端的请求输出源协议格式。
系统确定需要配置的源节目信息后,在系统中的XML文件对该源节目的输入源协议格式以及请求输出源协议格式进行配置,该源节目的输入源协议格式和请求输出源协议格式均在参数配置文件夹中完成配置。通过在参数配置文件夹配置输入源协议格式和请求输出源的协议格式,使得系统启动协议转换的启动程序后,会自动读取参数配置文件夹中的配置信息,从而对源节目根据输入源协议格式进行解码,解码后根据请求输出源协议格式对源节目进行编码输出,传输至用户端进行播放。因此,在XML文件中配置信息对后续的源节目协议转换起到重要作用。
XML文件的参数配置完之后,在系统启动协议转换的启动程序之前,系统会先启动守护进程程序,从而对协议转换的启动程序的进程进行保护,执行以下步骤对协议转换程序的进程进行保护:
具体的,守护进程程序放置在Linux系统中的/opt/smart/hsmonitor文件夹下,守护进程可以控制终端并周期性地执行协议转换任务,使得协议转换任务不会中断。在启动协议转换的启动程序之前,首先启动守护进程程序,在协议转换程序异常中断时,守护进程程序将协议转换程序拉起来,使得协议转换程序保持正常运行。
在守护进程程序启动后,再执行以下步骤启动协议转换的程序。
S4、在XML文件中的系统执行文件夹下启动协议转换的启动程序,进而读取源数据配置文件夹和参数配置文件夹中的配置参数,访问源节目访问地址从而获取源节目数据流。
具体的,在Linux系统中的系统执行文件夹下启动startup.sh脚本执行启动程序,当协议转换程序启动时,通过读取数据配置文件夹和参数配置文件夹中的配置参数,其中,通过读取数据配置文件夹的源节目的输入源协议格式和请求输出源协议格式,以及读取源数据配置文件夹中的源节目的地址来获取到源节目的数据流。
获取完源节目的数据流后,接下来系统对源节目的数据流进行解码,执行以下步骤对源节目的数据流解码:
S5、对获取的源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧。
具体的,预设解码规范包括H.263/H.264/H.265等通用解码规范。
获取的源节目数据流根据H.263/H.264/H.265等通用解码规范进行解码。H.263/H.264/ H.265等解码规范都是通用的解码规范,服务器中的大部分源节目都能通过通用解码规范进行解码。
对获取的源节目数据流根据预设解码规范解码,生成源帧序列及源参数集帧后,执行以下步骤:
S51、将源帧序列和源参数集帧存储于数据库中,源帧序列和源参数集帧为多组,多组源帧序列和源参数集帧分别对应通过多种规范协议解码而成。
具体的,源节目数据流根据预设编码规范解码后得到源节目的源帧序列和源参数集帧,其中源参数集帧包括源序列参数集帧和源图像参数集帧,每一个源序列参数集帧对应一个源图像参数集帧,从而形成完整的源节目数据流。
在用户端请求访问服务器的源节目数据流解码生成源帧序列及源参数集帧后,该源节目的源帧序列及源参数集帧即存储于数据库中,其中,该源节目的源帧序列及源参数集帧为多组,多组源帧序列及源参数集帧分别对应通过多种规范协议解码而成。在本申请实施例中,数据库指的是存储不同源节目的帧序列以及参数集帧的集合。将不同的源节目的源帧序列以及源参数集帧存储到数据库中可以扩充数据库的数据,通过大量的数据存储到数据库中进行排列组合,使得后续比对数据更加快捷方便。
S52、通过收流函数对源节目数据流进行筛选比对。
具体的,通过收流函数对源节目数据流进行筛选比对包括,
S521、读取参数配置文件夹的配置参数,从而读取源节目中的每一帧数据;
在读取完每一帧数据后,如果遇到读取的一帧数据为空,则退出进行读取下一帧数据,直至读取完每一帧数据,然后执行以下步骤S522:
S522、根据预设解码规范对源节目数据流进行比对,筛选出超出预设解码规范域值的无用帧序列、空白帧序列;
具体的,收流函数对源节目数据流进行筛选比对的方法包括:
对读取完的源节目数据流的源帧序列以及源参数集帧进行筛选出无用帧序列和空白帧序列,其中,无用帧序列是指译码后出错的源帧序列;空白帧序列指的是画面为空的源帧序列。对读取完的源节目数据流与所用的解码规范的域值进行比对,对超出解码规范的域值范围内的无用帧序列和空白帧序列即筛选剔除。通过对无用帧序列和空白帧序列进行筛选和剔除,从而提高用户端播放源节目的流畅度,降低延迟。
S523、对源节目数据流筛选后,通过数据库对源节目数据流进行补帧。
具体的,通过数据库对源节目数据流进行补帧包括,
S5231、将经收流函数筛选后的源节目数据流根据输出源协议编码规范编码重组后,传输至用户端进行播放,同时将该筛选后的源节目数据流存储到数据库中,生成用户端帧序列和用户端参数集帧。
本实施例中,筛选后的源节目数据流直接通过用户端请求输出源的协议规范进行编码重组,并传输至用户端进行播放。
在用户端进行播放的同时,该筛选后的源节目数据流会存储到数据库中,从而生成用户端帧序列以及用户端参数集帧;
对源节目数据流的源帧序列以及源参数集帧筛选后,然后进行以下步骤S5232。
S5232、将用户端帧序列和用户端参数集帧分别对应与源帧序列和源参数集帧进行比对,从而获取用户端帧序列和用户端参数集帧的缺失帧,并根据输出协议格式编码规范进行编码后,传输至用户端进行补帧播放。
具体的,将该源节目的用户端帧序列以及用户端参数集帧分别与数据库中的源帧序列以及源参数集帧进行一一比对。从而查找数据库中与用户端帧序列以及用户端参数集帧相似的源帧序列和源参数集帧,在相似度高的源帧序列和源参数集帧中筛选出相似度最高的源帧序列和源参数集帧填补进源节目的用户端帧序列以及用户端参数集帧中,从而生成完整的源节目数据流,并根据输出源协议编码规范进行编码后,传输至用户端进行补帧播放。
在本申请实施例中,源节目数据流采取的是边补帧边播放的形式,用户端在观看源节目的同时,系统每10ms会刷新一次节目画面,每一次的画面刷新都会使补帧后的画面传输到用户端中,从而对用户端正在播放的节目码流进行补帧,使得用户端观看更顺畅,实现了自动补帧的功能,从而实现了低延迟。
在本申请实施例中,还提供了另一种对源节目数据流进行补帧的方法。
具体的,通过数据库对源节目数据流进行补帧包括,
S5231、将经收流函数筛选后的源节目数据流根据输出源协议格式编码规范编码重组后,传输至用户端进行播放,同时将该筛选后的源节目数据流存储到数据库中,生成用户帧序列和用户端参数集帧。
具体的,在对源节目数据流经收流函数筛选后的源节目数据流根据输出源协议规范编码重组后,传输至用户端进行播放;
节目播放的同时将该筛选后的源节目数据流存储到数据库中,生成用户帧序列和用户端参数集帧,然后进行以下步骤S5232:
S5232、通过分析缺失帧相邻几个用户帧序列和用户端参数集帧所对应的源帧序列和源参数集帧,获取相邻几个用户帧序列和用户端参数集帧的平均值,在数据库中查找对应的源帧序列和源参数集帧,获取与平均值接近的源帧序列和源参数集帧,从而对缺失帧进行补帧处理,并根据输出协议编码规范进行编码后,传输至用户端进行补帧播放。
首先确定源节目数据中需要补帧的用户端帧序列和用户端参数集帧,分析需要补帧的用户端帧序列和用户端参数集帧相邻的几个用户端帧序列和用户端参数集帧,获取相邻几个用户端帧序列和用户端参数集帧的平均值,在数据库中查找对应源帧序列和源参数集帧,获取对应的源帧序列和源参数集帧的平均值,选择平均值相似度最高的源帧序列和源参数集帧,从而对需要补帧的用户端帧序列和用户端参数集帧进行补帧处理,并根据输出协议编码规范进行编码后,传输至用户端进行补帧播放。
这种方法通过取缺失帧序列相邻几个用户端帧序列和用户端参数集帧的平均值来进行补帧,减少了补帧的失误率,使得缺失帧序列与相邻几个帧序列之前画面不会中断,实现了低延迟的功能。
经收流函数筛选后的源节目数据流会通过以下步骤编码直接传输至用户端进行播放:
S6、对源节目数据流按照参数配置文件夹配置的请求输出源协议格式编码规范进行编码重组,并输出指定协议流推送到用户端。
具体的,筛选后的源节目数据流会按照配置好的请求输出源协议格式编码规范进行编码重组,输出用户请求的输出源协议格式推送到用户端进行播放,并且播放的过程中,通过上述步骤S5对用户端正在播放的节目码流进行实时补帧。
本申请实施例二:
一种基于XML文件的配置式流媒体软件系统,包括,
配置模块,配置XML文件,XML文件包括系统执行文件夹、参数配置文件夹、源数据配置文件夹;系统执行文件夹配置有协议转换的启动程序;参数配置文件夹用于配置输入源协议格式和输出源协议格式,输入源协议格式为源节目的协议格式,输出源协议格式为用户端访问服务器的协议格式,源数据配置文件夹用于配置源节目地址;
获取模块,获取用户端请求访问服务器的源节目访问地址和用户端请求服务器所需要的请求输出源协议格式,并在源数据配置文件夹中匹配对应的源节目地址,从而确定服务器的源节目地址所对应的输入源协议格式;
信息配置模块,在参数配置文件夹中配置源节目对应于服务器的输入源协议格式,以及在参数配置文件夹中配置用户端的请求输出源协议格式;
启动模块,在XML文件中的系统执行文件夹下启动协议转换的启动程序,进而读取源数据配置文件夹和参数配置文件夹中的配置参数,访问源节目访问地址从而获取源节目数据流;
解码模块,对获取的源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧;
编码模块,对源节目数据流按照参数配置文件夹配置的请求输出源协议格式编码规范进行编码重组,并输出指定协议流推送到用户端。
通过配置模块提前配置好XML文件,XML文件中预先配置有服务器所有源节目地址、输入源协议格式和输出源协议格式,在XML文件内设置有协议转换的启动程序。当用户请求访问服务器的特定源节目时,会通过点击源节目访问地址进入到源节目访问页面。用户进入该源节目访问页面后,用户请求该源节目的输出源协议格式以输出对应协议的源节目进行观看。用户的访问该源节目的请求传输至系统时获取模块会获取到用户访问的源节目访问地址,并与系统中配置的源节目地址进行匹配,以确定源节目地址。匹配完成后,系统通过服务器中记录的该源节目的输入源协议格式信息获取到该输入源协议格式。获取模块获取用户所需要的信息后,将这些信息传到信息配置模块中进行配置,在参数配置文件夹中配置该源节目的输入源协议格式和请求输出源协议格式。信息配置模块配置完信息后,启动模块开始启动协议转换的启动程序,读取配置参数,从而获取到源节目数据流,获取到的源节目数据流会传送至解码模块进行解码,解码后的源节目数据流会在编码模块中根据输出源协议规范进行编码,最后传输至用户端进行播放。
本具体实施方式的实施例均为本申请的较佳实施例,并非依此限制本申请的保护范围,其中相同的零部件用相同的附图标记表示。故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。
Claims (10)
1.一种基于XML文件的配置式流媒体软件方法,其特征在于,所述方法包括:
配置XML文件,所述XML文件包括系统执行文件夹、参数配置文件夹、源数据配置文件夹;所述系统执行文件夹配置有协议转换的启动程序;所述参数配置文件夹用于配置输入源协议格式和输出源协议格式,所述输入源协议格式为源节目的协议格式,所述输出源协议格式为用户端访问服务器的协议格式,所述源数据配置文件夹用于配置源节目地址;
获取用户端请求访问服务器的源节目访问地址和用户端请求服务器所需要的请求输出源协议格式,并在所述源数据配置文件夹中匹配对应的所述源节目地址,从而确定服务器的源节目地址所对应的所述输入源协议格式;
在所述参数配置文件夹中配置源节目对应于服务器的所述输入源协议格式,以及在所述参数配置文件夹中配置用户端的所述请求输出源协议格式;
在XML文件中的所述系统执行文件夹下启动协议转换的启动程序,进而读取所述源数据配置文件夹和所述参数配置文件夹中的配置参数,访问所述源节目访问地址从而获取源节目数据流;
对获取的所述源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧;
对所述源节目数据流按照所述参数配置文件夹配置的所述请求输出源协议格式编码规范进行编码重组,并输出指定协议流推送到用户端。
2.根据权利要求1所述的方法,其特征在于,所述对获取的源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧后,将所述源帧序列和源参数集帧存储于数据库中,所述源帧序列和源参数集帧为多组,多组所述源帧序列和源参数集帧分别对应通过多种规范协议解码而成。
3.根据权利要求1所述的方法,其特征在于,所述对源节目数据流按照所述参数配置文件夹配置的所述请求输出源协议格式编码规范进行编码重组前,通过收流函数对所述源节目数据流进行筛选比对。
4.根据权利要求3所述的方法,其特征在于,所述通过收流函数对所述源节目数据流进行筛选比对包括,
读取所述参数配置文件夹的配置参数,从而读取所述源节目中的每一帧数据;
根据所述预设解码规范对所述源节目数据流进行比对,筛选出超出所述预设解码规范域值的无用帧序列、空白帧序列;
对所述源节目数据流筛选后,通过数据库对所述源节目数据流进行补帧。
5.根据权利要求4所述的方法,其特征在于,所述通过数据库对源节目数据流进行补帧包括,
将经所述收流函数筛选后的所述源节目数据流根据所述输出源协议编码规范编码重组后,传输至用户端进行播放,同时将该筛选后的所述源节目数据流存储到所述数据库中,生成用户端帧序列和用户端参数集帧;
将所述用户端帧序列和用户端参数集帧分别对应与所述源帧序列和源参数集帧进行比对,从而获取所述用户端帧序列和用户端参数集帧的缺失帧,并根据所述输出协议格式编码规范进行编码后,传输至用户端进行补帧播放。
6.根据权利要求1所述的方法,其特征在于,所述预设解码规范包括H.263/ H.264/H.265等通用解码规范。
7.根据权利要求1所述的方法,其特征在于,所述配置XML文件包括系统日志输出文件夹,所述系统日志输出文件夹用于存放所述协议转换的启动程序运行时产生的日志。
8.根据权利要求1所述的方法,其特征在于,所述配置XML文件包括拓展功能文件夹,所述拓展功能文件夹用于存放关于XML文件的拓展功能文件。
9.根据权利要求1所述的方法,其特征在于,所述通过数据库对所述源节目数据流进行补帧包括,
将经所述收流函数筛选后的所述源节目数据流根据所述输出源协议格式编码规范编码重组后,传输至用户端进行播放,同时将该筛选后的所述源节目数据流存储到所述数据库中,生成所述用户帧序列和用户端参数集帧;
通过分析缺失帧相邻几个所述用户帧序列和用户端参数集帧所对应的所述源帧序列和源参数集帧,获取相邻几个所述用户帧序列和用户端参数集帧的平均值,在数据库中查找对应的所述源帧序列和源参数集帧,获取与平均值接近的所述源帧序列和源参数集帧,从而对所述缺失帧进行补帧处理,并根据所述输出协议编码规范进行编码后,传输至用户端进行补帧播放。
10.一种基于XML文件的配置式流媒体软件系统,其特征在于,包括,
配置模块,配置XML文件,所述XML文件包括系统执行文件夹、参数配置文件夹、源数据配置文件夹;所述系统执行文件夹配置有协议转换的启动程序;所述参数配置文件夹用于配置输入源协议格式和输出源协议格式,所述输入源协议格式为源节目的协议格式,所述输出源协议格式为用户端访问服务器的协议格式,所述源数据配置文件夹用于配置源节目地址;
获取模块,获取用户端请求访问服务器的源节目访问地址和用户端请求服务器所需要的请求输出源协议格式,并在所述源数据配置文件夹中匹配对应的所述源节目地址,从而确定服务器的源节目地址所对应的所述输入源协议格式;
信息配置模块,在所述参数配置文件夹中配置源节目对应于服务器的所述输入源协议格式,以及在所述参数配置文件夹中配置用户端的所述请求输出源协议格式;
启动模块,在XML文件中的所述系统执行文件夹下启动协议转换的启动程序,进而读取所述源数据配置文件夹和所述参数配置文件夹中的配置参数,访问所述源节目访问地址从而获取源节目数据流;
解码模块,对获取的所述源节目数据流根据预设解码规范解码,生成源帧序列和源参数集帧;
编码模块,对所述源节目数据流按照所述参数配置文件夹配置的所述请求输出源协议格式编码规范进行编码重组,并输出指定协议流推送到用户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210713335.2A CN115277651B (zh) | 2022-06-22 | 2022-06-22 | 基于xml文件的配置式流媒体软件方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210713335.2A CN115277651B (zh) | 2022-06-22 | 2022-06-22 | 基于xml文件的配置式流媒体软件方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115277651A true CN115277651A (zh) | 2022-11-01 |
CN115277651B CN115277651B (zh) | 2024-05-24 |
Family
ID=83760917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210713335.2A Active CN115277651B (zh) | 2022-06-22 | 2022-06-22 | 基于xml文件的配置式流媒体软件方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115277651B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040205576A1 (en) * | 2002-02-25 | 2004-10-14 | Chikirivao Bill S. | System and method for managing Knowledge information |
US6990514B1 (en) * | 1999-09-03 | 2006-01-24 | Cisco Technology, Inc. | Unified messaging system using web based application server for management of messages using standardized servers |
US20080036629A1 (en) * | 2006-08-08 | 2008-02-14 | International Business Machines Corporation | Apparatus, system, and method for incremental encoding conversion of xml data using java |
WO2012079223A1 (zh) * | 2010-12-14 | 2012-06-21 | 华为技术有限公司 | 内容传送网络中流媒体请求地址映射的方法及装置、缓存节点 |
CN103891303A (zh) * | 2011-08-16 | 2014-06-25 | 黛斯悌尼软件产品有限公司 | 基于脚本的视频呈现 |
US20150237398A1 (en) * | 2014-02-18 | 2015-08-20 | Kylintv, Inc. | Internet protocol television |
CN106791931A (zh) * | 2017-01-05 | 2017-05-31 | 上海浦东软件园汇智软件发展有限公司 | 一种数据流转码的方法及设备 |
CN108769065A (zh) * | 2018-06-23 | 2018-11-06 | 北京众信易保科技有限公司 | 基于协议转换技术的快速保险产品对接系统 |
CN110198254A (zh) * | 2019-05-31 | 2019-09-03 | 卡斯柯信号有限公司 | 一种通信协议在线诊断方法及诊断系统 |
CN111416845A (zh) * | 2020-03-12 | 2020-07-14 | 腾讯云计算(北京)有限责任公司 | 一种配置边缘设备的方法、装置及存储介质 |
-
2022
- 2022-06-22 CN CN202210713335.2A patent/CN115277651B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6990514B1 (en) * | 1999-09-03 | 2006-01-24 | Cisco Technology, Inc. | Unified messaging system using web based application server for management of messages using standardized servers |
US20040205576A1 (en) * | 2002-02-25 | 2004-10-14 | Chikirivao Bill S. | System and method for managing Knowledge information |
US20080036629A1 (en) * | 2006-08-08 | 2008-02-14 | International Business Machines Corporation | Apparatus, system, and method for incremental encoding conversion of xml data using java |
WO2012079223A1 (zh) * | 2010-12-14 | 2012-06-21 | 华为技术有限公司 | 内容传送网络中流媒体请求地址映射的方法及装置、缓存节点 |
CN103891303A (zh) * | 2011-08-16 | 2014-06-25 | 黛斯悌尼软件产品有限公司 | 基于脚本的视频呈现 |
US20150237398A1 (en) * | 2014-02-18 | 2015-08-20 | Kylintv, Inc. | Internet protocol television |
CN106791931A (zh) * | 2017-01-05 | 2017-05-31 | 上海浦东软件园汇智软件发展有限公司 | 一种数据流转码的方法及设备 |
CN108769065A (zh) * | 2018-06-23 | 2018-11-06 | 北京众信易保科技有限公司 | 基于协议转换技术的快速保险产品对接系统 |
CN110198254A (zh) * | 2019-05-31 | 2019-09-03 | 卡斯柯信号有限公司 | 一种通信协议在线诊断方法及诊断系统 |
CN111416845A (zh) * | 2020-03-12 | 2020-07-14 | 腾讯云计算(北京)有限责任公司 | 一种配置边缘设备的方法、装置及存储介质 |
Non-Patent Citations (2)
Title |
---|
牛勇;: "XML在银保通系统中的应用研究", 微计算机信息, no. 24, 25 August 2008 (2008-08-25) * |
耿刚, 陈平: "一种基于XML的WEB应用框架的设计", 计算机工程与应用, no. 16, 1 April 2005 (2005-04-01) * |
Also Published As
Publication number | Publication date |
---|---|
CN115277651B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101505253B (zh) | 网络设备的附属设备中为网络设备提供数据的方法及装置 | |
CN105828096B (zh) | 媒体流文件的处理方法和装置 | |
US9609366B2 (en) | Digital television terminal, video file playing method and video file playing system | |
US11223856B2 (en) | Method for processing streaming media data and server for processing streaming media | |
CN107634930B (zh) | 一种媒体数据的获取方法和装置 | |
CN107277081A (zh) | 流媒体数据的切片下载方法和装置、流媒体系统 | |
CN107197386B (zh) | 一种无客户端的跨平台视频播放实现方法 | |
AU2007243966B2 (en) | Method and apparatus for re-constructing media from a media representation | |
WO2015169172A1 (zh) | 网络视频播放的方法和装置 | |
CN111246314B (zh) | 时移直播方法、服务端装置、客户端装置及直播系统 | |
GB2582014A (en) | Method, device, and computer program for optimizing transmission of portions of encapsulated media content | |
GB2599170A (en) | Method, device, and computer program for optimizing indexing of portions of encapsulated media content data | |
TWI536817B (zh) | 網路互動協定資料記錄的方法以及裝置 | |
CN107634928B (zh) | 一种码流数据的处理方法及装置 | |
CN111510791B (zh) | 播放音视频的方法、装置、计算机设备及可读存储介质 | |
CN115277651B (zh) | 基于xml文件的配置式流媒体软件方法及系统 | |
WO2020192012A1 (zh) | 一种数据处理方法、设备及存储介质 | |
CN111447490A (zh) | 流媒体文件处理方法及装置 | |
EP1605669A1 (fr) | Procédé de gestion de programmes auxiliaires et récepteur et système correspondants | |
KR102050491B1 (ko) | 요청 응답 방식의 적응형 컨텐츠 재생 방법 | |
CN103763577B (zh) | 媒体文件的播放方法、装置及系统 | |
WO2023246600A1 (zh) | 节目播放方法、客户端、服务器、存储介质和程序产品 | |
CN116208783B (zh) | 一种音视频存储、点播方法及装置 | |
CN110858923B (zh) | 分段媒体文件生成方法、装置及存储介质 | |
CN118646915A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |