CN113132790B - 一种视频转储方法及装置 - Google Patents
一种视频转储方法及装置 Download PDFInfo
- Publication number
- CN113132790B CN113132790B CN201911415986.8A CN201911415986A CN113132790B CN 113132790 B CN113132790 B CN 113132790B CN 201911415986 A CN201911415986 A CN 201911415986A CN 113132790 B CN113132790 B CN 113132790B
- Authority
- CN
- China
- Prior art keywords
- dump
- information
- video
- transcoding
- mobile storage
- 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 84
- 230000004044 response Effects 0.000 claims abstract description 89
- 230000008676 import Effects 0.000 claims description 48
- 230000008569 process Effects 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 13
- 230000003137 locomotive effect Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000013475 authorization Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012546 transfer 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing 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/4402—Processing 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
-
- 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明提供了一种视频转储方法,包括扫描步骤、导入步骤、转码步骤以及上传步骤;其中对于各个移动存储设备,扫描步骤包括:扫描该移动存储设备以获取其中存储的视频文件的视频信息,响应于获取到所有视频文件的视频信息,在对应的转储信息表中记录各个视频文件的视频信息和转储状态信息为转储信息;导入步骤包括:将转储状态信息为扫描完成的视频文件导入本地存储器;转码步骤包括:按预设格式转码转储状态信息为导入成功的视频文件;上传步骤包括:将转储状态信息为转码成功的视频文件上传至服务器。本发明还提供了实现上述视频转储方法的视频转储装置。本发明通过转储信息表及其中的转储状态信息能够追踪视频文件的转储进度,提高转储效率。
Description
技术领域
本发明涉及数据转储机制,尤其涉及一种视频转储方法以及一种视频转储装置。
背景技术
为了能够实现机务段各级分析人员都能够调阅分析电力机车上录制的视频文件,需要将机车上的视频文件汇总到服务器中进行集中管理。乘务员行车前,会将移动存储设备***机车视频录制***作为视频存储设备。机车上电后,机车视频录制设备启动视频录制工作,并将生成的视频文件存入移动存储设备。乘务员退勤时,将存有视频文件的移动存储设备提交到退勤点,由专人对移动存储设备中的视频文件进行转储。
目前的机车视频转储方式是:由专门的工作人员收集退勤点的移动存储设备,将收集到的移动存储设备一一***视频转储客户机,将移动存储设备中的视频文件全部拷贝到客户机本地磁盘,开启转储软件对磁盘上的视频文件进行转码、上传,每次转储完一个文件夹就需要人工操作软件进行下一个文件夹的转储。
工作人员转储视频时,为了能够及时回收存储视频用的移动存储设备,一般都会先将移动存储设备中的视频文件拷贝至转储客户机,再开启转储软件执行转码、上传操作,因此整个转储流程耗时很长,且操作工序繁琐。若在转储过程中由于异常情况导致转储过程中断,会要求人工重复执行被中断的操作,如此便会严重降低视频的转储效率,并浪费大量的人力。
因此,亟需要一种视频转储方法以及视频转储装置,希望能够实现移动存储设备中视频文件的自动转储,无需人工干预,并且需要支持断点续传功能,从而能够有效提升视频转储的效率。
发明内容
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。
为了解决上述问题,本发明提供了一种视频转储方法,具体包括扫描步骤、导入步骤、转码步骤以及上传步骤;其中,对于各个移动存储设备,
上述扫描步骤包括:扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息,响应于获取到所有视频文件的视频信息,在对应的转储信息表中记录各个视频文件的转储信息,上述转储信息包括视频文件的视频信息和初始值为扫描完成的转储状态信息;
上述导入步骤包括:将上述转储状态信息为扫描完成的视频文件导入本地存储器,并根据导入结果更新上述转储状态信息;
上述转码步骤包括:按预设格式转码上述转储状态信息为导入成功的视频文件,并根据转码结果更新上述转储状态信息;
上述上传步骤包括:将上述转储状态信息为转码成功的视频文件上传至服务器。
在上述视频转储方法的一实施例中,可选的,在第一线程执行各个移动存储设备的扫描步骤和导入步骤,在第二线程执行各个移动存储设备的转码步骤,在第三线程执行各个移动存储设备的上传步骤;其中
响应于存在多个移动存储设备,上述第一线程、上述第二线程和上述第三线程并行。
在上述视频转储方法的一实施例中,可选的,响应于存在至少一个移动存储设备,并行处理所有移动存储设备的扫描步骤和导入步骤;其中,对于各个移动存储设备,
将上述转储状态信息为扫描完成的视频文件导入本地存储器进一步包括:响应于判断出上述转储信息表中存在至少一条转储状态信息为扫描完成的转储信息,依次将各条转储状态信息为扫描完成的视频文件导入上述本地存储器;
根据导入结果更新上述转储状态信息进一步包括:根据导入结果将各条转储状态信息更新为导入成功或导入失败。
在上述视频转储方法的一实施例中,可选的,对于各个移动存储设备,上述导入步骤还包括:响应于该移动存储设备中的所有视频文件均导入成功,格式化该移动存储设备。
在上述视频转储方法的一实施例中,可选的,对于各个移动存储设备,
扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息进一步包括:获取该移动存储设备中的视频文件列表,上述视频文件列表包含各个视频文件的文件名和存放路径,判断各个视频文件的文件名和存放路径是否合法,以及获取各个合法视频文件的视频信息;
在对应的转储信息表中记录各个视频文件的转储信息进一步包括:响应于获取到所有合法视频文件的视频信息,在对应的转储信息表中记录各个合法视频文件的转储信息。
在上述视频转储方法的一实施例中,可选的,响应于存在至少一个移动存储设备,逐一处理各个移动存储设备的转码步骤,包括:
转码步骤1:读取各个移动存储设备的转储信息表,判断是否存在每一条转储状态信息均为导入成功的转储信息表;
转码步骤2:响应于存在至少一张每一条转储状态信息均为导入成功的转储信息表,获取其中一张每一条转储状态信息均为导入成功的转储信息表;
转码步骤3:按上述预设格式依次转码该获取的转储信息表中的每一条转储信息所对应的视频文件,并根据转码结果更新该视频文件的转储状态信息为转码成功或转码失败;以及
响应于完成转码步骤3,重复上述转码步骤1至3。
在上述视频转储方法的一实施例中,可选的,上述转储信息表包括第一转储信息子表和第二转储信息子表;其中
响应于获取到所有视频文件的视频信息,在对应的转储信息表中记录各个视频文件的转储信息进一步包括:响应于获取到所有视频文件的视频信息,在对应的第一转储信息子表和第二转储信息子表中分别记录各个视频文件的转储信息;
上述导入步骤进一步包括:基于上述第一转储信息子表,将上述转储状态信息为扫描完成的视频文件导入上述本地存储器,并在上述第一转储信息子表中更新上述转储状态信息;
上述转码步骤进一步包括:基于上述第一转储信息子表,按预设格式转码上述转储状态信息为导入成功的视频文件,响应于转码成功,在上述第二转储信息子表中更新上述转储状态信息为转码成功,并在上述第一转储信息子表中删除对应的转储信息;
上述上传步骤包括:基于上述第二转储信息子表,将上述转储状态信息为转码成功的视频文件上传至上述服务器。
在上述视频转储方法的一实施例中,可选的,响应于存在至少一个移动存储设备,逐一处理各个移动存储设备的上传步骤,包括:
上传步骤1:读取各个移动存储设备的第二转储信息子表,判断是否存在每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤2:响应于存在至少一张每一条转储状态信息均为转码成功的第二转储信息子表,获取其中一张每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤3:依次将该获取的第二转储信息子表中的每一条转储信息所对应的视频文件上传至上述服务器;以及
响应于完成上传步骤3,重复上述上传步骤1至3。
在上述视频转储方法的一实施例中,可选的,上述上传步骤3进一步包括:依次将每一条转储状态信息为转码成功的视频文件上传至上述服务器,并根据上传结果在上述第二转储信息子表中将该视频文件的转储状态信息更新为上传成功或上传失败。
在上述视频转储方法的一实施例中,可选的,上述上传步骤3还包括:
响应于该视频文件的转储状态信息为上传成功,在上述第二转储信息子表中删除该视频文件对应的转储信息,并在上述本地存储器中删除该视频文件;
响应于该视频文件的转储状态信息为上传失败,重复将该视频文件上传至上述服务器直至在预定次数范围内上传成功,或者重复次数超出预定次数范围,输出报错信息;
响应于上述第二转储信息子表中不存在转储信息,判断完成上述上传步骤3。
在上述视频转储方法的一实施例中,可选的,其特征在于,上述转储信息表存储在SQlite数据库中。
本发明还提供了一种视频转储装置,具体包括:
本地存储器;和
与上述本地存储器耦接的处理器,上述处理器配置为:
执行扫描步骤、导入步骤、转码步骤以及上传步骤;其中,对于各个外接的移动存储设备,
执行上述扫描步骤包括:扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息,响应于获取到所有视频文件的视频信息,在存储在上述本地存储器的对应的转储信息表中记录各个视频文件的转储信息,上述转储信息包括视频文件的视频信息和初始值为扫描完成的转储状态信息;
执行上述导入步骤包括:将上述转储状态信息为扫描完成的视频文件导入上述本地存储器,并根据导入结果更新上述转储状态信息;
上述转码步骤包括:按预设格式转码上述转储状态信息为导入成功的视频文件,并根据转码结果更新上述转储状态信息;
上述上传步骤包括:将上述转储状态信息为转码成功的视频文件上传至服务器。
在上述视频转储装置的一实施例中,可选的,上述处理器在第一线程执行各个移动存储设备的扫描步骤和导入步骤,上述处理器在第二线程执行各个移动存储设备的转码步骤,上述处理器在第三线程执行各个移动存储设备的上传步骤;其中
响应于存在多个移动存储设备,上述第一线程、上述第二线程和上述第三线程并行。
在上述视频转储装置的一实施例中,可选的,响应于存在至少一个移动存储设备,上述处理器并行处理所有移动存储设备的扫描步骤和导入步骤;其中,对于各个移动存储设备,
上述处理器将上述转储状态信息为扫描完成的视频文件导入本地存储器进一步包括:响应于判断出上述转储信息表中存在至少一条转储状态信息为扫描完成的转储信息,依次将各条转储状态信息为扫描完成的视频文件导入上述本地存储器;
上述处理器根据导入结果更新上述转储状态信息进一步包括:根据导入结果将各条转储状态信息更新为导入成功或导入失败。
在上述视频转储装置的一实施例中,可选的,对于各个移动存储设备,上述处理器执行上述导入步骤还包括:响应于该移动存储设备中的所有视频文件均为导入成功,格式化该移动存储设备。
在上述视频转储装置的一实施例中,可选的,对于各个移动存储设备,
上述处理器扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息进一步包括:获取该移动存储设备中的视频文件列表,上述视频文件列表包含各个视频文件的文件名和存放路径,判断各个视频文件的文件名和存放路径是否合法,以及获取各个合法视频文件的视频信息;
上述处理器在对应的转储信息表中记录各个视频文件的转储信息进一步包括:响应于获取到所有合法视频文件的视频信息,在对应的转储信息表中记录各个合法视频文件的转储信息。
在上述视频转储装置的一实施例中,可选的,响应于存在至少一个移动存储设备,上述处理器逐一处理各个移动存储设备的转码步骤,包括:
转码步骤1:读取各个移动存储设备的转储信息表,判断是否存在每一条转储状态信息均为导入成功的转储信息表;
转码步骤2:响应于存在至少一张每一条转储状态信息均为导入成功的转储信息表,获取其中一张每一条转储状态信息均为导入成功的转储信息表;
转码步骤3:按上述预设格式依次转码该获取的转储信息表中的每一条转储信息所对应的视频文件,并根据转码结果更新该视频文件的转储状态信息为转码成功或转码失败;以及
响应于完成转码步骤3,重复上述转码步骤1至3。
在上述视频转储装置的一实施例中,可选的,存储在上述本地存储器中的上述转储信息表包括第一转储信息子表和第二转储信息子表;其中
响应于获取到所有视频文件的视频信息,上述处理器在对应的转储信息表中记录各个视频文件的转储信息进一步包括:响应于获取到所有视频文件的视频信息,在对应的第一转储信息子表和第二转储信息子表中分别记录各个视频文件的转储信息;
上述处理器执行上述导入步骤进一步包括:基于上述第一转储信息子表,将上述转储状态信息为扫描完成的视频文件导入上述本地存储器,并在上述第一转储信息子表中更新上述转储状态信息;
上述处理器执行上述转码步骤进一步包括:基于上述第一转储信息子表,按预设格式转码上述转储状态信息为导入成功的视频文件,响应于转码成功,在上述第二转储信息子表中更新上述转储状态信息为转码成功,并在上述第一转储信息子表中删除对应的转储信息;
上述处理器执行上述上传步骤包括:基于上述第二转储信息子表,将上述转储状态信息为转码成功的视频文件上传至上述服务器。
在上述视频转储装置的一实施例中,可选的,响应于存在至少一个移动存储设备,上述处理器逐一处理各个移动存储设备的上传步骤,包括:
上传步骤1:读取各个移动存储设备的第二转储信息子表,判断是否存在每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤2:响应于存在至少一张每一条转储状态信息均为转码成功的第二转储信息子表,获取其中一张每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤3:依次将该获取的第二转储信息子表中的每一条转储信息所对应的视频文件上传至上述服务器;以及
响应于完成上传步骤3,重复上述上传步骤1至3。
在上述视频转储装置的一实施例中,可选的,上述处理器执行上述上传步骤3进一步包括:依次将每一条转储状态信息为转码成功的视频文件上传至上述服务器,并根据上传结果在上述第二转储信息子表中将该视频文件的转储状态信息更新为上传成功或上传失败。
在上述视频转储装置的一实施例中,可选的,上述处理器执行上述上传步骤3还包括:
响应于该视频文件的转储状态信息为上传成功,在上述第二转储信息子表中删除该视频文件对应的转储信息,并在上述本地存储器中删除该视频文件;
响应于该视频文件的转储状态信息为上传失败,重复将该视频文件上传至上述服务器直至在预定次数范围内上传成功,或者重复次数超出预定次数范围,输出报错信息;
响应于上述第二转储信息子表中不存在转储信息,判断完成上述上传步骤3。
在上述视频转储装置的一实施例中,可选的,上述转储信息表存储在上述本地存储器中的SQlite数据库中。
本发明还提供了一种计算机可读介质,其上存储有计算机可读指令,上述计算机可读指令在由处理器执行时实施如上述视频转储方法的任意一项实施例中的步骤。
根据本发明所提供的视频转储方法及视频转储装置,能够将移动存储设备中的视频文件自动导入到转储装置,并自动执行转码上传操作,无需人工干预,并且通过转储信息表以及其中的转储状态信息支持断点续传功能,即在对一个批次的视频进行转储的过程中,由于异常情况如客户机断电、人工强制关闭软件、网络中断等造成转储过程中断,能够在转储信息表中自动保存当前的转储状态和进度,在异常问题得到解决后,能够接续上次的转储进度继续进行转储,不需要从头开始整个转储过程,也无须人工干预,从而有效提升了视频转储的效率。
附图说明
在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本发明的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。
图1示出了根据本发明所提供的视频转储方法的流程图。
图2示出了本发明所提供的视频转储方法中扫描导入步骤的流程图。
图3示出了本发明所提供的视频转储方法中转码步骤的流程图。
图4示出了本发明所提供的视频转储方法中上传步骤的流程图。
图5示出了本发明所提供的视频转储装置的结构示意图。
具体实施方式
给出以下描述以使得本领域技术人员能够实施和使用本发明并将其结合到具体应用背景中。各种变型、以及在不同应用中的各种使用对于本领域技术人员将是容易显见的,并且本文定义的一般性原理可适用于较宽范围的实施例。由此,本发明并不限于本文中给出的实施例,而是应被授予与本文中公开的原理和新颖性特征相一致的最广义的范围。
在以下详细描述中,阐述了许多特定细节以提供对本发明的更透彻理解。然而,对于本领域技术人员显而易见的是,本发明的实践可不必局限于这些具体细节。换言之,公知的结构和器件以框图形式示出而没有详细显示,以避免模糊本发明。
请读者注意与本说明书同时提交的且对公众查阅本说明书开放的所有文件及文献,且所有这样的文件及文献的内容以参考方式并入本文。除非另有直接说明,否则本说明书(包含任何所附权利要求、摘要和附图)中所揭示的所有特征皆可由用于达到相同、等效或类似目的的可替代特征来替换。因此,除非另有明确说明,否则所公开的每一个特征仅是一组等效或类似特征的一个示例。
注意,在使用到的情况下,标志左、右、前、后、顶、底、正、反、顺时针和逆时针仅仅是出于方便的目的所使用的,而并不暗示任何具体的固定方向。事实上,它们被用于反映对象的各个部分之间的相对位置和/或方向。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
注意,在使用到的情况下,进一步地、较优地、更进一步地和更优地是在前述实施例基础上进行另一实施例阐述的简单起头,该进一步地、较优地、更进一步地或更优地后带的内容与前述实施例的结合作为另一实施例的完整构成。在同一实施例后带的若干个进一步地、较优地、更进一步地或更优地设置之间可任意组合的组成又一实施例。
以下结合附图和具体实施例对本发明作详细描述。注意,以下结合附图和具体实施例描述的诸方面仅是示例性的,而不应被理解为对本发明的保护范围进行任何限制。
首先请参考图1来理解本发明所提供的视频转储方法,如图1所示出的,对于各个移动存储设备,视频转储方法包括步骤S110扫描步骤:扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息;响应于获取到所有视频文件的视频信息,在对应的转储信息表中记录各个视频文件的视频信息和转储状态信息为转储信息;步骤S120导入步骤:将转储状态信息为扫描完成的视频文件导入本地存储器,并根据导入结果更新转储状态信息;步骤S130转码步骤:按预设格式转码转储状态信息为导入成功的视频文件,并根据转码结果更新转储状态信息;以及步骤S140上传步骤:将转储状态信息为转码成功的视频文件上传至服务器。
具体的,本发明所提供的视频转储方法在扫描移动存储设备(例如:常见的U盘等)时,会解析所有视频文件对应的视频信息(机车车型车号、录制时间、视频通道号、文件源路径、文件目标路径等),并将这些视频信息以数据表记录的形式存入SQLite数据库的数据表中,同时为每条视频信息记录维护一个视频处理状态字段(即转储状态信息),该字段描述各个视频文件当前的处理状态,包括:扫描、导入成功、导入失败、转码成功、转码失败、上传成功、上传失败等,视频文件每完成一个环节的处理,本发明所提供的视频转储方法便会在数据表中实时更新相应的处理状态。
若在转储期间发生视频转储方法中断执行、网络中断、转储客户装置断电等问题,造成转储过程中断,在重新开始视频转储方法后,能从数据库的转储信息表中获取各个视频文件当前的处理状态,从而保证能够接续重启前的转储进度继续进行转储。
出于提高效率的考量,本发明所提供的视频转储方法分别有三个处理线程并行执行。其中,在第一线程处理扫描和导入步骤,在第二线程处理转码步骤,在第三线程处理上传步骤。
对于第一线程所处理的扫描和导入步骤而言,可以同时处理多个批次的视频,在本发明中,批次指代一个移动存储设备中的所有视频文件,也就是说,多个移动存储设备的视频文件的扫描与导入步骤是在第一线程并行处理的。对于第二线程和第三线程而言,各个线程每次仅处理一个批次的视频。
各个视频转储处理线程通过SQLite数据库中的转储信息表来进行交互,转储信息表中每条记录对应一个视频文件,每条记录的包含了多个字段:视频文件路径、视频文件名称、通道号、机车型号、机车号、处理状态(即转储状态信息)等。
图2-图4分别示出了本发明所提供的第一线程、第二线程和第三线程处理扫描导入步骤、转码步骤以及上传步骤的示意图。
首先,请参考图2来进一步理解上述的步骤S110和步骤S120。对于第一线程而言,在步骤S201响应于监测到外接有移动存储设备,执行步骤S202获取该移动存储设备视频列表。在此处,可以理解的是,由于在第一线程,多个移动存储设备之间是并行处理的,只要有移动存储设备***转储装置,对于该移动存储设备就可以执行步骤S201-步骤S212的扫描导入步骤。
在步骤S202中,通过获取移动存储设备的视频列表,能够获取到存储在移动存储设备中所有视频文件的相关信息。随后,在步骤S203中,判断存储在移动存储设备中的视频文件是否包含合法视频。对于所拍摄的机车的行车记录视频而言,其视频文件的命名方式以及存放的目录结构都有规范要求,不合规范的视频都会被判定为非法文件。只有当移动存储设备中存在有合法视频,才会执行步骤S204,解析视频文件的视频信息。如上所描述的视频文件的视频信息可以包括机车车型车号、录制时间、视频通道号、文件源路径、文件目标路径等等。
随后,在步骤S205中,将这些视频信息统一转入转储信息表中。更为具体的,在一实施例中,可以在SQLite数据库预设转储信息表,响应于在步骤S201中感应到外接了移动存储设备,并且在步骤S204解析了所有视频文件的视频信息后,会统一将所有视频文件的视频信息同时存入对应的转储信息表中,以保证该移动存储设备的所有合法视频文件均在转储信息表中有记录。同时对于存储在转储信息表中的每一条转储信息,进一步包括视频文件的视频信息和转储状态信息。在步骤S205中,一并更新各个视频文件的转储状态信息为扫描完成。
也就是说,对于预先存储在SQLite数据库中的转储信息表而言,在执行步骤S205之后,其中要么包含有对应移动存储设备的所有视频文件的转储信息(包含有视频信息和显示为扫描完成的转储状态信息),要么其中没有关于该移动存储设备的任何信息,表征扫描失败。
在一实施例中,可以理解的是,预先在SQLite数据库中预设一张转储信息总表,所有移动存储设备的视频文件的视频信息都存放在一张表中,通过设置盘符,能够根据相同的盘符从该转储信息总表中提取出多张对应于不同移动存储设备的子表,也就是可以认为具有同一盘符信息的转储信息组成对应于一个移动存储设备的子表。
响应于完成了步骤S205,即可以认为完成了整个扫描步骤,随即执行导入步骤。具体的,导入步骤可以包括,在步骤S206中,逐一提取各个视频文件的转储状态信息,当存在转储状态信息为扫描完成的视频文件,则执行步骤S207,将该视频文件导入到本地存储器。可以理解的是,在第一线程,虽然多个移动存储设备之间的扫描导入步骤是并行处理的,但是就一个移动存储设备内部的视频文件而言,其导入步骤是串行处理的。
在执行步骤S207后,进一步需要执行步骤S208:判断导入是否成功,响应于导入成功,在步骤S209中更新转储状态信息为导入成功,否则,在步骤S210中更新转储状态信息为导入失败。
进一步的,响应于在步骤S211中判断出所有的视频文件均已导入完成,即所有视频文件的转储状态信息为导入成功或者导入失败,或者说,所有视频文件的转储状态信息中不存在扫描完成的状态,则认为所有视频完成了导入,则在步骤S212,结束该批次的扫描导入工作。
在一实施例中,对于各个移动存储设备,导入步骤还包括:响应于该移动存储设备中的所有视频文件的转储状态信息均为导入成功,格式化该移动存储设备,从而能够尽快将该移动存储设备中转出来,以供下次使用。在上述实施例中,在导入步骤中将移动存储设备格式化后,还包括在移动存储设备存入指定的授权文件。授权文件是指机车视频录制设备所需要的文件,机车视频录制设备识别到***的移动存储设备中存在指定格式的授权文件时,会依据授权文件中的配置信息,主动将录制的视频文件存入该移动存储设备中。
在另一实施例中,响应于存在导入失败的视频信息,本发明所提供的视频转储方法还包括将该导入失败的视频信息提交至服务器,以供工作人员排查相关问题。需要注意的是,在本发明的语境中,上传是指将转码成功后的视频文件以及视频信息存储在服务器的预设区域,以供工作人员正常工作使用。有别于本申请语境中的上传,上述提交至服务器指向将存在问题的数据存储在服务器的另一预设区域,以专门供工作人员排查错误。
响应于已经将导入失败的视频信息的相关数据提交至服务器,将该条视频信息及其相关的数据从视频转储装置的本地存储器的视频转储表中删除。进一步的,响应于存在导入失败的视频信息,可以选择不对移动存储设备进行格式化操作,以便存在工作人员找回无法成功导入的视频文件的相关数据。
请参考图3来进一步理解本发明所提供的视频转储方法中的步骤S130转码步骤,响应于步骤S301开始整个转码步骤。首先,执行步骤S302,读取数据库,具体的,是指读取存储在数据库中的各个移动存储设备所对应的转储信息表。
在步骤S303中判断是否存在导入完成的批次,需要注意的是,一个移动存储设备里面的所有视频为一个批次,一个批次中的视频文件有可能只有几个,也有可能有几百个。一台视频转储装置存在多个USB接口,可同时***多个U盘(即移动存储设备),转储装置能够同时扫描并导入多个U盘,在扫描阶段就已经把所有视频信息记录存入了数据库中,并且置为扫描状态,只有视频文件从U盘拷贝到转储装置时,相应的数据库记录才会被置为导入完成状态。当其中一个U盘中所有的视频完成了导入,就相当于这个批次的视频完成了导入。这个批次的视频才会进入下一个流程“转码”。在步骤S303中,对于各个移动存储设备的转储信息表,依次判断该转储信息表中的各条转储状态信息是否均为导入成功,响应于该转储信息表中的每一条转储状态信息均为导入成功,判断该转储信息表为每一条转储状态信息均为导入成功的转储信息表,则认为存在导入成功的批次。
可以理解的是,由于在导入步骤中,将导入失败的视频信息从转储信息表中删除,因此,对于此处可以通过判断所有的转储状态信息均为导入成功来判断该批次已经完成了导入。
响应于判断出存在导入完成的批次,执行步骤S304,获取其中一个批次的转储信息表。由于扫描和导入、转码、上传三个环节是并行执行的,且效率不一致,会存在转码很慢,但是已经有多个U盘的视频已经完成了导入,都在等待被转码的现象,但每次转码时都是一个批次一个批次的转码,所以会存在“获取其中一个批次的视频信息”的步骤S304。
之后执行步骤S305,提取转储状态信息,如上所描述的,在执行步骤S305之前,转储状态信息应当仅为导入成功,为了进一步保证上述方法的鲁棒性,在步骤S306中仍然逐条判断各个视频文件的判断转储状态信息是否是导入成功。
响应于在步骤S306中判断出该视频文件对应的转储状态信息为导入成功,执行步骤S307:按预定格式转码该视频文件。
进一步的,执行步骤S307之后,还需要进一步执行步骤S308,判断转码是否成功。响应于在步骤S308中判断出转码成功,则执行步骤S309,更新转储状态信息为转码成功,否则执行步骤S310,更新转储状态信息为转码失败。
进一步的,响应于在步骤S311中判断出所有的视频文件均已转码完成,即所有视频文件的转储状态信息为转码成功或者转码失败,或者说,所有视频文件的转储状态信息中不存在导入成功或者导入失败的状态,则认为所有视频完成了转码,则在步骤S312,结束该批次的转码工作。
在上述的实施例中,响应于转码失败,本发明所提供的视频转储方法还包括将该转码失败的视频信息以及转码前的原视频文件提交至服务器,以供工作人员排查相关问题。需要注意的是,在本发明的语境中,上传是指将转码成功后的视频文件以及视频信息存储在服务器的预设区域,以供工作人员正常工作使用。有别于本申请语境中的上传,上述提交至服务器指向将存在问题的数据存储在服务器的另一预设区域,以专门供工作人员排查错误。
响应于已经将转码失败的视频信息的相关数据提交至服务器,将该条视频信息从视频转储装置的本地存储器的视频转储表中删除,将该条视频信息对应的视频文件从视频转储装置的本地存储器中删除。
请参考图4来进一步理解本发明所提供的视频转储方法中的步骤S140上传步骤,响应于步骤S401开始整个上传步骤。首先,执行步骤S402,读取数据库,具体的,是指读取存储在数据库中的各个移动存储设备所对应的转储信息表。
在步骤S403中判断是否存在转码完成的批次,需要注意的是,一个移动存储设备里面的所有视频为一个批次,一个批次中的视频文件有可能只有几个,也有可能有几百个。一台视频转储装置存在多个USB接口,可同时***多个U盘(即移动存储设备)。当其中一个U盘中所有的视频完成了转码,就相当于这个批次的视频完成了转码。这个批次的视频才会进入下一个流程“上传”。在步骤S403中,对于各个移动存储设备的转储信息表,依次判断该转储信息表中的各条转储状态信息是否均为转码成功,响应于该转储信息表中的每一条转储状态信息均为转码成功,判断该转储信息表为每一条转储状态信息均为转码完成的转储信息表,则认为存在转码完成的批次。
可以理解的是,由于在转码步骤中,将转码失败的视频信息从转储信息表中删除,因此,对于此处可以通过判断所有的转储状态信息均为转码成功来判断该批次已经完成了转码。
响应于判断出存在转码完成的批次,执行步骤S304,获取其中一个批次的转储信息表。由于扫描和导入、转码、上传三个环节是并行执行的,且效率不一致,会存在上传很慢,但是已经有多个U盘的视频已经完成了转码,都在等待被上传的现象,但每次上传时都是一个批次一个批次的转码,所以会存在“获取其中一个批次的视频信息”的步骤S404。
之后执行步骤S405,逐一将各个视频文件上传至服务器。可以理解的是,此处的上传是指将转码成功后的视频文件以及视频信息存储在服务器的预设区域,以供工作人员正常工作使用。如果存在没有导入成功或者没有转码成功的视频文件,系将其相关数据提交存储在服务器的另一预设区域,以便服务器的工作人员对出现问题的视频文件进行排查。
进一步的,执行步骤S405之后,还需要进一步执行步骤S406,判断上传是否成功。响应于在步骤S406中判断出上传成功,则执行步骤S407,更新转储状态信息为上传成功,否则执行步骤S408,更新转储状态信息为上传失败,并且对该上传失败的文件进行重复上传,直至上传成功,或者由于重复次数超出预定次数,执行步骤S409,输出报错信息。由于重复上传次数已经超出预定次数,由此可以推断造成上传失败的原因可能是网络错误,因此,在多次常识上传均失败后,暂停上传并报错,以使用户排查导致上传失败的原因。
进一步的,响应于在步骤S410中判断出所有的视频文件均已上传完成,即所有视频文件的转储状态信息为上传成功,或者说,所有视频文件的转储状态信息中不存在转码成功或者转码失败的状态,则认为所有视频完成了上传,则在步骤S411,结束该批次的上传工作。
较优的,在本发明所提供的另一实施例中,转储信息表包括第一转储信息子表和第二转储信息子表;其中响应于获取到所有视频文件的视频信息,在对应的转储信息表中记录各个视频文件的转储信息进一步包括:响应于获取到所有视频文件的视频信息,在对应的第一转储信息子表和第二转储信息子表中分别记录各个视频文件的转储信息。
上述导入步骤S120进一步包括:基于第一转储信息子表,将转储状态信息为扫描完成的视频文件导入所述本地存储器,并在第一转储信息子表中更新转储状态信息。
上述转码步骤S130进一步包括:基于第一转储信息子表,按预设格式转码所述转储状态信息为导入成功的视频文件,响应于转码成功,在第二转储信息子表中更新所述转储状态信息为转码成功,并在第一转储信息子表中删除对应的转储信息。在该实施例中,如图3中的步骤S311可以通过判断第一转储信息子表是否为空表的方式判断所有视频文件是否均转码完成。在该实施例中,通过完成转码步骤,第一转储信息子表被置空,可以用以下一次对应的移动存储设备扫描时导入视频文件的转储信息。
上述上传步骤S140进一步包括:基于第二转储信息子表,将所述转储状态信息为转码成功的视频文件上传至所述服务器。也就是说,在如图4所示出的步骤S403中,系根据第二转储信息子表来判断是否存在转码成功的批次。
进一步的,在上述实施例中,较优地,响应于在第二转储信息子表中存在转储状态信息为上传成功的转储信息,在第二转储信息子表中删除该转储信息,并在本地存储器中删除该转储信息对应的视频文件,在该实施例中,通过成功上传的步骤,第二转储信息子表基本被置空,可以用以下一次对应的移动存储设备扫描时导入视频文件的转储信息,同时本地存储器被清理,为下一次移动存储设备导入视频文件提供存储空间。
在上述的实施例中,如图4所示出的步骤S410可以通过判断第二转储信息子表中不存在转储信息来判断所有视频文件已经上传完成。
据此,已经基于图2-图4具体描述了本发明所提供的视频转储方法中具体步骤的具体实施方式。可以理解的是,本发明中的转储信息表均存储在数据库中,尤其,在一实施例中,上述数据库为SQLite数据库。SQLite是一种轻型的数据库,无需安装配置,操作简单,易于集成到应用程序中。在其他的实施例中,也可以根据需要选择其他数据库,例如access数据库。
本发明所提供的视频转储方法对视频的每次操作所更新的状态信息都实时写入了数据库中而不是内存中,能够保证即使软件关闭,这些信息依然不会丢失。这样,当上述视频转储方法被不正常中断、又恢复后,会首先读取数据库中各文件已经完成的处理环节,再依此接着下一个环节的操作,不用从头开始去处理视频文件。
举例而言,如果在读取数据库中的转储信息表时发现某一转储信息表中没有任何转储信息,且检测到该转储信息表所对应的移动存储设备还外接在视频转储装置上,则说明该转储信息表对应的移动存储设备未完成扫描步骤。
如果在读取数据库中的转储信息表时发现某一转储信息表中存有转储信息,并且该转储信息表中存在转储状态信息为扫描完成的转储信息,则说明该转储信息表对应的批次还未完成导入。
在上述优选的实施例中,由于存在第一转储信息子表和第二转储信息子表,只要在第一转储信息子表中更新转储状态信息为转码成功,则该条转储状态信息对应的转储信息将从第一转储信息子表中删除。如果在读取数据库中的转储信息表时,发现某一张第一转储信息表中存储的转储状态信息均为导入成功,则说明该转储信息表对应的批次处于转码步骤。
在上述优选的实施例中,只要判断出第二转储信息子表中的全部转储状态信息均为转码成功,则说明该转储信息表对应的批次处于上传步骤。
也就是说,根据本发明所提供的视频转储方法,利用SQLite数据库存储视频文件的所有相关属性,使得即使在与服务器断开连接的情况下,也能正常执行扫描、导入、转码的转储操作。本发明使用数据表中的视频文件的转储状态信息字段保存视频文件当前的转储状态,若转储过程中因为各种原因造成转储中断,转储重新开始后能够有效恢复到关闭前的转储状态和转储进度,无需从头开始转储。本发明在扫描视频时,会比对移动存储设备和本地存储器的文件,避免视频文件的重复导入现象,提升转储效率。本发明能够跟踪每个批次视频文件的转储过程中存在的问题。
据此,已经描述了本发明所提供的视频转储方法。本发明还提供了一种视频转储装置,请参考图5,图5示出了视频转储装置的示意图。如图5所示,视频转储装置500包括处理器510和存储器520。上述视频转储装置500的处理器510在执行存储器520上存储的计算机程序时能够实现上述所描述的视频转储方法,具体请参考上述关于视频转储方法的描述,在此不再赘述。
并且,可以理解的是,本发明所提供的存储器520对应于上述的本地存储器,系用来存储从移动存储设备中导入的视频文件,并且用来存储各个转储信息表所在的数据库,从而能够保证转储信息表中的各种状态信息不会丢失。即使视频转储方法被迫中断,也无需从头开始相关操作,能够避免重复执行相同操作,提高转储效率。
根据本发明所提供的视频转储方法及视频转储装置,能够将移动存储设备中的视频文件自动导入到转储装置,并自动执行转码上传操作,无需人工干预,并且通过转储信息表以及其中的转储状态信息支持断点续传功能,即在对一个批次的视频进行转储的过程中,由于异常情况如客户机断电、人工强制关闭软件、网络中断等造成转储过程中断,能够在转储信息表中自动保存当前的转储状态和进度,在异常问题得到解决后,能够接续上次的转储进度继续进行转储,不需要从头开始整个转储过程,也无须人工干预,从而有效提升了视频转储的效率。
至此,已经描述了本发明提供的视频转储方法及装置。本发明还提供了一种计算机存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时实现如上述视频转储方法的步骤。具体请参考上述关于视频转储方法的描述,在此不再赘述。
结合本文所公开的实施例描述的各种解说性逻辑模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。
结合本文中公开的实施例描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取和写入信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在用户终端中。在替换方案中,处理器和存储介质可作为分立组件驻留在用户终端中。
在一个或多个示例性实施例中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现为计算机程序产品,则各功能可以作为一条或更多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,其包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的合意程序代码且能被计算机访问的任何其它介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其它远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据,而碟(disc)用激光以光学方式再现数据。上述的组合也应被包括在计算机可读介质的范围内。
提供之前的描述是为了使本领域中的任何技术人员均能够实践本文中所描述的各种方面。但是应该理解,本发明的保护范围应当以所附权利要求书为准,而不应被限定于以上所解说实施例的具体结构和组件。本领域技术人员在本发明的精神和范围内,可以对各实施例进行各种变动和修改,这些变动和修改也落在本发明的保护范围之内。
Claims (21)
1.一种视频转储方法,其特征在于,包括扫描步骤、导入步骤、转码步骤以及上传步骤;其中,对于各个移动存储设备,
所述扫描步骤包括:扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息,响应于获取到所有视频文件的视频信息,在对应的第一转储信息子表和第二转储信息子表中分别记录各个视频文件的转储信息,所述转储信息包括视频文件的视频信息和初始值为扫描完成的转储状态信息;
所述导入步骤包括:基于所述第一转储信息子表,将所述转储状态信息为扫描完成的视频文件导入本地存储器,并根据导入结果在所述第一转储信息子表中更新所述转储状态信息;
所述转码步骤包括:基于所述第一转储信息子表,按预设格式转码所述转储状态信息为导入成功的视频文件,响应于转码成功,在所述第二转储信息子表中更新所述转储状态信息为转码成功,并在所述第一转储信息子表中删除对应的转储信息,以根据转码结果更新所述转储状态信息;
所述上传步骤包括:基于所述第二转储信息子表,将所述转储状态信息为转码成功的视频文件上传至服务器。
2.如权利要求1所述的视频转储方法,其特征在于,在第一线程执行各个移动存储设备的扫描步骤和导入步骤,在第二线程执行各个移动存储设备的转码步骤,在第三线程执行各个移动存储设备的上传步骤;其中
响应于存在多个移动存储设备,所述第一线程、所述第二线程和所述第三线程并行。
3.如权利要求1或2所述的视频转储方法,其特征在于,响应于存在至少一个移动存储设备,并行处理所有移动存储设备的扫描步骤和导入步骤;其中,对于各个移动存储设备,
将所述转储状态信息为扫描完成的视频文件导入本地存储器进一步包括:响应于判断出所述第一转储信息子表中存在至少一条转储状态信息为扫描完成的转储信息,依次将各条转储状态信息为扫描完成的视频文件导入所述本地存储器;
根据导入结果更新所述转储状态信息进一步包括:根据导入结果将各条转储状态信息更新为导入成功或导入失败。
4.如权利要求3所述的视频转储方法,其特征在于,对于各个移动存储设备,所述导入步骤还包括:响应于该移动存储设备中的所有视频文件均导入成功,格式化该移动存储设备。
5.如权利要求3所述的视频转储方法,其特征在于,对于各个移动存储设备,
扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息进一步包括:获取该移动存储设备中的视频文件列表,所述视频文件列表包含各个视频文件的文件名和存放路径,判断各个视频文件的文件名和存放路径是否合法,以及获取各个合法视频文件的视频信息;
在对应的第一转储信息子表和第二转储信息子表中分别记录各个视频文件的转储信息进一步包括:响应于获取到所有合法视频文件的视频信息,在对应的第一转储信息子表和第二转储信息子表中分别记录各个合法视频文件的转储信息。
6.如权利要求1或2所述的视频转储方法,其特征在于,响应于存在至少一个移动存储设备,逐一处理各个移动存储设备的转码步骤,包括:
转码步骤1:读取各个移动存储设备的第一转储信息子表,判断是否存在每一条转储状态信息均为导入成功的第一转储信息子表;
转码步骤2:响应于存在至少一张每一条转储状态信息均为导入成功的第一转储信息子表,获取其中一张每一条转储状态信息均为导入成功的第一转储信息子表;
转码步骤3:按所述预设格式依次转码该获取的第一转储信息子表中的每一条转储信息所对应的视频文件,并根据转码结果更新该视频文件的转储状态信息为转码成功或转码失败;以及
响应于完成转码步骤3,重复所述转码步骤1至3。
7.如权利要求1或2所述的视频转储方法,其特征在于,响应于存在至少一个移动存储设备,逐一处理各个移动存储设备的上传步骤,包括:
上传步骤1:读取各个移动存储设备的第二转储信息子表,判断是否存在每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤2:响应于存在至少一张每一条转储状态信息均为转码成功的第二转储信息子表,获取其中一张每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤3:依次将该获取的第二转储信息子表中的每一条转储信息所对应的视频文件上传至所述服务器;以及
响应于完成上传步骤3,重复所述上传步骤1至3。
8.如权利要求7所述的视频转储方法,其特征在于,
所述上传步骤3进一步包括:依次将每一条转储状态信息为转码成功的视频文件上传至所述服务器,并根据上传结果在所述第二转储信息子表中将该视频文件的转储状态信息更新为上传成功或上传失败。
9.如权利要求7所述的视频转储方法,其特征在于,所述上传步骤3还包括:
响应于该视频文件的转储状态信息为上传成功,在所述第二转储信息子表中删除该视频文件对应的转储信息,并在所述本地存储器中删除该视频文件;
响应于该视频文件的转储状态信息为上传失败,重复将该视频文件上传至所述服务器直至在预定次数范围内上传成功,或者重复次数超出预定次数范围,输出报错信息;
响应于所述第二转储信息子表中不存在转储信息,判断完成所述上传步骤3。
10.如权利要求1-9中任意一项所述的视频转储方法,其特征在于,所述转储信息表存储在SQlite数据库中。
11.一种视频转储装置,其特征在于,包括:
本地存储器;和
与所述本地存储器耦接的处理器,所述处理器配置为:
执行扫描步骤、导入步骤、转码步骤以及上传步骤;其中,对于各个外接的移动存储设备,
执行所述扫描步骤包括:扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息,响应于获取到所有视频文件的视频信息,在存储在所述本地存储器的对应的第一转储信息子表和第二转储信息子表中分别记录各个视频文件的转储信息,所述转储信息包括视频文件的视频信息和初始值为扫描完成的转储状态信息;
执行所述导入步骤包括:基于所述第一转储信息子表,将所述转储状态信息为扫描完成的视频文件导入所述本地存储器,并根据导入结果在所述第一转储信息子表中更新所述转储状态信息;
所述转码步骤包括:基于所述第一转储信息子表,按预设格式转码所述转储状态信息为导入成功的视频文件,响应于转码成功,在所述第二转储信息子表中更新所述转储状态信息为转码成功,并在所述第一转储信息子表中删除对应的转储信息,以根据转码结果更新所述转储状态信息;
所述上传步骤包括:基于所述第二转储信息子表,将所述转储状态信息为转码成功的视频文件上传至服务器。
12.如权利要求11所述的视频转储装置,其特征在于,所述处理器在第一线程执行各个移动存储设备的扫描步骤和导入步骤,所述处理器在第二线程执行各个移动存储设备的转码步骤,所述处理器在第三线程执行各个移动存储设备的上传步骤;其中
响应于存在多个移动存储设备,所述第一线程、所述第二线程和所述第三线程并行。
13.如权利要求11或12所述的视频转储装置,其特征在于,响应于存在至少一个移动存储设备,所述处理器并行处理所有移动存储设备的扫描步骤和导入步骤;其中,对于各个移动存储设备,
所述处理器将所述转储状态信息为扫描完成的视频文件导入本地存储器进一步包括:响应于判断出所述第一转储信息子表中存在至少一条转储状态信息为扫描完成的转储信息,依次将各条转储状态信息为扫描完成的视频文件导入所述本地存储器;
所述处理器根据导入结果更新所述转储状态信息进一步包括:根据导入结果将各条转储状态信息更新为导入成功或导入失败。
14.如权利要求13所述的视频转储装置,其特征在于,对于各个移动存储设备,所述处理器执行所述导入步骤还包括:响应于该移动存储设备中的所有视频文件均为导入成功,格式化该移动存储设备。
15.如权利要求13所述的视频转储装置,其特征在于,对于各个移动存储设备,
所述处理器扫描该移动存储设备以获取存储在该移动存储设备中的各个视频文件的视频信息进一步包括:获取该移动存储设备中的视频文件列表,所述视频文件列表包含各个视频文件的文件名和存放路径,判断各个视频文件的文件名和存放路径是否合法,以及获取各个合法视频文件的视频信息;
所述处理器在对应的第一转储信息子表和第二转储信息子表中分别记录各个视频文件的转储信息进一步包括:响应于获取到所有合法视频文件的视频信息,在对应的第一转储信息子表和第二转储信息子表中分别记录各个合法视频文件的转储信息。
16.如权利要求11或12所述的视频转储装置,其特征在于,响应于存在至少一个移动存储设备,所述处理器逐一处理各个移动存储设备的转码步骤,包括:
转码步骤1:读取各个移动存储设备的第一转储信息子表,判断是否存在每一条转储状态信息均为导入成功的第一转储信息子表;
转码步骤2:响应于存在至少一张每一条转储状态信息均为导入成功的第一转储信息子表,获取其中一张每一条转储状态信息均为导入成功的第一转储信息子表;
转码步骤3:按所述预设格式依次转码该获取的第一转储信息子表中的每一条转储信息所对应的视频文件,并根据转码结果更新该视频文件的转储状态信息为转码成功或转码失败;以及
响应于完成转码步骤3,重复所述转码步骤1至3。
17.如权利要求11或12所述的视频转储装置,其特征在于,响应于存在至少一个移动存储设备,所述处理器逐一处理各个移动存储设备的上传步骤,包括:
上传步骤1:读取各个移动存储设备的第二转储信息子表,判断是否存在每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤2:响应于存在至少一张每一条转储状态信息均为转码成功的第二转储信息子表,获取其中一张每一条转储状态信息均为转码成功的第二转储信息子表;
上传步骤3:依次将该获取的第二转储信息子表中的每一条转储信息所对应的视频文件上传至所述服务器;以及
响应于完成上传步骤3,重复所述上传步骤1至3。
18.如权利要求17所述的视频转储装置,其特征在于,
所述处理器执行所述上传步骤3进一步包括:依次将每一条转储状态信息为转码成功的视频文件上传至所述服务器,并根据上传结果在所述第二转储信息子表中将该视频文件的转储状态信息更新为上传成功或上传失败。
19.如权利要求17所述的视频转储装置,其特征在于,所述处理器执行所述上传步骤3还包括:
响应于该视频文件的转储状态信息为上传成功,在所述第二转储信息子表中删除该视频文件对应的转储信息,并在所述本地存储器中删除该视频文件;
响应于该视频文件的转储状态信息为上传失败,重复将该视频文件上传至所述服务器直至在预定次数范围内上传成功,或者重复次数超出预定次数范围,输出报错信息;
响应于所述第二转储信息子表中不存在转储信息,判断完成所述上传步骤3。
20.如权利要求11-19中任意一项所述的视频转储装置,其特征在于,所述转储信息表存储在所述本地存储器中的SQlite数据库中。
21.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令在由处理器执行时实施如权利要求1-10中任意一项所述视频转储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911415986.8A CN113132790B (zh) | 2019-12-31 | 2019-12-31 | 一种视频转储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911415986.8A CN113132790B (zh) | 2019-12-31 | 2019-12-31 | 一种视频转储方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113132790A CN113132790A (zh) | 2021-07-16 |
CN113132790B true CN113132790B (zh) | 2022-06-17 |
Family
ID=76769129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911415986.8A Active CN113132790B (zh) | 2019-12-31 | 2019-12-31 | 一种视频转储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113132790B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113490012B (zh) * | 2021-07-26 | 2023-06-23 | 南京炫佳网络科技有限公司 | 一种抢先注入方法、装置、服务器及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101977218A (zh) * | 2010-10-20 | 2011-02-16 | 深圳市融创天下科技发展有限公司 | 一种互联网播放文件转码方法和*** |
US8479242B1 (en) * | 2006-05-04 | 2013-07-02 | Google Inc. | Video storage and distribution |
CN105049913A (zh) * | 2015-06-30 | 2015-11-11 | 株洲南车时代电气股份有限公司 | 一种机车中车载视频数据下载存储方法 |
CN107888942A (zh) * | 2017-11-24 | 2018-04-06 | 河南蓝信软件有限公司 | 一种视频数据共享***及方法 |
CN207623957U (zh) * | 2017-11-27 | 2018-07-17 | 郑州畅想高科股份有限公司 | 一种音视频数据智能转储装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7971223B2 (en) * | 2008-03-25 | 2011-06-28 | Seachange International, Inc. | Method and system of queued management of multimedia storage |
US20170123713A1 (en) * | 2015-10-30 | 2017-05-04 | Imagine Communications Corp. | Device and process for data storage and read/write efficiency |
CN105898448A (zh) * | 2015-12-14 | 2016-08-24 | 乐视云计算有限公司 | 转码属性信息的提交方法和装置 |
CN105828117A (zh) * | 2016-03-02 | 2016-08-03 | 乐视云计算有限公司 | 一种基于用户行为分析的视频自动推送方法和装置 |
CN108583592A (zh) * | 2017-12-30 | 2018-09-28 | 西安市地下铁道有限责任公司 | 一种地铁乘务作业信息采集智能检测方法 |
JP7162288B2 (ja) * | 2018-03-23 | 2022-10-28 | 株式会社ユピテル | システム、映像記録システム及びプログラム等 |
CN108965446A (zh) * | 2018-07-27 | 2018-12-07 | 安徽安为科技有限公司 | 基于wifi站场大容量文件转储*** |
-
2019
- 2019-12-31 CN CN201911415986.8A patent/CN113132790B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8479242B1 (en) * | 2006-05-04 | 2013-07-02 | Google Inc. | Video storage and distribution |
CN101977218A (zh) * | 2010-10-20 | 2011-02-16 | 深圳市融创天下科技发展有限公司 | 一种互联网播放文件转码方法和*** |
CN105049913A (zh) * | 2015-06-30 | 2015-11-11 | 株洲南车时代电气股份有限公司 | 一种机车中车载视频数据下载存储方法 |
CN107888942A (zh) * | 2017-11-24 | 2018-04-06 | 河南蓝信软件有限公司 | 一种视频数据共享***及方法 |
CN207623957U (zh) * | 2017-11-27 | 2018-07-17 | 郑州畅想高科股份有限公司 | 一种音视频数据智能转储装置 |
Non-Patent Citations (1)
Title |
---|
机车运用信息综合联动分析***;曾佑恒等;《机车电传动》;20181110(第06期);第119-122页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113132790A (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170068614A1 (en) | System and Method for Optimizing Testing of Software Production Incidents | |
US20030030733A1 (en) | System and method for synchronization of media data | |
CN110737584A (zh) | 基于区块链的业务数据测试方法、装置及计算机设备 | |
CN111104445A (zh) | 数据同步方法、装置及设备 | |
US20090063527A1 (en) | Processing of database statements with join predicates on range-partitioned tables | |
CN108108431B (zh) | 数据同步方法和*** | |
EP2924587A1 (en) | Data processing method and device | |
JP5531583B2 (ja) | ログ出力装置、ログ出力方法、ログ出力用プログラム | |
CN105554044A (zh) | 在本地对象存储节点中同步对象的方法及装置 | |
CN113688045B (zh) | 一种二进制接口兼容性自动检查方法及装置 | |
CN113132790B (zh) | 一种视频转储方法及装置 | |
CN112445702A (zh) | 基于蚁群算法的自动化测试方法和*** | |
CN114564446A (zh) | 一种文件存储的方法、装置、***及存储介质 | |
CN114860506A (zh) | Linux文件***修复方法、***、装置及存储介质 | |
CN112818937A (zh) | Excel文件的识别方法、装置、电子设备及可读存储介质 | |
CN112799945B (zh) | 批量文件校验方法及装置 | |
CN113626232B (zh) | 一种检查服务器日志的方法、装置、设备及可读介质 | |
CN114546957A (zh) | 一种数据智能集中处理服务平台 | |
CN113902531A (zh) | 投标文件自动生成***、方法、电子设备和存储介质 | |
CN110474869B (zh) | 内外网隔离环境下的应用***升级方法及装置 | |
CN116719824A (zh) | 一种数据管理方法和相关装置 | |
CN115563211A (zh) | 数据同步方法、装置、电子设备和存储介质 | |
CN116010393A (zh) | 一种数据治理方法、***、设备和介质 | |
CN116048973A (zh) | 基于api拓展的界面测试方法、装置及设备 | |
CN112965741A (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 |