CN115048242B - 适用于嵌入式的媒体文件录制错误的修复方法及相关设备 - Google Patents

适用于嵌入式的媒体文件录制错误的修复方法及相关设备 Download PDF

Info

Publication number
CN115048242B
CN115048242B CN202210635479.0A CN202210635479A CN115048242B CN 115048242 B CN115048242 B CN 115048242B CN 202210635479 A CN202210635479 A CN 202210635479A CN 115048242 B CN115048242 B CN 115048242B
Authority
CN
China
Prior art keywords
repair
identification
repaired
media
identifier
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
Application number
CN202210635479.0A
Other languages
English (en)
Other versions
CN115048242A (zh
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.)
Guangzhou Meilu Electronics Co ltd
Original Assignee
Guangzhou Meilu Electronics 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 Guangzhou Meilu Electronics Co ltd filed Critical Guangzhou Meilu Electronics Co ltd
Priority to CN202210635479.0A priority Critical patent/CN115048242B/zh
Publication of CN115048242A publication Critical patent/CN115048242A/zh
Application granted granted Critical
Publication of CN115048242B publication Critical patent/CN115048242B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network

Abstract

本发明实施例公开了一种适用于嵌入式的媒体文件录制错误的修复方法及相关设备,其中方法包括从修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识作为目标文件标识;根据目标文件标识从消息中间件确定待处理数据包;根据目标需修复标识列表、从待处理数据包解析得到的待修复媒体帧集和待修复媒体帧标识集对本地存储空间媒体文件进行修复得到修复结果,根据修复结果对目标文件标识对应的目标需修复标识列表进行更新;判断目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否则将修复辅助列表中的与目标文件标识对应的修复状态设为已完成,若是则重复执行获取数据包的步骤。提高了嵌入式设备播放媒体文件的播放质量。

Description

