CN114189504A - 一种启流url获取方法、装置、电子设备和存储介质 - Google Patents
一种启流url获取方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN114189504A CN114189504A CN202010859126.XA CN202010859126A CN114189504A CN 114189504 A CN114189504 A CN 114189504A CN 202010859126 A CN202010859126 A CN 202010859126A CN 114189504 A CN114189504 A CN 114189504A
- Authority
- CN
- China
- Prior art keywords
- url
- starting
- file
- stream
- flow starting
- 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
- 238000000034 method Methods 0.000 title claims abstract description 95
- 238000004458 analytical method Methods 0.000 claims description 18
- 238000007405 data analysis Methods 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 230000009191 jumping Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000001338 self-assembly Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例公开了一种启流URL获取方法、装置、电子设备和存储介质,方法包括:在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,已适配文件中包括已验证通过的设备要求的URL格式和启流参数填写方式;若存在,则利用已适配文件与识别到的启流参数,在客户端本地组装本地URL,并将所述本地URL作为启流URL,以便基于启流URL开启媒体流。本申请实施例中,在客户端成功登陆设备后,若本地存在已适配文件,则利用已适配文件和指定的启流参数,在本地生成本地URL,并将其作为启流URL,避免了从设备侧获取启流URL,由此提升了获取启流URL的效率,进而利用该启流URL开启媒体流后,提升了开启媒体流的速度。
Description
技术领域
本申请实施例涉及视频监控技术领域,尤其涉及一种启流URL获取方法、装置、电子设备和存储介质。
背景技术
随着IP监控技术的发展,媒体传输协议在NVR(Network Video Recorder,网络视频录像机)设备上被广泛使用,尤其是RTSP(Real Time Streaming Protocol,实时流传输协议)协议,因其具备可扩展性、解析性、安全性以及实时性高的特点,已经成为监控***不可或缺的一部分。
目前,RTSP协议的启流(开启媒体流)需要通过URL(统一资源定位符)来进行,而URL是客户端通过向NVR设备发送URL获取请求后得到的。而这种方式存在一定的不足:每次启流时均需要向NVR设备请求URL,由于受网络限制,在网络响应较慢的环境下,获取URL的时间较长,导致获取URL的效率较低,进而影响启流的速度。
发明内容
本申请实施例提供一种启流URL获取方法、装置、电子设备和存储介质,以达到提升获取启流URL的效率,进而提升启流的速度的目的。
第一方面,本申请实施例提供了一种启流URL获取方法,由客户端执行,包括:
在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,所述已适配文件中包括已验证通过的所述设备要求的URL格式和启流参数填写方式;
若存在,则进入已适配状态,利用已适配文件与识别到的启流参数,在客户端本地组装本地URL,并将本地URL作为启流URL,以便基于启流URL开启媒体流;其中,已适配状态表示已获得验证通过的组装URL的方法。
第二方面,本申请实施例提供了一种启流URL获取装置,配置于客户端,包括:
查询模块,用于在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,已适配文件中包括已验证通过的所述设备要求的URL格式和启流参数填写方式;
URL生成模块,用于若查询结果为存在已适配文件,则利用已适配文件与识别到的启流参数,在客户端本地组装本地URL,并将本地URL作为启流URL,以便基于启流URL开启媒体流;其中,已适配状态表示已获得验证通过的组装URL的方法。
第三方面,本申请实施例还提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本申请任一实施例的启流URL获取方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请任一实施例的启流URL获取方法。
本申请实施例中,在客户端成功登陆设备后,若本地存在已适配文件,则利用已适配文件和指定的启流参数,在本地生成本地URL,并将本地URL作为启流URL,避免了从设备侧获取启流URL,由此提升了获取启流URL的效率,进而利用该启流URL开启媒体流后,提升了开启媒体流的速度。
附图说明
图1是根据本申请第一实施例中的启流URL获取方法的流程示意图;
图2是根据本申请第二实施例中的启流URL获取方法的流程示意图;
图3是根据本申请第三实施例中的启流URL获取方法的流程示意图;
图4是根据本申请第四实施例中的启流URL获取方法的逻辑流程图;
图5是根据本申请第五实施例中的启流URL获取装置的结构示意图;
图6是根据本申请第六实施例中的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非所有结构。
图1是根据本申请第一实施例的启流URL获取方法的流程图,本实施例可适用于基于媒体传输协议开启媒体流的情况,该方法可以由启流URL获取装置来执行,该装置可以采用软件和/或硬件的方式实现,并可集成在电子设备(例如移动终端、平板电脑等)的客户端中。
如图1所示,启流URL获取方法具体包括如下流程:
S101、在接收到成功登录设备的信息后,查询本地是否存在已适配文件。
其中,设备可选的为通过互联网连接获取各通道摄像机视频并进行存储和管理的编码设备,例如设备为NVR设备。而安装在电子设备(例如移动终端、平板电脑等)中的客户端,可通过预设的账号和密码登录该设备,进而在客户端上查看任一通道摄像机实况视频或回放某一时间段的监控视频。而要查看实况视频或回放视频,客户端需要获取启流URL(统一资源定位符)开启媒体流,其中媒体流包括实况流和回放流,因此获取启流URL的效率,直接影响了客户端开启媒体流的速度。
本申请实施例中,为了避免客户端向设备请求启流URL时,因为网络延迟造成获取启流URL的时间过长,发明人创造性的提出通过本地存储的已适配文件在本地自动生成启流URL的方法,其中,已适配文件是预先基于从设备侧获取的启流URL并对其进行数据分析,如果根据分析结果得到设备要求的URL格式和参数填写方式,则生成已适配文件,否则不生成已适配文件,按照现有方法获取启流URL。已适配文件中包括已验证通过的设备要求的URL格式和启流参数填写方式,也即已适配文件中包括组装启流URL的方法,且验证通过有效,因此获的已适配文件,也即是获得验证通过的组装URL的方法。
本申请实施例中,若要开启实况流,则启流参数包括通道号,流号;若要开启回放流,则启流参数除了包括通道号和流号外,还包括开始时间和结束时间;其中,流号用于表征开启实况流或回放流的类型,流的类型包括主流、辅流、第三流等,需要说明的是,不同类型的流的分辨率、方式等不同;通道号用于表征开启的实况流或回放流来源于哪一个通道摄像机。
示例性的,以开启实况流为例,启流URL格式如下:rtsp://<IP>:<端口>/unicast/<通道号>/<流号>/live,其中,unicast和live为固定字段。启流参数填写方式包括通道号、流号的表示方式,例如1通道用数字“0”表示,2通道用1表示;主流用Main表示,辅流用second表示。
在此需要说明的是,不同的设备要求的URL格式和启流参数填写方式不同,因此针对不同设备,与设备通信的客户端本地预存的已适配文件也不同,使得客户端可以根据不同的已适配文件,生成满足设备要求的启流URL,由此避免了使用一种固定的URL格式生成启流URL时存在的兼容性问题,例如当URL格式有变化时,会导致格式错误,最终造成启流失败。
S102、若存在,则进入已适配状态,利用已适配文件与识别到的启流参数,在客户端本地组装本地URL,并将本地URL作为启流URL,以便基于启流URL开启媒体流。
其中,识别到的启流参数是指用户在客户端上指定的启流参数。若存在已适配文件,则利用已适配文件和用户指定的启流参数,在客户端本地组装本地URL。示例性的,针对开启实况流,指定的启流参数是1通道(用“0”表示),主流,则生成的启流URL:rtsp://192.168.1.64:554/unicast/0/Main/live,其中,IP和端口号是已知的。进而,客户端将该本地URL作为启流URL开启实况流。
在此需要说明的是,如果要开启的是回放流,还需指定开始时间和结束时间,其中,开始时间和结束时间可用NTP时间表示,也可以用UTC时间表示。示例性的,通过S101-S102在客户端本地生成的开启回放流的启流URL如下:rtsp://192.168.1.64:554/0/b1593241643/e1593245776/replay/type1981/or/Main/;其中,b1593241643/e1593245776表示开始时间/结束时间。
本申请实施例中,在客户端成功登陆设备后,若本地存在已适配文件,则进入已适配状态,其中,已适配状态表示已获得验证通过的组装URL的方法,并利用已适配文件和指定的启流参数,在本地组装本地URL,并将本地URL作为启流URL,避免了从设备侧获取启流URL,由此提升了获取启流URL的效率,进而利用该启流URL开启媒体流后,提升了开启媒体流的速度。
进一步的,在客户端基于启流URL开启媒体流后,为了保证启流的准确性,还需要对组装成的本地URL进行验证。可选的,基于识别到的启流参数,从设备侧获取启流URL。具体实现时,可利用ONVIF(Open Network Video Interface Forum,开放型网络视频接口论坛)协议或SDK方式,结合识别到的启流参数,从设备侧获取启流URL。示例性的,基于ONVIF协议向设备发送getURL的请求指令,该指令中包括所要请求的启流参数,进而根据设备的反馈确定启流URL。
进一步的,将从设备侧获取的启流URL与通过S102在本地组装成的URL进行比较;如果两者完全相同,则表明在客户端本地生成的启流URL准确;若不相同,例如,设备侧获取的启流URL与本地URL的URL格式和/或启流参数的填写方式不同,则确定客户端本地保存的已适配文件不准确,需要根据从设备侧获取的启流URL重新开启媒体流,并将适配文件删除。由此实现了对适配文件的进一步的验证。
图2是根据本申请第二实施例的启流URL获取方法的流程图,本实施例是在上述实施例的基础上进行优化,参见图2,该方法包括:
S201、在接收到成功登录设备的信息后,查询本地是否存在已适配文件。
其中,已适配文件中包括已验证通过的设备要求的URL格式和启流参数填写方式。若本地存在已适配文件则执行S202,若本地不存在已适配文件,则执行S203。
S202、利用已适配文件与识别到的启流参数,在客户端本地组装本地URL,并将所述本地URL作为启流URL,以便基于所述启流URL开启媒体流。
具体描述可参见上述实施例,在此不再赘述。
S203、若本地不存在已适配文件,查询本地是否存在待适配文件。
其中,待适配文件中包括未验证的设备要求的URL格式和启流参数填写方式;也即待适配文件中虽然包括设备要求的URL格式和启流参数填写方式,但基于待适配文件生成的启流URL的准确性无法保证。因此需要对待适配文件进行验证。
S204、若存在待适配文件,则判断当前是否存在待处理的启流任务。
若存在待适配文件,进入待适配状态,其中,待适配状态表示已获得未验证的组装URL的方法。在对待适配文件进行验证时,需要先判断客户端当前是否处于工作状态,也即是判断当前是否存在待处理的启流任务。若存在则执行S205-S207,若不存在则执行S208-S209。
S205、若存在待处理的启流任务,则基于识别到的启流参数,从设备侧获取启流URL,并利用该启流URL开启媒体流。
由于基于待适配文件生成的启流URL的准确性无法保证,因此在存在待处理的启流任务时,基于识别到的启流参数,从设备侧获取启流URL,例如,可利用ONVIF协议或SDK方式,结合识别到的启流参数,从设备侧获取启流URL,进而利用启流URL开启媒体流,由此保证了启流的准确性。
S206、获取基于待适配文件与识别到的启流参数组装成的本地URL。
从待适配文件中获取设备要求的URL格式和参数填写方式的基础上,根据用户指定的启流参数,在本地组装本地URL,具体的组装过程即是将指定的启流参数按照参数填写方式补充到URL格式的指定位置。
S207、对启流URL与本地URL进行比对,并根据比对结果处理待适配文件。
对启流URL与本地URL进行比对,判断启流URL与本地URL是否相同,若不同,则表明基于待适配文件组装的本地URL不准确,因此可直接删除待适配文件,并从待适配状态切换为未适配状态,其中,未适配状态表示未获得组装URL的方法。在此需要说明的是,如果比对结果相同,则可按照S208的中空闲匹配操作,进行多次判断,若每次都相同,则改写待适配文件,并从待适配状态切换为已适配状态。
S208、若不存在待处理的启流任务,则按照预设的重复次数,以重复执行空闲匹配操作。
本申请实施例中,不存在启流任务时,也即客户端处于空闲状态时,按照预设的重复次数,以重复执行空闲匹配操作。其中,重复执行空闲匹配操作的目的是对待适配文件进行验证。可选的,空闲匹配操作,包括:随机确定一组启流参数,并基于该启流参数从设备侧获取启流URL;利用待适配文件和该启流参数,在客户端本地组装本地URL;具体的生成过程可参见上述实施例的描述,在此不再赘述;对启流URL与本地URL进行比对,并根据比对结果处理所述待适配文件。。
S209、若比对结果相同,则待适配文件验证通过,并改写为已适配文件,并从待适配状态切换为已适配状态。
若比对结果相同,则表明利用待适配文件生成的URL是准确的,也即待适配文件验证通过,因此待适配文件改写为已适配文件,并从待适配状态切换为已适配状态,以便后续直接理由该已适配文件在客户端本地生成启流URL,由此提升启流URL获取效率,提升启流速度。需要说明的是,若比对结果不相同,则删除待适配文件,并从待适配状态切换为未适配状态,其中,未适配状态表示未获得组装URL的方法。
本申请实施例中,本地只存在待适配文件的情况下,若有启流任务,则从设备端获取URL完成启流,以保证启流的准确性。进而在启流成功后,通过将客户端基于待适配文件生成的本地URL和从设备侧获取的启流URL进行比对,以验证待适配文件的效果。若无启流任务,则通过重复执行空闲匹配操作,以验证基于待适配文件生成本地URL的效果。
图3是根据本申请第三实施例的启流URL获取方法的流程图,本实施例是在上述实施例的基础上进行优化,参见图3,该方法包括:
S301、在接收到成功登录设备的信息后,查询本地是否存在已适配文件。
其中,已适配文件中包括已验证通过的设备要求的URL格式和启流参数填写方式。若是则执行S302,若否,则执行S303。
S302、利用已适配文件与识别到的启流参数,在客户端本地组装本地URL,并将本地URL作为启流URL,以便基于该启流URL开启媒体流。
S303、若本地不存在已适配文件,查询本地是否存在待适配文件。
S304、若本地不存在待适配文件,判断当前是否存在待处理的启流任务。
若存在启流任务,从设备获取指定的参数的启流URL,并通过该启流URL开启媒体流,在启流成功后保留该启流URL和参数,以便后续可基于保存的启流URL和参数进行数据分析。若不存在启流任务,则执行S305。
S305、若不存在待处理的启流任务,则根据识别到的不同启流参数,分别从设备侧获取不同的启流URL。
示例性的,针对开启实况流的情况,第一次识别到的用户指定启流参数为“1通道”、“主流”,则从设备侧获取包括“1通道”、“主流”的启流URL;第二次识别到的用户指定启流参数为“2通道”、“主流”,则从设备侧获取包括“0通道”、“主流”的启流URL……以此类推,根据识别到的不同启流参数,分别从设备侧获取不同的启流URL。在一种可选的实施方式中,从本地保存的启流URL和参数中获取不同的启流URL。
S306、对获取到的不同的启流URL进行数据分析,并根据分析结果确定是否找出组装URL的方法,若是,则根据分析结果生成待适配文件。
在一种可选的实施方式中,对获取到的不同的启流URL进行数据分析,包括:对任意两个不同的启流URL进行比较,确定固定字段和变化字段;其中,固定字段是指两个启流URL中相同的字段,变化字段是指两个启流URL中不同的字段;确定变化字段与启流参数之间的对应关系。
示例性的,针对开启实况流的情况,从设备侧获取四通道和主流的启流URL为:rtsp://192.168.1.64:554/unicast/3/Main/live;从设备侧再获取五通道、主流的启流URL为:rtsp://192.168.1.64:554/unicast/4/Main/live;比较两个启流URL,可知,在保证流号不变的情况下,找到固定字段为IP、端口号(均为192.168.1.64:554)、unicast和live,变化字段为3,4。由此可知,四通道用数字“3”表示,五通道用数字“4表示”,变化字段和通道号的对关系是:变化字段等于通道号减1。由此后续再识别到用户指定的通道号后,减去1即可得到变化字段的值。
同理,保持通道号不变,从设备侧再获取4通道、辅流的启流URL为:rtsp://192.168.1.64:554/unicast/3/Second/live;从设备侧再获取4通道、主流的启流URL为:rtsp://192.168.1.64:554/unicast/3/Main/live。比较两个启流URL,可知,在保证通道号不变的情况下,找到固定字段为IP、端口号(均为192.168.1.64:554)、unicast和live,变化字段为Second和Main。由此可知,变化字段和流号的对关系是:主流用英文Main表示,辅流用英文Second表示。由此后续再识别到用户指定的流号后,直接用对应的英文进行表示。
进一步的,对于开启回放流与上述类似,参照上述比对过程,在通道号与流号确定的情况下,确定变化字段开始时间以及结束时间的对应关系,例如用UTC时间表示的;如用年月日时分秒表示的;如用NTP时间表示等。
以开启实况流为例,通过上述的数据分析,可得到该设备要求的URL格式为:rtsp://<IP>:<端口>/unicast/<通道号>/<流号>/live;启流参数的填写方式是:通道号对应的数字为用户指定的通道号减1,针对流号,若是指定的是主流,则流号为Main,若指定的为辅流,则流号为Second。由此,可根据分析出的该设备要求的URL格式为以及启流参数的填写方式,生成待适配文件,后续可对该待适配文件进行验证,验证过程参见上述,验证通过后将其改写为已适配文件,以便后续基于已适配文件直接在客户端本地生成准确的用于启流的本地URL。
在此需要说明的是,如果根据分析结果得到确定固定字段和变化字段,以及变化字段与启流参数之间的对应关系,因此根据分析结果生成待适配文件包括:根据分析出的固定字段和变化字段确定URL格式,以及根据变化字段与启流参数之间的对应关系确定启流参数填写方式,由此即可确定生成待适配文件,也即是找出了组装本地URL的方法。
进一步的,如果根据分析结果没有找出组装URL的方法,也即没有确定URL的格式和/或确定启流参数的填写方式,则直接进行无法适配状态,其中,无法适配状态表示无法找出组装URL的方法,后续不会再在需要开启媒体流时,从设备侧获取启流URL。
本申请实施例中,在空闲状态下,通过对获取的启流URL进行数据分析,根据分析结果确定启流URL的格式,以及变化字段与启流参数之间的对应关系,进而生成适配文件,以便后续可以直接根据该适配文件在客户端本地生成准确的启流URL,提升启流URL获取效率。
图4是本申请第四实施例的启流URL获取方法的逻辑流程图,本实施例是在上述实施例的基础上进行优化,参见图4,启流URL获取方法的逻辑流程如下:
本实施例中预先定义了四种状态:已适配状态,待适配状态,未适配状态,无法适配状态。其中,已适配状态是指已经找到自行组装URL的具体参数方法,并通过验证有效,也即本地存在适配文件;待适配状态是指已经找到了自行组装URL的具体参数方法,待验证效果,也即本地存在待适配文件;未适配状态是指还没有找到自行组装URL的具体参数方法;无法适配状态是指多次尝试寻找组装方法,但无法找到。
步骤1:
客户端程序在登录设备成功后,其中设备可选的为NVR设备,在本地环境中找对应的已适配文件,如果找到则进入已适配状态,并跳转到步骤6;没有找到则在本地寻找待适配文件,如果找到则进入待适配状态,并跳转到步骤5;如果没有找到待适配文件,则进入未适配状态,并跳转到步骤2。
步骤2:
进入未适配状态后,存在两种情况,客户端存在待处理的启流任务,则确定客户端处于工作状态,反之确定客户端处于空闲状态。在工作状态时,从设备侧获取指定的参数的启流URL,并通过该启流URL开启媒体流,并在启流成功后保留启流URL和参数;当客户端处于空闲状态时,会从设备侧获取不同启流参数的启流URL,结合之前启流成功的URL和参数(如果有),进行数据分析,确定启流URL中变化字段与启流参数的对应关系,以及URL的格式。
步骤3:
如果分析成功,也即是确定了URL格式,以及URL中变化字段与启流参数的对应关系,进而生成待适配文件,进入待分析状态,并跳转到步骤5。如果分析找不到URL组装方法,也即是无法确定URL中变化字段与启流参数的对应关系,且已多次分析找不到组装方法,则进入无法适配状态,即跳转到步骤4,否则回到待分析状态(也即跳转到步骤2)继续分析。
步骤4:
进入无法适配状态后,客户端***仅在需要启流时从设备获取启流URL,在下次登录此设备前不再对此设备的启流URL进行分析。
步骤5:
进入待适配状态后,当在工作态时,从设备侧获取启流URL,并用此启流URL开启媒体流,启流完成后,按照待适配文件自行组装启流URL,比较从设备侧获取的启流URL和本地自行组装的启流URL是否一致;当在空闲态时,基于随机指定的参数从设备侧获取启流URL,根据指定的启流参数自行组装URL,比较从设备侧获取的URL和自行组装的URL是否一致;当比较发现不一致的情况,删除待适配文件,回到未适配状态(也即跳转到步骤2),如果多次比较均一致,则写已适配文件,删待适配文件,进入已适配状态(也即跳转到步骤6)。
步骤6:
进入已适配状态后,当有启流任务时,根据指定的参数自行组装启流URL,用该启流URL开启实况流或回放流。启流成功后,再从设备侧获取启流URL,和自行组装的启流URL进行比较。如果不一致,则通过从设备获取的启流URL重新开启实况流或回放流,删除已适配文件,进入未适配状态,并跳转到步骤2。
本申请实施例中,通过分析启流URL格式,达到最终在客户端本地自行生成启流URL,提高启流速度的目标,而且提供多种状态的切换,保证自行组装生成的启流URL有效,降低错误率。
图5是根据本申请第五实施例的启流URL获取装置的结构示意图,本实施例可适用于基于媒体传输协议开启媒体流的情况,参见图5,该装置包括:
第一查询模块501,用于在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,已适配文件中包括已验证通过的设备要求的URL格式和启流参数填写方式;
URL生成模块502,用于若查询结果为是,则利用已适配文件与识别到的启流参数,在客户端本地组装本地URL,并将本地URL作为启流URL,以便基于启流URL开启媒体流;其中,已适配状态表示已获得验证通过的组装URL的方法。
在上述实施例的基础上,可选的,装置还包括:
第二查询模块,用于若本地不存在适配文件,则查询本地是否存在待适配文件,其中,待适配文件中包括未验证的设备要求的URL格式和启流参数填写方式;
第一启流任务判断模块,用于若查询结果为存在,则进入待适配状态,并判断当前是否存在待处理的启流任务;其中,待适配状态表示已获得未验证的组装URL的方法;
第一启流URL获取模块,用于若存在待处理的启流任务,则基于识别到的启流参数,从设备侧获取启流URL,并利用启流URL开启媒体流;
第二启流URL获取模块,用于获取基于待适配文件与识别到的启流参数组装成的本地URL;
第一比对模块,用于对启流URL与本地URL进行比对,并根据比对结果处理待适配文件。在上述实施例的基础上,可选的,所述装置还包括:
第二查询模块,用于若本地不存在适配文件,则查询本地是否存在待适配文件,其中,待适配文件中包括未验证的设备要求的URL格式和启流参数填写方式;
第一启流任务判断模块,用于若查询结果为存在,则进入待适配状态,并判断当前是否存在待处理的启流任务;其中,待适配状态表示已获得未验证的组装URL的方法;
空闲匹配操作执行模块,用于:
若不存在待处理的启流任务,则按照预设的重复次数,以重复执行空闲匹配操作;空闲匹配操作,包括:
随机确定一组启流参数,并基于该启流参数从设备侧获取启流URL;利用待适配文件和该启流参数,在客户端本地组装本地URL;
对启流URL与本地URL进行比对,并根据比对结果处理待适配文件。
在上述实施例的基础上,可选的,该装置还包括:
改写模块,用于若比对结果为相同,则待适配文件验证通过,并改写为适配文件,并从待适配状态切换为已适配状态;
删除模块,用于若比对结果不相同,则删除待适配文件,并从待适配状态切换为未适配状态,其中,未适配状态表示未获得组装URL的方法。
在上述实施例的基础上,可选的,该装置还包括:
第二启流任务判断模块,用于在本地不存在待适配文件时,判断当前是否存在待处理的启流任务;
第三启流URL获取模块,用于在判断结果为不存在待处理的启流任务时,根据识别到的不同启流参数,分别从设备侧获取不同的启流URL;
URL分析模块,用于对获取到的不同的启流URL进行数据分析,并根据分析结果确定是否找出组装URL的方法;
待适配文件生成模块,用于若判断结果为找出组装URL的方法时,根据分析结果生成适配文件;
状态切换模块,用于若判断结果为未找出组装URL的方法时,则进入无法适配状态,其中,无法适配状态表示无法找出组装URL的方法。
在上述实施例的基础上,可选的,URL分析具体用于:
对任意两个不同的启流URL进行比较,确定固定字段和变化字段;其中,固定字段是指两个启流URL中相同的字段,变化字段是指两个启流URL中不同的字段;
确定变化字段与启流参数之间的对应关系;
相应的,待适配文件生成模块具体用于:
根据分析出的固定字段和变化字段确定URL格式,以及根据变化字段与启流参数之间的对应关系确定启流参数填写方式。
在上述实施例的基础上,可选的,该装置还包括:
URL获取与比对模块,用于将本地URL作为启流URL,并开启媒体流后,基于识别到的启流参数,从设备侧获取启流URL,并将从设备侧获取的启流URL与本地URL进行比较;
重新启流模块,用于若启流URL与本地URL的URL格式和/或启流参数的填写方式不同,则根据从设备侧获取的启流URL重新开启媒体流,并将已适配文件删除。
本申请实施例所提供的启流URL获取装置可执行本申请任意实施例所提供的启流URL获取方法,具备执行方法相应的功能模块和有益效果。
图6是本申请第六实施例中提供的一种电子设备的结构示意图。如图6所示结构,本申请实施例中提供的电子设备包括:一个或多个处理器602和存储器601;该电子设备中的处理器602可以是一个或多个,图6中以一个处理器602为例;存储器601用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器602执行,使得所述一个或多个处理器602实现如本申请实施例中任一项所述的启流URL获取方法。
该电子设备还可以包括:输入装置603和输出装置604。
该电子设备中的处理器602、存储器601、输入装置603和输出装置604可以通过总线或其他方式连接,图6中以通过总线连接为例。
该电子设备中的存储装置601作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本申请实施例中所提供的应用控制方法对应的程序指令/模块。处理器602通过运行存储在存储装置601中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例中启流URL获取方法。
存储装置601可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器601可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器601可进一步包括相对于处理器602远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置603可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置604可包括显示屏等显示设备。
并且,当上述电子设备所包括一个或者多个程序被所述一个或者多个处理器602执行时,程序进行如下操作:
在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,所述已适配文件中包括已验证通过的所述设备要求的URL格式和启流参数填写方式;
若存在,则进入已适配状态,利用所述已适配文件与识别到的启流参数,在所述客户端本地组装本地URL,并将所述本地URL作为启流URL,以便基于所述启流URL开启媒体流;其中,已适配状态表示已获得验证通过的组装URL的方法。
当然,本领域技术人员可以理解,当上述电子设备所包括一个或者多个程序被一个或者多个处理器602执行时,程序还可以进行本申请任意实施例中所提供的应用控制方法中的相关操作。
本申请的一个实施例中提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行启流URL获取方法,该方法包括:
在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,所述已适配文件中包括已验证通过的所述设备要求的URL格式和启流参数填写方式;
若存在,则进入已适配状态,利用所述已适配文件与识别到的启流参数,在所述客户端本地组装本地URL,并将所述本地URL作为启流URL,以便基于所述启流URL开启媒体流;其中,已适配状态表示已获得验证通过的组装URL的方法。
可选的,该程序被处理器执行时还可以用于执行本申请任意实施例中所提供的方法。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read Only Memory,ROM)、可擦式可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、闪存、光纤、便携式CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于:电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、无线电频率(Radio Frequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言(诸如“C”语言或类似的程序设计语言)。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络(例如包括局域网(LAN)或广域网(WAN))连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (10)
1.一种启流URL获取方法,其特征在于,由客户端执行,所述方法包括:
在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,所述已适配文件中包括已验证通过的所述设备要求的URL格式和启流参数填写方式;
若存在,则进入已适配状态,利用所述已适配文件与识别到的启流参数,在所述客户端本地组装本地URL,并将所述本地URL作为启流URL,以便基于所述启流URL开启媒体流;其中,已适配状态表示已获得验证通过的组装URL的方法。
2.根据权利要求1所述的方法,其特征在于,若本地不存在已适配文件,所述方法还包括:
查询本地是否存在待适配文件,其中,所述待适配文件中包括未验证的所述设备要求的URL格式和启流参数填写方式;
若存在,则进入待适配状态,并判断当前是否存在待处理的启流任务;其中,待适配状态表示已获得未验证的组装URL的方法;
若存在待处理的启流任务,则基于识别到的启流参数,从所述设备侧获取启流URL,并利用所述启流URL开启媒体流;
获取基于所述待适配文件与识别到的启流参数组装成的本地URL;
对所述启流URL与所述本地URL进行比对,并根据比对结果处理所述待适配文件。
3.根据权利要求1所述的方法,其特征在于,若本地不存在已适配文件,所述方法还包括:
查询本地是否存在待适配文件,其中,所述待适配文件中包括未验证的所述设备要求的URL格式和启流参数填写方式;
若存在,则进入待适配状态,并判断当前是否存在待处理的启流任务;其中,待适配状态表示已获得未验证的组装URL的方法;
若不存在待处理的启流任务,则按照预设的重复次数,以重复执行空闲匹配操作;所述空闲匹配操作,包括:
随机确定一组启流参数,并基于该启流参数从设备侧获取启流URL;利用待适配文件和该启流参数,在客户端本地组装本地URL;
对所述启流URL与所述本地URL进行比对,并根据比对结果处理所述待适配文件。
4.根据权利要求2或3所述的方法,其特征在于,对所述启流URL与所述本地URL进行比对,并根据比对结果处理所述待适配文件,包括:
若所述启流URL与所述本地URL比对结果相同,则所述待适配文件验证通过,并改写为已适配文件,并从待适配状态切换为已适配状态;
若所述启流URL与所述本地URL比对结果不相同,则删除所述待适配文件,并从待适配状态切换为未适配状态,其中,所述未适配状态表示未获得组装URL的方法。
5.根据权利要求2或3所述的方法,其特征在于,若本地不存在待适配文件,所述方法还包括:
判断当前是否存在待处理的启流任务;
若不存在待处理的启流任务,则根据识别到的不同启流参数,分别从设备侧获取不同的启流URL;
对获取到的不同的启流URL进行数据分析,并根据分析结果确定是否找出组装URL的方法;
若是,则根据分析结果生成待适配文件;
若否,则进入无法适配状态,其中,无法适配状态表示无法找出组装URL的方法。
6.根据权利要求5所述的方法,其特征在于,对获取到的不同的启流URL进行数据分析,包括:
对任意两个不同的启流URL进行比较,确定固定字段和变化字段;其中,所述固定字段是指两个启流URL中相同的字段,所述变化字段是指两个启流URL中不同的字段;
确定变化字段与启流参数之间的对应关系;
相应的,根据分析结果生成待适配文件包括:
根据分析出的固定字段和变化字段确定URL格式,以及根据变化字段与启流参数之间的对应关系确定启流参数填写方式。
7.根据权利要求1所述的方法,其特征在于,将本地URL作为启流URL,并开启媒体流后,所述方法还包括:
基于识别到的启流参数,从所述设备侧获取启流URL,并将从设备侧获取的启流URL与所述本地URL进行比较;
若所述启流URL与所述本地URL的URL格式和/或启流参数的填写方式不同,则根据从设备侧获取的启流URL重新开启媒体流,并将所述已适配文件删除。
8.一种启流URL获取装置,其特征在于,配置于客户端,包括:
查询模块,用于在接收到成功登录设备的信息后,查询本地是否存在已适配文件;其中,所述已适配文件中包括已验证通过的所述设备要求的URL格式和启流参数填写方式;
URL生成模块,用于若查询结果为存在已适配文件,则利用所述已适配文件与识别到的启流参数,在所述客户端本地组装本地URL,并将所述本地URL作为启流URL,以便基于所述启流URL开启媒体流;其中,已适配状态表示已获得验证通过的组装URL的方法。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的启流URL获取方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的启流URL获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010859126.XA CN114189504B (zh) | 2020-08-24 | 2020-08-24 | 一种启流url获取方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010859126.XA CN114189504B (zh) | 2020-08-24 | 2020-08-24 | 一种启流url获取方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114189504A true CN114189504A (zh) | 2022-03-15 |
CN114189504B CN114189504B (zh) | 2024-03-08 |
Family
ID=80600680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010859126.XA Active CN114189504B (zh) | 2020-08-24 | 2020-08-24 | 一种启流url获取方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114189504B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109101564A (zh) * | 2018-07-16 | 2018-12-28 | 阿里巴巴集团控股有限公司 | 一种页面资源同时加载的方法、装置和电子设备 |
CN110166831A (zh) * | 2018-07-23 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 重放流媒体文件的方法、装置、存储介质和计算机设备 |
CN111107445A (zh) * | 2018-10-29 | 2020-05-05 | 浙江宇视科技有限公司 | 一种媒体协议流优化方法及*** |
-
2020
- 2020-08-24 CN CN202010859126.XA patent/CN114189504B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109101564A (zh) * | 2018-07-16 | 2018-12-28 | 阿里巴巴集团控股有限公司 | 一种页面资源同时加载的方法、装置和电子设备 |
CN110166831A (zh) * | 2018-07-23 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 重放流媒体文件的方法、装置、存储介质和计算机设备 |
CN111107445A (zh) * | 2018-10-29 | 2020-05-05 | 浙江宇视科技有限公司 | 一种媒体协议流优化方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN114189504B (zh) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10367913B2 (en) | Systems and methods for tracking user behavior using closed caption text | |
US10034057B2 (en) | Message processing method, device, gateway, STB and IPTV | |
US10038872B2 (en) | Systems and methods for managing video data | |
US11621986B2 (en) | Peer-to-peer media streaming from an edge data storage device to a browser | |
CN109948334B (zh) | 一种漏洞检测方法、***及电子设备和存储介质 | |
CN112188277B (zh) | 投屏控制方法、装置、电子设备和计算机程序介质 | |
CN110557672B (zh) | 一种电视节目共享方法、电视机及存储介质 | |
CN110401858B (zh) | 一种视频播放方法、装置、电子设备及存储介质 | |
US11303969B2 (en) | Methods and systems for implementing an elastic cloud based voice search using a third-party search provider | |
CN112040312A (zh) | 一种分屏渲染方法、装置、设备和存储介质 | |
CN111930709A (zh) | 数据存储方法、装置、电子设备和计算机可读介质 | |
EP3398295B1 (en) | Systems and methods for bandwidth estimation in oscillating networks | |
CN114189504B (zh) | 一种启流url获取方法、装置、电子设备和存储介质 | |
WO2021082945A1 (zh) | 一种远程管理方法、***、终端设备及服务器 | |
CN115357772A (zh) | 数据处理方法及装置 | |
CN115022676B (zh) | 视频流的推送方法、装置、电子设备及可读介质 | |
US11250267B2 (en) | Method and apparatus for processing information associated with video, electronic device, and storage medium | |
WO2019227431A1 (zh) | 一种用于生成多媒体内容的模板分享方法、装置和终端设备 | |
CN115866171A (zh) | 一种基于视频监控平台录像回看的方法及*** | |
CN118474085A (zh) | 一种摄像头的Web播放方法、装置、计算机设备及存储介质 | |
CN110619007A (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 |