适用于嵌入式的媒体文件录制错误的修复方法及相关设备
技术领域
本发明涉及嵌入式技术领域,尤其涉及一种适用于嵌入式的媒体文件录制错误的修复方法及相关设备。
背景技术
随着技术的发展,嵌入式设备得到广泛应用。在嵌入式设备中录制媒体文件,因其便携性得到用户的喜爱。首先通过服务端对媒体文件进行打包,然后将打包得到的数据包通过网络传输给嵌入式设备,在这个过程中,可能出现打包时丢帧和传输时丢包的问题,从而使嵌入式设备录制的媒体文件出现缺帧和/或坏帧,导致嵌入式设备播放媒体文件的播放质量不高,影响了用户的观看体验;而且因嵌入式设备的环境变化导致网络切换、网速不稳定,进一步增加了传输时丢包的几率。
发明内容
基于此,有必要针对上述问题,提出了一种适用于嵌入式的媒体文件录制错误的修复方法及相关设备。
本申请提出了一种适用于嵌入式的媒体文件录制错误的修复方法,所述方法包括:
获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
本申请还提出了一种适用于嵌入式的媒体文件录制错误的修复装置,所述装置包括:
目标文件标识确定模块,用于获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
待处理数据包确定模块,用于根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
解析模块,用于对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
修复模块,用于根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
循环控制模块,用于判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
本申请提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
本申请提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
本申请的适用于嵌入式的媒体文件录制错误的修复方法,首先通过修复辅助列表记录需要修复的媒体文件的检查结论及修复状态,然后通过目标需修复标识列表记录单个媒体文件的修复进展,最后通过消息中间件发送需要修复的数据包,最后根据从消息中间件发送的数据包解析得到的待修复媒体帧集和待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,从而实现了对录制的媒体文件的自动化修复,提高了嵌入式设备播放媒体文件的播放质量;根据所述目标文件标识,从预设的消息中间件中获取数据包,从而实现以单个数据包为单位进行修复处理,通过减少每次的数据传输量以实现减少修复对网络资源的占用,并且减少了修复对嵌入式设备的计算资源的消耗,从而使本申请适用于嵌入式设备;通过消息中间件进行数据包的下发,可以避免数据包的丢失,也避免嵌入式设备直接连接录播服务器导致录播服务器的并发请求增多,有利于嵌入式设备在网络环境较好时再获取用于修复的数据包,从而进一步使本申请适用于嵌入式设备。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中适用于嵌入式的媒体文件录制错误的修复方法的流程图;
图2为一个实施例中适用于嵌入式的媒体文件录制错误的修复装置的结构框图;
图3为一个实施例中计算机设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,在一个实施例中,提供了一种适用于嵌入式的媒体文件录制错误的修复方法。该方法既可以应用于嵌入式设备的终端,本实施例以应用于终端举例说明。嵌入式设备包括但不限于:音视频录播机、手机、平板电脑和穿戴设备。
当本申请应用于音视频录播机时,音视频录播机包括:CPU(中央处理器)、存储器、USB(Universal Serial Bus)协议转换模块、HDMI(高清多媒体接口)协议转换模块、视频模数转换模块、音频模数转换模块、无线网络模块、有线宽带网络模块、CVBS(复合同步视频广播信号或复合视频消隐和同步)输出模块、HDMI输出模块、TF(TransFLash)卡、U盘(universal serial bus)、功放模块、显示屏、电源模块,功放模块包括数模转换单元、功放单元、喇叭和耳机接口;CPU分别与存储器、USB协议转换模块、HDMI协议转换模块、视频模数转换模块、音频模数转换模块、无线网络模块、有线宽带网络模块、CVBS输出模块、HDMI输出模块、TF卡、U盘、功放模块、显示屏电连接;电源模块用于向音视频录播机的各个部件或模块提供电源;音频模数转换模块接收音频信号和/或麦克风信号,视频模数转换模块接收CVBS信号,HDMI协议转换模块接收HDMI信号,USB协议转换模块接收计算机数据,CVBS输出模块与电视机连接,HDMI输出模块用于与高清电视机连接,无线网络模块接收无线网络信号,有线宽带网络模块接收有限网络信号。
本申请的适用于嵌入式的媒体文件录制错误的修复方法具体包括如下步骤:
S1:获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
修复辅助列表,用于记录本地存储空间中的需要修复的媒体文件的与修复相关的信息。修复辅助列表包括:媒体文件标识、存储时间、检查结论和修复状态。媒体文件标识可以是媒体文件名称、媒体文件ID等唯一标识一份媒体文件的数据。存储时间,是媒体文件第一次存储在本地存储空间的时间。若检查结论为需修复,则意味着同一条关联数据(该关联数据包括:媒体文件标识的具体值、存储时间的具体值、检查结论的具体值和修复状态的具体值)对应的媒体文件需要进行修复,若检查结论为不需修复,则意味着同一条关联数据对应的媒体文件不需要进行修复。若修复状态为空,则意味着同一条关联数据对应的媒体文件还未修复完成,若修复状态为已完成,则意味着同一条关联数据对应的媒体文件已经修复完成。
本地存储空间,是装载有实现本申请的程序文件的嵌入式设备中的存储空间。
具体而言,可以从本地存储空间中获取修复辅助列表;从所述修复辅助列表中查找检查结论为需修复并且修复状态为空的各个媒体文件标识,从查找到的各个媒体文件标识中获取媒体文件标识,将获取的媒体文件标识作为目标文件标识。
可选的,所述从查找到的各个媒体文件标识中获取媒体文件标识,将获取的媒体文件标识作为目标文件标识的步骤,包括:从查找到的各个媒体文件标识中获取存储时间为最早的媒体文件标识,将获取的媒体文件标识作为目标文件标识。
可选的,所述从查找到的各个媒体文件标识中获取媒体文件标识,将获取的媒体文件标识作为目标文件标识的步骤,包括:从查找到的各个媒体文件标识中获取任一个媒体文件标识,将获取的媒体文件标识作为目标文件标识。
S2:根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
可选的,消息中间件可以采用kafka(高吞吐量的分布式发布订阅消息系统)。
具体而言,从预设的消息中间件中获取与所述目标文件标识对应的数据包,将获取的数据包作为待处理数据包。
S3:对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
具体而言,对所述待处理数据包进行每个媒体帧解析,将解析得到的各个媒体帧作为待修复媒体帧集,将解析得到的各个媒体帧对应的各个媒体帧标识作为待修复媒体帧标识集。
媒体文件中包括一个或多个媒体帧。媒体帧,是一帧的数据。媒体帧可以是视频帧,也可以是音频帧。媒体帧标识可以是媒体帧名称、媒体帧ID等唯一标识一个媒体帧的数据。
S4:根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
修复结果包括:媒体帧标识和单帧结论。单帧结论为成功或失败。
目标需修复标识列表是存储在本地存储空间中的。目标需修复标识列表包括:媒体文件标识、媒体帧标识和修复结论,其中,若媒体帧标识对应的媒体帧不需进行修复,则该媒体帧标识对应的修复结论为不需修复,若媒体帧标识对应的媒体帧需要进行修复,则该媒体帧标识对应的修复结论的初始值为需修复,在该媒体帧完成修复时,该媒体帧标识对应的修复结论被更新为已完成。
具体而言,根据所述目标文件标识对应的目标需修复标识列表和所述待修复媒体帧标识集,确定所述待修复媒体帧集中的每个媒体帧在本地存储空间中的与所述目标文件标识对应的媒体文件中的修复位置,然后将该媒体帧插入对应的修复位置或者将该媒体帧对修复位置上的坏帧进行替换,完成修复处理生成修复结果;从所述修复结果中找出单帧结论为成功的媒体帧标识,将找出的媒体帧标识在所述目标需修复标识列表中对应的修复结论设置为已完成。
S5:判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
具体而言,判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,也就是是否有媒体帧未修复完成;若否,也就是所述目标需修复标识列表中不存在修复结论为需修复的媒体帧标识,此时意味着所述目标文件标识对应的媒体文件已经完成修复,因此,将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成;若是,也就是所述目标需修复标识列表中存在修复结论为需修复的媒体帧标识,此时意味着所述目标文件标识对应的媒体文件未完成修复,因此,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,也就是重复执行步骤S2至步骤S5,直至获取到修复暂停信号。当获取到修复暂停信号时,此时意味着不能从预设的消息中间件中获取数据包。
修复暂停信号,是暂停修复媒体文件的信号。修复暂停信号可以是用户发送的,也可以是实现本申请的程序文件根据预设条件自动生成的。比如,当嵌入式设备的工作模式是蓝光直播时,因蓝光直播需要的网络资源和嵌入式设备的计算资源均比较大,为了避免影响蓝光直播的质量,此时不能进行媒体文件的修复,因此当检测到嵌入式设备进入蓝光直播时,即生成修复暂停信号。
本实施例首先通过修复辅助列表记录需要修复的媒体文件的检查结论及修复状态,然后通过目标需修复标识列表记录单个媒体文件的修复进展,最后通过消息中间件发送需要修复的数据包,最后根据从消息中间件发送的数据包解析得到的待修复媒体帧集和待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,从而实现了对录制的媒体文件的自动化修复,提高了嵌入式设备播放媒体文件的播放质量;根据所述目标文件标识,从预设的消息中间件中获取数据包,从而实现以单个数据包为单位进行修复处理,通过减少每次的数据传输量以实现减少修复对网络资源的占用,并且减少了修复对嵌入式设备的计算资源的消耗,从而使本申请适用于嵌入式设备;通过消息中间件进行数据包的下发,可以避免数据包的丢失,也避免嵌入式设备直接连接录播服务器导致录播服务器的并发请求增多,有利于嵌入式设备在网络环境较好时再获取用于修复的数据包,从而进一步使本申请适用于嵌入式设备。
在一个实施例中,上述获取修复辅助列表的步骤,包括:
S12:获取媒体文件信号;
具体而言,通过数据通道获取媒体文件信号。媒体文件信号中包括一个或多个数据包。
数据通道可以是一个信号通道,也可以是一个信号通道中的一个子通道,还可以是虚拟的传输数据的通道。信号通道可以是HDMI信号通道、CVBS信号通道、无线网络通道、有线网络通道的一种或多种。
可选的,从录播服务器获取媒体文件信号。
S14:对所述媒体文件信号依次进行媒体文件解析及标识序列生成,得到待处理媒体文件和第一标识序列;
第一标识序列包括:媒体文件标识和媒体帧标识。
具体而言,对所述媒体文件信号进行媒体文件解析,将解析得到的媒体文件作为待处理媒体文件,并将解析得到的待处理媒体文件中的各个媒体帧对应的各个媒体帧标识及媒体文件标识生成第一标识序列。
可选的,所述对所述媒体文件信号依次进行媒体文件解析及标识序列生成,得到待处理媒体文件和第一标识序列的步骤之后,还包括:对所述待处理媒体文件进行播放。从而实现了在嵌入式设备进行实时播放和录制。
S16:将所述待处理媒体文件存储在所述本地存储空间中,并将所述第一标识序列中的所述媒体文件标识添加到所述修复辅助列表中,以及将所述第一标识序列发送给所述消息中间件;
具体而言,将所述待处理媒体文件存储在所述本地存储空间中,从而实现了媒体文件的录制;将所述第一标识序列中的所述媒体文件标识添加到所述修复辅助列表中,从而实现了自动在修复辅助列表中添加新的媒体文件标识;将所述第一标识序列发送给所述消息中间件,为修复存储在所述本地存储空间中的所述待处理媒体文件提供了基础。
S18:获取所述消息中间件发送的与所述第一标识序列对应的检查结果,并根据所述检查结果和所述第一标识序列中的所述媒体文件标识更新所述修复辅助列表。
所述检查结果包括:媒体文件标识、检查结论和需修复标识集,若检查结论为需修复,则需修复标识集中包含一个或多个媒体帧标识,若检查结论为不需修复,则需修复标识集为空。
具体而言,所述消息中间件在收到所述第一标识序列时,将推动进行是否需要修复的检查,以及进行需要修复的数据包的获取和暂存;根据所述检查结果和所述第一标识序列中的所述媒体文件标识更新所述修复辅助列表的与所述第一标识序列中的所述媒体文件标识对应的检查结论;并若所述检查结果中的需修复标识集不为空,则将该需修复标识集存储在本地存储空间。
本实施例通过消息中间件确定与第一标识序列对应的检查结果,从而实现将检查的任务量挪到了服务端,进一步减少了修复对嵌入式设备的计算资源的消耗,从而使本申请适用于嵌入式设备。
在本申请的另一个实施例中,根据所述目标文件标识,从预设的消息中间件中获取标准标识序列,得到待对比序列;根据所述待对比序列和所述第一标识序列生成与所述第一标识序列对应的检查结果;并将与所述第一标识序列对应的检查结果中的需修复标识集发送给所述消息中间件。从而实现了采用嵌入式设备进行检查。
在一个实施例中,上述根据所述检查结果和所述第一标识序列中的所述媒体文件标识更新所述修复辅助列表的步骤,包括:
S182:若所述检查结果的检查结论为需修复,则将所述修复辅助列表中的与所述第一标识序列中的所述媒体文件标识对应的检查结论设为需修复,并根据所述检查结果中的需修复标识集生成所述目标需修复标识列表,将所述目标需修复标识列表和所述第一标识序列中的所述媒体文件标识作为关联数据更新所述本地存储空间;
具体而言,若所述检查结果的检查结论为需修复,意味着本地存储空间中第一标识序列对于的媒体文件需要修复,因此,将所述修复辅助列表中的与所述第一标识序列中的所述媒体文件标识对应的检查结论设为需修复,并根据所述检查结果中的需修复标识集生成所述目标需修复标识列表,将所述目标需修复标识列表和所述第一标识序列中的所述媒体文件标识作为关联数据更新所述本地存储空间,为对本地存储空间中的与第一标识序列对应的媒体文件进行修复提供了基础。
S184:若所述检查结果的检查结论为不需修复,则将所述修复辅助列表中的与所述第一标识序列中的所述媒体文件标识对应的检查结论设为不需修复。
具体而言,若所述检查结果的检查结论为不需修复,意味着本地存储空间中第一标识序列对于的媒体文件不需要修复,因此,将所述修复辅助列表中的与所述第一标识序列中的所述媒体文件标识对应的检查结论设为不需修复,从而在后续的修复处理中不会将该所述第一标识序列中的所述媒体文件标识作为目标文件标识。
本实施例通过根据所述检查结果和所述第一标识序列中的所述媒体文件标识更新所述修复辅助列表,从而实现了自动化根据检查结果更新本地存储空间中的修复辅助列表,提高了本申请的自动化程度。
在一个实施例中,上述对所述媒体文件信号依次进行媒体文件解析及标识序列生成,得到待处理媒体文件和第一标识序列的步骤,包括:
S142:对所述媒体文件信号进行媒体文件解析,得到所述待处理媒体文件;
具体而言,采用所述媒体文件信号对应的数据通道对应的解析方法,对所述媒体文件信号进行媒体文件解析,将解析得到的媒体文件作为所述待处理媒体文件。
S144:根据所述待处理媒体文件中的各个媒体帧对应的各个媒体帧标识生成标识序列,得到初始标识序列;
具体而言,根据所述待处理媒体文件中的各个媒体帧对应的各个媒体帧标识及媒体文件标识生成标识序列生成序列,将生成的序列作为初始标识序列。
S146:从所述待处理媒体文件中的查找出状态为坏帧的每个媒体帧对应的媒体帧标识,得到待处理媒体帧标识;
具体而言,从所述待处理媒体文件中查找出状态为坏帧的每个媒体帧,将查找出的媒体帧对应的媒体帧标识作为待处理媒体帧标识。
可以理解的是,从所述待处理媒体文件中查找出状态为坏帧的每个媒体帧的方法在此不做赘述。
S148:将所述初始标识序列中的与每个所述待处理媒体帧标识对应的坏帧状态设为是;
具体而言,将所述初始标识序列中的与每个所述待处理媒体帧标识对应的坏帧状态设为是,从而标注出了坏帧的媒体帧标识。
S1410:将所述初始标识序列作为所述第一标识序列。
具体而言,将完成所有坏帧的标注的所述初始标识序列作为所述第一标识序列。
本实施例通过在第一标识序列中标注出坏帧状态,从而有利于对坏帧进行修复,提高了修复的准确性。
在一个实施例中,上述将所述第一标识序列发送给所述消息中间件的步骤,包括:
根据所述第一标识序列生成序列上传请求,将所述序列上传请求发送给所述消息中间件;
也就是说,将所述第一标识序列作为序列上传请求携带的参数。
其中,所述消息中间件用于:
S162:对所述序列上传请求进行所述第一标识序列解析,将解析得到的所述第一标识序列发送给录播服务器,其中,所述录播服务器用于获取与所述第一标识序列中的所述媒体文件标识对应的标准标识序列,作为待对比序列,根据所述待对比序列与所述第一标识序列生成所述检查结果;
具体而言,对所述序列上传请求进行所述第一标识序列解析,将解析得到的所述第一标识序列发送给录播服务器,从而为获取检查结果提供了基础。
所述录播服务器,用于从所述录播服务器的存储空间中获取与所述第一标识序列中的所述媒体文件标识对应的标准标识序列,将获取的标准标识序列作为待对比序列,判断所述待对比序列中的每个媒体帧标识是否在所述第一标识序列中存在;若所述待对比序列中存在媒体帧标识在所述第一标识序列中不存在,则确定所述检查结果的检查结论为需修复,将所述待对比序列中的在所述第一标识序列中不存在的各个媒体帧标识作为所述检查结果的需修复标识集;判断所述第一标识序列中是否存在坏帧状态为是的媒体帧标识,若存在,则确定所述检查结果的检查结论为需修复,将所述第一标识序列中的坏帧状态为是的各个媒体帧标识添加到所述检查结果的需修复标识集中;将所述第一标识序列中的所述媒体文件标识作为所述检查结果的媒体文件标识。可以理解的是,若所述待对比序列中的每个媒体帧标识在所述第一标识序列中均存在,并且,所述第一标识序列中不存在坏帧状态为是的媒体帧标识,则确定所述检查结果的检查结论为不需修复。
S164:获取所述录播服务器发送的与所述第一标识序列对应的所述检查结果;
具体而言,通过与所述录播服务器的通信连接,获取所述录播服务器发送的与所述第一标识序列对应的所述检查结果。
S166:若所述检查结果的所述检查结论是需修复,则获取所述录播服务器发送的与所述检查结果中的需修复标识集对应的各个数据包,得到各个待存储数据包,将所述待存储数据包存储在预设的消息队列中。
具体而言,若所述检查结果的所述检查结论是需修复,此时意味着需要获取用于修复的数据包,因此,获取所述录播服务器发送的与所述检查结果中的需修复标识集对应的各个数据包,将获取的每个数据包作为一个待存储数据包,将各个所述待存储数据包存储在所述消息中间件中的预设的消息队列中。
本实施例通过消息中间件对所述第一标识序列生成检查结果,从而实现将检查的任务量挪到了服务端,进一步减少了修复对嵌入式设备的计算资源的消耗,从而使本申请适用于嵌入式设备。
在一个实施例中,上述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,包括:
S22:获取当前网速和当前工作模式;
具体而言,获取装载有实现本申请的程序文件的嵌入式设备的当前网速和当前工作模式。
当前工作模式是嵌入式设备正在工作的工作模式。工作模式的取值范围包括但不限于:待机、标清直播、高清直播、超高清直播、蓝光直播、标清本地播放、高清本地播放、超高清本地播放和蓝光本地播放。
标清直播,是采用标清分辨率播放直播的数据。高清直播,是采用高清分辨率播放直播的数据。超高清直播,是采用超高清分辨率播放直播的数据。蓝光直播,是采用蓝光方式播放直播的数据。
标清本地播放,是采用标清分辨率播放本地存储空间中的数据。高清本地播放,是采用高清分辨率播放本地存储空间中的数据。超高清本地播放,是采用超高清分辨率播放本地存储空间中的数据。蓝光本地播放,是采用蓝光方式播放本地存储空间中的数据。
S24:将所述当前网速减去所述当前工作模式对应的工作最低网速,得到网速差值;
具体而言,将所述当前网速减去所述当前工作模式对应的工作最低网速,将相减得到的数据作为网速差值。
S26:判断所述网速差值是否大于预设的差值阈值;
S28:若是,则根据所述目标文件标识,从所述消息中间件中获取数据包,得到所述待处理数据包;
具体而言,若是,也就是所述网速差值大于预设的差值阈值,此时意味着当前网速满足嵌入式设备当前的工作模式的播放质量对网络资源的需求,而且至少满足从所述消息中间件中获取数据包的基本要求,因此,从所述消息中间件中获取数据包,将获取的数据包作为所述待处理数据包。
S210:若否,则在等待预设的等待时长时重复执行所述获取当前网速和当前工作模式的步骤。
具体而言,若否,也就是所述网速差值小于或等于预设的差值阈值,此时意味着当前网速不满足嵌入式设备当前的工作模式的播放质量对网络资源的需求,因此,以当前时间为开始时间,在等待预设的等待时长时重复执行所述获取当前网速和当前工作模式的步骤;重复执行所述获取当前网速和当前工作模式的步骤,也就是重复执行步骤S22至步骤S210。从而实现了自动化间隔预设的等待时长重复确认所述网速差值是否大于预设的差值阈值。
本实施例在网速差值大于预设的差值阈值时,从所述消息中间件中获取数据包进行本地存储空间中的媒体文件的修复,在网速差值小于或等于预设的差值阈值时,在等待预设的等待时长时重复确定所述网速差值是否大于预设的差值阈值,从而在保障嵌入式设备当前的工作模式的播放质量的情况下进行媒体文件修复,避免修复媒体文件对嵌入式设备的播放质量的影响,提高了用户体验。
在一个实施例中,上述若是,则根据所述目标文件标识,从所述消息中间件中获取数据包,得到所述待处理数据包的步骤,包括:
S282:若所述网速差值大于所述差值阈值,则根据所述目标文件标识生成数据包获取请求,将所述数据包获取请求发送给所述消息中间件;
具体而言,若所述网速差值大于所述差值阈值,此时意味着当前网速满足嵌入式设备当前的工作模式的播放质量对网络资源的需求,而且至少满足从所述消息中间件中获取数据包的基本要求,因此,生成数据包获取请求,将所述目标文件标识作为所述数据包获取请求携带的参数,通过将所述数据包获取请求发送给所述消息中间件,以实现将所述目标文件标识传递给所述消息中间件。
S284:获取所述消息中间件根据所述数据包获取请求发送的返回值,对所述返回值进行消息解析,得到待处理消息,从所述待处理消息中提取数据包,得到提取结果,其中,所述消息中间件用于对所述数据包获取请求进行所述目标文件标识解析,根据解析得到的所述目标文件标识,从预设的消息队列中查找消息,得到待推送消息,根据所述待推送消息和所述目标文件标识生成所述返回值;
具体而言,通过与所述消息中间件的通信连接,获取所述消息中间件根据所述数据包获取请求发送的返回值,然后对所述返回值进行消息解析,将解析得到的消息作为待处理消息,最后从所述待处理消息中提取数据包,若提取到数据包,则确定提取结果为成功,若未提取到数据包,则确定提取结果为失败。
其中,通过所述消息中间件,对所述数据包获取请求进行所述目标文件标识解析,根据解析得到的所述目标文件标识,从预设的消息队列中查找消息,将查找到的消息作为待推送消息,按照预设的返回值生成方式,根据所述待推送消息和所述目标文件标识生成所述返回值。
可以理解的是,待推送消息,是按预设格式封装的消息。待推送消息中至少包括数据包。
S286:若所述提取结果为成功,则将所述提取结果对应的数据包作为所述待处理数据包;
具体而言,若所述提取结果为成功,此时意味着待处理消息中有可以用修复的数据包,因此,将待处理消息中的与所述提取结果对应的数据包作为所述待处理数据包。
S288:若所述提取结果为失败,则根据所述本地存储空间中的与所述目标文件标识对应的媒体文件生成标识序列,作为第二标识序列,将所述第二标识序列发送给所述消息中间件,获取所述消息中间件发送的与所述第二标识序列对应的检查结果,并根据所述第二标识序列对应的所述检查结果和所述目标文件标识更新所述修复辅助列表。
具体而言,若所述提取结果为失败,此时意味着待处理消息中没有用修复的数据包,又因所述修复辅助列表中的与所述目标文件标识对应的修复状态为空,此时出现了错误,因此,根据所述本地存储空间中的与所述目标文件标识对应的媒体文件生成标识序列,将生成的标识序列作为第二标识序列;将所述第二标识序列发送给所述消息中间件,获取所述消息中间件发送的与所述第二标识序列对应的检查结果,并根据所述第二标识序列对应的所述检查结果和所述目标文件标识更新所述修复辅助列表,从而实现了重新检查和根据重新确定的检查结果更新修复辅助列表。
本实施例在述修复辅助列表中的与所述目标文件标识对应的修复状态为空,但是无法从消息中间件中获取用于修复的数据包时,根据所述本地存储空间中的与所述目标文件标识对应的媒体文件生成标识序列,以所述本地存储空间中的与所述目标文件标识对应的媒体文件的当前状态为初始状态,初始化修复步骤,从而提高了修复的准确性。
如图2所示,本申请还提出了一种适用于嵌入式的媒体文件录制错误的修复装置,所述装置包括:
目标文件标识确定模块802,用于获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
待处理数据包确定模块804,用于根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
解析模块806,用于对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
修复模块808,用于根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
循环控制模块810,用于判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
本实施例首先通过修复辅助列表记录需要修复的媒体文件的检查结论及修复状态,然后通过目标需修复标识列表记录单个媒体文件的修复进展,最后通过消息中间件发送需要修复的数据包,最后根据从消息中间件发送的数据包解析得到的待修复媒体帧集和待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,从而实现了对录制的媒体文件的自动化修复,提高了嵌入式设备播放媒体文件的播放质量;根据所述目标文件标识,从预设的消息中间件中获取数据包,从而实现以单个数据包为单位进行修复处理,通过减少每次的数据传输量以实现减少修复对网络资源的占用,并且减少了修复对嵌入式设备的计算资源的消耗,从而使本申请适用于嵌入式设备;通过消息中间件进行数据包的下发,可以避免数据包的丢失,也避免嵌入式设备直接连接录播服务器导致录播服务器的并发请求增多,有利于嵌入式设备在网络环境较好时再获取用于修复的数据包,从而进一步使本申请适用于嵌入式设备。
图3示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图3所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现适用于嵌入式的媒体文件录制错误的修复方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行适用于嵌入式的媒体文件录制错误的修复方法。本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
本实施例首先通过修复辅助列表记录需要修复的媒体文件的检查结论及修复状态,然后通过目标需修复标识列表记录单个媒体文件的修复进展,最后通过消息中间件发送需要修复的数据包,最后根据从消息中间件发送的数据包解析得到的待修复媒体帧集和待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,从而实现了对录制的媒体文件的自动化修复,提高了嵌入式设备播放媒体文件的播放质量;根据所述目标文件标识,从预设的消息中间件中获取数据包,从而实现以单个数据包为单位进行修复处理,通过减少每次的数据传输量以实现减少修复对网络资源的占用,并且减少了修复对嵌入式设备的计算资源的消耗,从而使本申请适用于嵌入式设备;通过消息中间件进行数据包的下发,可以避免数据包的丢失,也避免嵌入式设备直接连接录播服务器导致录播服务器的并发请求增多,有利于嵌入式设备在网络环境较好时再获取用于修复的数据包,从而进一步使本申请适用于嵌入式设备。
在一个实施例中,提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,直至获取到修复暂停信号。
本实施例首先通过修复辅助列表记录需要修复的媒体文件的检查结论及修复状态,然后通过目标需修复标识列表记录单个媒体文件的修复进展,最后通过消息中间件发送需要修复的数据包,最后根据从消息中间件发送的数据包解析得到的待修复媒体帧集和待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,从而实现了对录制的媒体文件的自动化修复,提高了嵌入式设备播放媒体文件的播放质量;根据所述目标文件标识,从预设的消息中间件中获取数据包,从而实现以单个数据包为单位进行修复处理,通过减少每次的数据传输量以实现减少修复对网络资源的占用,并且减少了修复对嵌入式设备的计算资源的消耗,从而使本申请适用于嵌入式设备;通过消息中间件进行数据包的下发,可以避免数据包的丢失,也避免嵌入式设备直接连接录播服务器导致录播服务器的并发请求增多,有利于嵌入式设备在网络环境较好时再获取用于修复的数据包,从而进一步使本申请适用于嵌入式设备。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种适用于嵌入式的媒体文件录制错误的修复方法,所述方法包括:
S1:获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
S2:根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
S3:对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
S4:根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
S5:判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行步骤S2-S5,直至获取到修复暂停信号;
所述根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新的步骤,包括:
根据所述目标文件标识对应的目标需修复标识列表和所述待修复媒体帧标识集,确定所述待修复媒体帧集中的每个媒体帧在本地存储空间中的与所述目标文件标识对应的媒体文件中的修复位置,将该媒体帧插入对应的修复位置或者将该媒体帧对修复位置上的坏帧进行替换,以完成修复处理生成所述修复结果;
从所述修复结果中找出单帧结论为成功的媒体帧标识,将找出的媒体帧标识在所述目标需修复标识列表中对应的修复结论设置为已完成。
2.根据权利要求1所述的适用于嵌入式的媒体文件录制错误的修复方法,其特征在于,所述获取修复辅助列表的步骤,包括:
获取媒体文件信号;
对所述媒体文件信号依次进行媒体文件解析及标识序列生成,得到待处理媒体文件和第一标识序列;
将所述待处理媒体文件存储在所述本地存储空间中,并将所述第一标识序列中的所述媒体文件标识添加到所述修复辅助列表中,以及将所述第一标识序列发送给所述消息中间件;
获取所述消息中间件发送的与所述第一标识序列对应的检查结果,并根据所述检查结果和所述第一标识序列中的所述媒体文件标识更新所述修复辅助列表。
3.根据权利要求2所述的适用于嵌入式的媒体文件录制错误的修复方法,其特征在于,所述根据所述检查结果和所述第一标识序列中的所述媒体文件标识更新所述修复辅助列表的步骤,包括:
若所述检查结果的检查结论为需修复,则将所述修复辅助列表中的与所述第一标识序列中的所述媒体文件标识对应的检查结论设为需修复,并根据所述检查结果中的需修复标识集生成所述目标需修复标识列表,将所述目标需修复标识列表和所述第一标识序列中的所述媒体文件标识作为关联数据更新所述本地存储空间;
若所述检查结果的检查结论为不需修复,则将所述修复辅助列表中的与所述第一标识序列中的所述媒体文件标识对应的检查结论设为不需修复。
4.根据权利要求2所述的适用于嵌入式的媒体文件录制错误的修复方法,其特征在于,所述对所述媒体文件信号依次进行媒体文件解析及标识序列生成,得到待处理媒体文件和第一标识序列的步骤,包括:
对所述媒体文件信号进行媒体文件解析,得到所述待处理媒体文件;
根据所述待处理媒体文件中的各个媒体帧对应的各个媒体帧标识生成标识序列,得到初始标识序列;
从所述待处理媒体文件中的查找出状态为坏帧的每个媒体帧对应的媒体帧标识,得到待处理媒体帧标识;
将所述初始标识序列中的与每个所述待处理媒体帧标识对应的坏帧状态设为是;
将所述初始标识序列作为所述第一标识序列。
5.根据权利要求4所述的适用于嵌入式的媒体文件录制错误的修复方法,其特征在于,所述将所述第一标识序列发送给所述消息中间件的步骤,包括:
根据所述第一标识序列生成序列上传请求,将所述序列上传请求发送给所述消息中间件,其中,所述消息中间件用于:
对所述序列上传请求进行所述第一标识序列解析,将解析得到的所述第一标识序列发送给录播服务器,其中,所述录播服务器用于获取与所述第一标识序列中的所述媒体文件标识对应的标准标识序列,作为待对比序列,根据所述待对比序列与所述第一标识序列生成所述检查结果;
获取所述录播服务器发送的与所述第一标识序列对应的所述检查结果;
若所述检查结果的所述检查结论是需修复,则获取所述录播服务器发送的与所述检查结果中的需修复标识集对应的各个数据包,得到各个待存储数据包,将所述待存储数据包存储在预设的消息队列中。
6.根据权利要求1所述的适用于嵌入式的媒体文件录制错误的修复方法,其特征在于,所述根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包的步骤,包括:
S22:获取当前网速和当前工作模式;
S24:将所述当前网速减去所述当前工作模式对应的工作最低网速,得到网速差值;
S26:判断所述网速差值是否大于预设的差值阈值;
S28:若是,则根据所述目标文件标识,从所述消息中间件中获取数据包,得到所述待处理数据包;
S210:若否,则在等待预设的等待时长时重复执行步骤S22至S210。
7.根据权利要求6所述的适用于嵌入式的媒体文件录制错误的修复方法,其特征在于,所述若是,则根据所述目标文件标识,从所述消息中间件中获取数据包,得到所述待处理数据包的步骤,包括:
若所述网速差值大于所述差值阈值,则根据所述目标文件标识生成数据包获取请求,将所述数据包获取请求发送给所述消息中间件;
获取所述消息中间件根据所述数据包获取请求发送的返回值,对所述返回值进行消息解析,得到待处理消息,从所述待处理消息中提取数据包,得到提取结果,其中,所述消息中间件用于对所述数据包获取请求进行所述目标文件标识解析,根据解析得到的所述目标文件标识,从预设的消息队列中查找消息,得到待推送消息,根据所述待推送消息和所述目标文件标识生成所述返回值;
若所述提取结果为成功,则将所述提取结果对应的数据包作为所述待处理数据包;
若所述提取结果为失败,则根据所述本地存储空间中的与所述目标文件标识对应的媒体文件生成标识序列,作为第二标识序列,将所述第二标识序列发送给所述消息中间件,获取所述消息中间件发送的与所述第二标识序列对应的检查结果,并根据所述第二标识序列对应的所述检查结果和所述目标文件标识更新所述修复辅助列表。
8.一种适用于嵌入式的媒体文件录制错误的修复装置,其特征在于,所述装置包括:
目标文件标识确定模块,用于实现步骤S1:获取修复辅助列表,并从所述修复辅助列表中查找检查结论为需修复及修复状态为空的媒体文件标识,作为目标文件标识;
待处理数据包确定模块,用于实现步骤S2:根据所述目标文件标识,从预设的消息中间件中获取数据包,得到待处理数据包;
解析模块,用于实现步骤S3:对所述待处理数据包进行媒体帧解析,得到待修复媒体帧集和待修复媒体帧标识集;
修复模块,用于实现步骤S4:根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新;
循环控制模块,用于实现步骤S5:判断所述目标需修复标识列表中是否存在修复结论为需修复的媒体帧标识,若否,则将所述修复辅助列表中的与所述目标文件标识对应的修复状态设为已完成,若是,重复执行步骤S2-S5,直至获取到修复暂停信号;
所述根据所述目标文件标识对应的目标需修复标识列表、所述待修复媒体帧集和所述待修复媒体帧标识集,对本地存储空间中的与所述目标文件标识对应的媒体文件进行修复,得到修复结果,并根据所述修复结果,对所述目标需修复标识列表进行更新的步骤,包括:
根据所述目标文件标识对应的目标需修复标识列表和所述待修复媒体帧标识集,确定所述待修复媒体帧集中的每个媒体帧在本地存储空间中的与所述目标文件标识对应的媒体文件中的修复位置,将该媒体帧插入对应的修复位置或者将该媒体帧对修复位置上的坏帧进行替换,以完成修复处理生成所述修复结果;
从所述修复结果中找出单帧结论为成功的媒体帧标识,将找出的媒体帧标识在所述目标需修复标识列表中对应的修复结论设置为已完成。
9.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
CN202210635479.0A 2022-06-06 2022-06-06 适用于嵌入式的媒体文件录制错误的修复方法及相关设备 Active CN115048242B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210635479.0A CN115048242B (zh) 2022-06-06 2022-06-06 适用于嵌入式的媒体文件录制错误的修复方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210635479.0A CN115048242B (zh) 2022-06-06 2022-06-06 适用于嵌入式的媒体文件录制错误的修复方法及相关设备

Publications (2)

Publication Number Publication Date
CN115048242A CN115048242A (zh) 2022-09-13
CN115048242B true CN115048242B (zh) 2023-03-24

Family

ID=83158787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210635479.0A Active CN115048242B (zh) 2022-06-06 2022-06-06 适用于嵌入式的媒体文件录制错误的修复方法及相关设备

Country Status (1)

Country Link
CN (1) CN115048242B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101420317A (zh) * 2008-11-21 2009-04-29 深圳华为通信技术有限公司 媒体文件录制错误的修复方法、录制终端、服务器和系统
CN107193689A (zh) * 2017-05-08 2017-09-22 北京视通科技有限公司 一种媒体文件录制异常的修复方法及装置
CN112102212A (zh) * 2020-11-19 2020-12-18 腾讯科技(深圳)有限公司 一种视频修复方法、装置、设备及存储介质
CN114201280A (zh) * 2021-12-10 2022-03-18 北京百度网讯科技有限公司 多媒体数据的处理方法、装置、设备以及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10157102B2 (en) * 2016-12-29 2018-12-18 Whatsapp Inc. Techniques to scan and reorganize media files to remove gaps

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101420317A (zh) * 2008-11-21 2009-04-29 深圳华为通信技术有限公司 媒体文件录制错误的修复方法、录制终端、服务器和系统
CN107193689A (zh) * 2017-05-08 2017-09-22 北京视通科技有限公司 一种媒体文件录制异常的修复方法及装置
CN112102212A (zh) * 2020-11-19 2020-12-18 腾讯科技(深圳)有限公司 一种视频修复方法、装置、设备及存储介质
CN114201280A (zh) * 2021-12-10 2022-03-18 北京百度网讯科技有限公司 多媒体数据的处理方法、装置、设备以及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
How to Fix Video File Cannot Be Played Error Code 224003;Brithny;《https://www.easeus.com/video-repair-tips/video-file-cannot-be-played-error-224003.html》;20210903;1-13 *
视频质量诊断技术及应用;王永升等;《中国安防》;20180601;71-75 *
面向服务质量的物联网视频传输中间件;王也;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140815;I136-222 *

Also Published As

Publication number Publication date
CN115048242A (zh) 2022-09-13

Similar Documents

Publication Publication Date Title
CN108989885B (zh) 视频文件转码系统、分割方法、转码方法及装置
CN110209652A (zh) 数据表迁移方法、装置、计算机设备和存储介质
JP2007074724A (ja) デジタル放送ネットワークでサーバとクライアントとの間のepg情報を同期化させるための方法及び装置
US20100058409A1 (en) Audio and video testing methodology
CN110830823B (zh) 播放进度修正方法、装置、电子设备及可读存储介质
US11115706B2 (en) Method, client, and terminal device for screen recording
CN112003976B (zh) 硬编硬解测试方法及装置
CN111405215A (zh) 视频存储方法、装置、云服务器和存储介质
CN115048242B (zh) 适用于嵌入式的媒体文件录制错误的修复方法及相关设备
CN111698281B (zh) 一种资源下载方法、装置、电子设备及存储介质
WO2017071642A1 (zh) 媒体播放方法、装置和计算机存储介质
CN113207007B (zh) 基于hls协议的直播录制方法
CN116415028A (zh) 录像数据补录方法、云存储服务器、系统及存储介质
CN112449209B (zh) 视频存储方法、装置、云服务器及计算机可读存储介质
CN113553488A (zh) 搜索引擎中索引数据的更新方法、装置、电子设备及介质
CN113411629A (zh) 直播视频管理方法、装置、设备以及计算机可读存储介质
CN108881984B (zh) 数字电视设备截图存储方法及系统
CN113934870A (zh) 多媒体推荐模型的训练方法、装置及服务器
CN112423099A (zh) 视频加载方法、装置和电子设备
CN110691256B (zh) 视频关联信息的处理方法、装置,服务器及存储介质
CN116243940A (zh) 网络设备的升级方法、装置、电子设备及存储介质
CN111988651A (zh) 一种视频播放方法及移动终端、可穿戴设备
CN113852919B (zh) 预警消息的生成方法和装置、存储介质及电子装置
WO2023005484A1 (zh) 一种用户信息的注册方法及装置
CN114499921A (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