WO2017071512A1 - 一种多媒体数据的云存储、云下载方法及相关装置 - Google Patents

一种多媒体数据的云存储、云下载方法及相关装置 Download PDF

Info

Publication number
WO2017071512A1
WO2017071512A1 PCT/CN2016/102647 CN2016102647W WO2017071512A1 WO 2017071512 A1 WO2017071512 A1 WO 2017071512A1 CN 2016102647 W CN2016102647 W CN 2016102647W WO 2017071512 A1 WO2017071512 A1 WO 2017071512A1
Authority
WO
WIPO (PCT)
Prior art keywords
multimedia data
information
server
verification
user equipment
Prior art date
Application number
PCT/CN2016/102647
Other languages
English (en)
French (fr)
Inventor
吴贻刚
蔡华
周皓
Original Assignee
阿里巴巴集团控股有限公司
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 阿里巴巴集团控股有限公司 filed Critical 阿里巴巴集团控股有限公司
Publication of WO2017071512A1 publication Critical patent/WO2017071512A1/zh
Priority to US15/965,782 priority Critical patent/US20180249190A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23109Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion by placing content in organized collections, e.g. EPG data repository
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • H04N21/23473Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption by pre-encrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • H04N21/23476Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • H04N21/2396Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests characterized by admission policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25816Management of client data involving client authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client

Definitions

  • the present application relates to the field of cloud storage, and in particular to a cloud storage, cloud downloading method and related device for multimedia data.
  • the current cloud storage mode of the multimedia data includes: the push device such as the video capture device pushes the multimedia data to the server, the server locally caches the multimedia data, and stores the cached multimedia data in the cloud storage device.
  • the cloud downloading method includes: the user equipment sends a download request to the server, and the server searches for and locally caches the multimedia data from the cloud storage device, and sends the cached multimedia data to the user equipment.
  • the server when storing or downloading multimedia data from a cloud storage device, it needs to be locally cached by the server, which occupies the resources of the server.
  • the server when multiple push devices simultaneously store multimedia data to the cloud storage device, or multiple user devices simultaneously download multimedia data from the cloud storage device, the server needs to locally cache a large amount of multimedia data, which will occupy a large number of servers. Resources. The occupation of the resources of the server leads to higher hardware costs of the server.
  • the technical problem to be solved by the present application is to provide a cloud storage, a cloud downloading method, and a related device for multimedia data, so as to implement local storage and reduce the occupation when the multimedia data is stored to or downloaded from the cloud storage device.
  • Server resources which saves hardware costs.
  • the application provides a cloud storage method for multimedia data, the method comprising:
  • the push device sends an authentication request to the server, the verification request is for requesting storage rights to the push device Limit verification;
  • the pushing device receives an authentication success message sent by the server, where the verification success message includes storage authority information for a specified address of the cloud storage device;
  • the pushing device locally caches the multimedia data
  • the pushing device uses the storage authority information to store the locally cached multimedia data in the specified address of the cloud storage device.
  • the method further includes:
  • the pushing device acquires key frame information of the multimedia data, and generates an index file according to the key frame information
  • the pushing device stores the index file in the specified address of the cloud storage device by using the storage authority information.
  • the method further includes:
  • the pushing device encrypts key frames in the multimedia data before storing the locally cached multimedia data in the specified address
  • the push device adds information indicating that the key frame is encrypted in the key frame information before storing the index file in the specified address.
  • the method further includes:
  • the pushing device generates tag information, where the tag information is used to describe data features of the multimedia data;
  • the push device adds the tag information to the index file before storing the index file in the specified address.
  • the method further includes:
  • the pushing device generates signature information, and the signature information can uniquely identify a key frame of the multimedia data
  • the pushing device adds the signature information in a user-defined information segment of the multimedia data before storing the locally cached multimedia data in the specified address.
  • the pushing device locally caches the multimedia data, including:
  • the pushing device sequentially caches the multimedia data into a plurality of slice data
  • the pushing device stores the locally cached multimedia data at the specified address, including:
  • the push device stores the plurality of slice data sequentially cached in the specified address by the additional object storage mode.
  • the application provides a method for verifying rights, which is used in a cloud storage process, and the method includes:
  • the server receives an authentication request sent by the pushing device, where the verification request is used to request verification of the storage authority of the pushing device;
  • the server verifies that the push device has the storage authority
  • the server generates storage authority information for a specified address on the cloud storage device
  • the server sends an authentication success message to the pushing device, where the verification success message includes the storage authority information.
  • the verification request further indicates multimedia data to be stored by the pushing device
  • the method further includes:
  • the server determines that the cloud storage device does not have the multimedia data, generating a designated folder on the cloud storage device, and using an address corresponding to the specified folder as the designated address;
  • the server determines that the cloud storage device has a part of data in the multimedia data, the address where the partial data is located is used as the designated address.
  • the first level directory of the multimedia data corresponds to the collection device identifier
  • the second level directory corresponds to the storage time
  • the application provides a cloud downloading method for multimedia data, the method comprising:
  • the user equipment sends an authentication request to the server, where the verification request is used to request verification of the download authority of the push device;
  • the user equipment uses the download permission information to download multimedia data from the specified address.
  • the method further includes:
  • the user equipment uses the download permission information to download an index file from the specified address, where the index file includes key frame information of the multimedia data.
  • the method further includes:
  • the user equipment parses the index file to obtain the key frame information
  • the user equipment plays the multimedia data according to the key frame information.
  • the method further includes:
  • the user equipment acquires key frame encrypted information from the key frame information, the user equipment decrypts the key frame before playing the multimedia data according to the key frame information.
  • the application provides a method for verifying rights, which is used in a cloud downloading process, and the method includes:
  • the server verifies that the user equipment has the download authority
  • the server generates download permission information for a specified address on the cloud storage device
  • the server sends an authentication success message to the user equipment, where the verification success message includes the download authority information.
  • the method further includes:
  • the server acquires the latest multimedia data stored in the time, and uses the address of the latest multimedia data in the storage time as the designated address;
  • the server obtains the identifier of the data to be on-demand of the user equipment, and uses the storage address corresponding to the identifier of the data to be on-demand as the designated address.
  • the application provides a push device, including: a sending unit, a receiving unit, and a cache unit;
  • a sending unit configured to send an authentication request to the server, where the verification request is used to request verification of the storage authority of the pushing device;
  • a receiving unit configured to receive an authentication success message sent by the server, where the verification success message includes storage authority information on a specified address of the cloud storage device;
  • a cache unit for locally buffering multimedia data
  • the sending unit is further configured to use the storage authority information to store the locally cached multimedia data in the specified address of the cloud storage device.
  • the method further includes: a first generating unit, configured to acquire key frame information of the multimedia data, and generate an index file according to the key frame information;
  • the sending unit is further configured to store the index file in the specified address of the cloud storage device by using the storage authority information.
  • it also includes:
  • an encryption unit configured to encrypt a key frame in the multimedia data before the sending unit stores the locally cached multimedia data in the specified address
  • a first adding unit configured to add, in the key frame information, information indicating that the key frame is encrypted before the sending unit stores the index file in the specified address.
  • it also includes:
  • a second generating unit configured to generate tag information, where the tag information is used to describe data of the multimedia data feature
  • a second adding unit configured to add the label information to the index file before the sending unit stores the index file in the specified address.
  • it also includes:
  • a third generating unit configured to generate signature information, where the signature information can uniquely identify a key frame of the multimedia data
  • a third adding unit configured to add the signature information in a user-defined information segment of the multimedia data before the sending unit stores the locally cached multimedia data in the specified address.
  • the cache unit is specifically configured to cache the multimedia data into multiple slice data in sequence
  • the sending unit is specifically configured to store the plurality of slice data sequentially cached in the specified address by using an additional object storage manner.
  • the application provides a server, the server comprising:
  • a receiving unit configured to receive a verification request sent by the push device, where the verification request is used to request verification of the storage authority of the push device;
  • a verification unit configured to verify that the push device has the storage permission
  • a generating unit configured to generate storage authority information on a specified address on the cloud storage device after the verification unit verifies that the pushing device has the storage authority;
  • a sending unit configured to send a verification success message to the pushing device, where the verification success message includes the storage authority information.
  • the verification request further indicates multimedia data to be stored by the pushing device;
  • the server further includes: a determining unit;
  • the determining unit is further configured to: before the generating unit generates the access right information, if it is determined that the cloud storage device does not have the multimedia data, generate a designated folder on the cloud storage device, and The address corresponding to the specified folder is used as the specified address; if it is determined that the cloud storage device has a part of data in the multimedia data, the address where the partial data is located is used as the designated address.
  • the first level directory of the multimedia data corresponds to the collection device identifier
  • the second level directory corresponds to the storage time
  • the application provides a user equipment, including:
  • a sending unit configured to send an authentication request to the server, where the verification request is used to request verification of download permission of the pushing device;
  • a receiving unit configured to receive an authentication success message sent by the server, where the verification success message includes download permission information of a specified address of the cloud storage device;
  • a downloading unit configured to download multimedia data from the specified address by using the download permission information.
  • the downloading unit is further configured to: use the download permission information, to download an index file from the specified address, where the index file includes key frame information of the multimedia data.
  • it also includes:
  • a parsing unit configured to parse the index file to obtain the key frame information
  • a playing unit configured to play the multimedia data according to the key frame information.
  • the method further includes: a decrypting unit, configured to: if the key frame encrypted information is obtained from the key frame information, decrypt the key frame before playing the multimedia data according to the key frame information.
  • a decrypting unit configured to: if the key frame encrypted information is obtained from the key frame information, decrypt the key frame before playing the multimedia data according to the key frame information.
  • the application provides a server, the method comprising:
  • a receiving unit configured to receive an authentication request sent by the user equipment, where the verification request is used to request verification of the download permission of the user equipment;
  • a verification unit configured to verify that the user equipment has the download permission
  • a generating unit configured to generate download permission information for a specified address on the cloud storage device after the verification unit verifies that the user equipment has the download permission
  • a sending unit configured to send an authentication success message to the user equipment, where the verification success message includes the download permission information.
  • the method further includes: acquiring, by the acquiring unit, acquiring the latest multimedia data of the storage time if the user equipment is in a live broadcast state, and using the address of the latest multimedia data of the storage time as the designated address;
  • the user equipment is in an on-demand state, and the identifier of the data to be on-demand of the user equipment is obtained, and the storage address corresponding to the identifier of the data to be on-demand is used as the designated address.
  • the push device when the cloud storage is performed, the push device sends an authentication request to the server, so that the server verifies the storage permission of the push device. If the server verifies that the push device has the storage right, the push device receives the The verification success message sent by the server, the push device stores the multimedia data cached locally by the push device in the specified address of the cloud storage device according to the storage authority information in the verification success message.
  • the user equipment when the cloud download is performed, the user equipment sends an authentication request to the server, so that the server verifies the download permission of the user equipment. If the server verifies that the user equipment has the download right, the user equipment receives the verification succeeded by the server. The message is that the user equipment downloads the multimedia data from the specified address of the cloud storage device according to the download permission information in the verification success message.
  • the embodiment of the present application does not require the server to perform data transfer, that is, the server does not need to perform local cache, and only the server performs the permission verification, and the push device directly stores the multimedia data or is used by the user.
  • the device directly downloads multimedia data, thereby reducing the resources of the occupied server, thereby saving hardware costs.
  • the embodiment of the present application does not require the server to perform data transfer, the authority verification is still performed, and the security in the cloud storage or cloud download process is also ensured while reducing the occupied resources.
  • FIG. 1 is a schematic structural diagram of a network system
  • FIG. 2 is a signaling interaction diagram of an embodiment of a cloud storage method provided by the present application.
  • FIG. 3 is a schematic diagram of a storage directory on a cloud storage device provided by the present application.
  • FIG. 4 is a signaling interaction diagram of another embodiment of a cloud storage method provided by the present application.
  • FIG. 5 is a signaling interaction diagram of an embodiment of a cloud downloading method provided by the present application.
  • FIG. 6 is a schematic structural diagram of an embodiment of a pushing device provided by the present application.
  • FIG. 7 is a schematic structural diagram of an embodiment of a server provided by the present application.
  • FIG. 8 is a schematic structural diagram of an embodiment of a user equipment provided by the present application.
  • FIG. 9 is a schematic structural diagram of another embodiment of a server provided by the present application.
  • the multimedia data includes audio data, video data, video description data, and the like.
  • the push device 101 refers to a device for acquiring and pushing multimedia data, such as a video capture device or a device for acquiring captured video data from a video capture device.
  • the server 102 can be specifically a streaming server.
  • the cloud storage device 103 refers to a device for performing cloud storage, and may be specifically an object-based storage system (Object-Based Storage System).
  • the user equipment 104 can be specifically an electronic device such as a computer, a mobile phone, or a PAD.
  • a common cloud storage method for multimedia data includes: the push device 101 pushes multimedia data to the server 102, the server 102 locally caches the multimedia data, and stores the cached multimedia data to the cloud storage.
  • a common cloud downloading method for multimedia data includes: the user device 104 sends a download request to the server 102, and the server 102 searches for and locally caches the multimedia data from the cloud storage device 103, and sends the cached multimedia data to the user device 104.
  • the server 102 needs to perform local caching, which occupies the resources of the server.
  • the server 102 needs to locally cache a large amount of multimedia data, which will occupy the server. A lot of resources. The occupation of the resources of the server leads to higher hardware costs of the server.
  • multimedia data is easily stolen or tampered, resulting in lower security.
  • the multimedia data In the process of performing cloud storage or cloud downloading on multimedia data, if the multimedia data is relatively large, the multimedia data needs to be divided into a plurality of slice data, and the plurality of slice data are sequentially stored or downloaded. When all the slice data is not all stored or downloaded, the multimedia data cannot be accessed.
  • the embodiment of the present invention provides a cloud storage method, a cloud downloading method, and a related device for multimedia data, so as to implement storage to or from a cloud storage device, the server does not need to perform local cache, and reduces resources of the occupied server. To save hardware costs.
  • the embodiment of the present application has the following advantages: the security of the multimedia data can be improved; when the multimedia data is divided into a plurality of slice data, the stored or downloaded slice data can be accessed, that is, it is not necessary to wait for all the slice data. After all storage or download, you can access multimedia data.
  • the core idea of the embodiment of the present application includes, but is not limited to, the process of cloud storage or cloud downloading in the embodiment of the present application does not need to perform data transfer on the multimedia data through the server, but directly on the device end (pushing device or user equipment).
  • Interact with cloud storage devices to store or download multimedia data that is, to spread the processing pressure of multimedia data from the server to each device.
  • the device needs to send an authentication request to the server before the device interacts with the cloud storage device. Only the server verifies the permission of the device. After the work, the device can store or download multimedia data according to the permission information returned by the server.
  • the present application provides an embodiment of a method for cloud storage of multimedia data.
  • This embodiment is used in a push device (such as the push device 101 shown in FIG. 1), and the push device may be a video capture device.
  • the method of this embodiment includes 201, 202, 203, 204, and 205, which are specifically described below.
  • the pushing device sends an authentication request to the server, where the verification request is used to request verification of the storage authority of the pushing device.
  • the push device When the push device needs to store the multimedia data to the cloud storage device, the push device sends the verification request to the server, and the verification request enables the server to verify whether the push device has the right to store the multimedia data on the cloud storage device.
  • the verification request generally includes an identifier of the push device, so that the server can identify the push device.
  • the server may be a streaming media server (for example, the server 102 shown in FIG. 1), or may be an authentication server.
  • the server receives an authentication request sent by a push device.
  • the server verifies that the pushing device has the storage authority.
  • the server After receiving the verification request, the server determines, according to the verification request, whether the pushing device has the storage permission, and if yes, indicating that the pushing device has the permission to store the multimedia data on the cloud storage device, so executing 303 and 304 If not, it indicates that the push device does not have the right to store the multimedia data on the cloud storage device. At this time, the server may send a verification failure message to the push device, and the push device may re-initiate the verification.
  • the server generates storage authority information for a specified address on the cloud storage device.
  • the server When the server verifies that the push device has the storage right, the server allocates a specified address, and generates the storage authority information, where the storage authority information includes the specified address, an identifier of the cloud storage device, and an operation.
  • the action type is information for storing the operation, so that the push device can find the cloud storage device according to the identifier, and store data at the specified address of the cloud storage device according to the specified address and the information. .
  • the storage permission information may further include: an operation time of the pushing device, configured to limit a total duration of the storage operation of the cloud storage device by the pushing device.
  • the storage authority information may be specifically an access token.
  • the specified address may also be understood as a specified path.
  • the specified path can be Thought: E: ⁇ ID_01 ⁇ August 1st.
  • the server sends an authentication success message to the pushing device, where the verification success message includes the storage authority information.
  • the verification success message is used to indicate that the server verifies that the push device has a storage right on the cloud storage device.
  • step 303 For the description of the storage authority information, see step 303, and details are not described herein again.
  • the pushing device receives an authentication success message sent by the server, where the verification success message includes storage authority information on a specified address of the cloud storage device.
  • the pushing device locally caches the multimedia data.
  • the data cache is performed locally on the push device.
  • the size of the multimedia data is generally smaller than the size of the multimedia data, so that the multimedia data is sequentially cached into a plurality of slice data, that is, the split is divided into two. Multiple slice data and cache.
  • 201 may be executed first (ie, first verified by the server), then 203 (that is, data is re-cached); or 203 may be executed first, and 201 may be executed.
  • the pushing device uses the storage permission information to store the locally cached multimedia data in the specified address of the cloud storage device.
  • the storage permission information and the cached multimedia data are actually sent by the push device to the cloud storage device, so that the cloud storage device (for example, the cloud storage device 103 in FIG. 1) executes 401, that is, The multimedia data is stored at the designated address using the storage authority information.
  • the push device may sequentially The cached plurality of slice data is stored in the specified address by an additional object storage method.
  • the additional object storage method means that, except for the first slice data, other slice data is added after the previous slice data to form a stream storage until the specified size of the multimedia data is reached.
  • the additional object storage mode can make it possible to access the stored slice data after the multimedia data is segmented, that is, the multimedia data can be accessed without waiting for all the slice data to be stored.
  • the embodiment does not require a server to perform cloud storage on multimedia data.
  • Line data transfer that is, the server does not need to perform local cache, only the server performs permission verification, and the push device directly stores the multimedia data, so the processing pressure of the multimedia data is distributed from the server to each push device, thereby reducing the resources of the occupied server. , which saves hardware costs.
  • the embodiment of the present application does not require the server to perform data transfer, the server still performs the authority verification, which ensures the security in the cloud storage process while reducing the occupied resources.
  • the pushing device in the embodiment of the present application may further acquire key frame information of the multimedia data, generate an index file according to the key frame information, and store the index file in the cloud storage device by using the storage permission information.
  • the specified address is actually sent to the server together with the storage authority information, the cached multimedia data, and the index file at step 204. Thereby, it is possible to quickly locate key frames for fast playback or decoding of multimedia data.
  • the specified address may include a first designated address and a second specified address, storing the multimedia data at the first designated address, and storing the index file at the second designated address.
  • the key frame information may include a timestamp of the key frame, a size of the key frame, and a position of the key frame in the multimedia data, so that other devices (eg, user equipment) can locate the key frame according to the key frame information.
  • the multimedia data is specifically video data (also referred to as a video stream) encoded based on the H.264 video coding technology
  • the key frame information may include a timestamp of an I frame (a key frame of H.264). The size of the I frame and the position of the I frame in the multimedia data, after acquiring the key frame information, the user equipment can locate the I frame and start playing the video data from the I frame.
  • the push device may sequentially determine whether each frame in the currently cached slice data is a key frame, and if so, obtain The key frame information.
  • the verification request may further indicate the multimedia data to be stored by the pushing device, for example, the verification request further includes a name of the multimedia data to be stored by the pushing device, so that the server generates the storage for storing the The specified address of the multimedia data.
  • the verification request further indicates the multimedia data to be stored by the pushing device.
  • the server determines that the cloud storage device does not have the multimedia data, for example, the If the push device accesses the cloud storage device for the first time, or the push device does not access the cloud storage device for the first time, but the multimedia data is not previously stored in the cloud storage device, the server generates the cloud storage device. Specifying a folder, and setting an address of the specified folder as the specified address; if the server determines the The cloud storage device has a part of the data in the multimedia data. For example, the push device has stored a plurality of slice data of the multimedia data in the cloud storage device, and the server uses the address where the partial data is located as the designation. address.
  • the server can manage each folder on the cloud storage device, that is, a file directory on the cloud storage device.
  • the server may be established step by step according to certain rules.
  • the first level directory of the multimedia data corresponds to the collection device identifier
  • the second level directory corresponds to the storage time.
  • the second level directory stores the multimedia data and the index file, which are specifically described below.
  • the first-level directory corresponds to the collection device identifier, which means that the first-level directory is distinguished according to the collection device identifier.
  • the identifier of the collection device refers to the identifier of the device (that is, the collection device) that collects the multimedia data to be stored. For example, if the collection device is specifically a network camera, the collection device identifier is an identifier (IPC ID) of the network camera. It should be noted that the collection device and the push device may be the same device or different devices.
  • the second level directory corresponds to the storage time, which means that the second level directory is distinguished according to the time when the multimedia data is stored.
  • the storage time may be in days, that is, the second level directory in which the multimedia data whose storage time is located on different days (ie, different dates) is different. For example, as shown in FIG. 3, the multimedia data stored on August 1 and August 2, respectively, are located in different second-level directories.
  • the corresponding multimedia data and the index file are stored in the second level directory.
  • multimedia data 01, index file 01, ..., multimedia data 10, and index file 10 are stored.
  • the naming manner of each multimedia data in the second level directory may be: save days + collection device ID + start time + total duration.
  • the start time refers to the time when the multimedia data starts to be recorded.
  • this file creation method can find multimedia data more quickly, thereby making the management software logic of the server side simpler and reducing the software development cost.
  • the key frame may be further encrypted and/or signed, which are respectively described below.
  • the push device encrypts key frames in the multimedia data before storing the locally cached multimedia data in the specified address. That is to say, the key frame may be encrypted before being cached locally or after being locally cached, and then the encrypted multimedia data is sent to the cloud storage device. And, the pushing device adds information for indicating that the key frame is encrypted in the key frame information before storing the index file in the specified address, so that other devices (for example, user equipment) can It is judged according to the key frame information that the key frame is encrypted. For example, a general encryption algorithm (such as DES encryption algorithm) The key frame is encrypted, and the key is input by the user equipment during decryption.
  • a general encryption algorithm such as DES encryption algorithm
  • the embodiment may further include: the pushing device generates signature information, wherein the signature information can uniquely identify a key frame of the multimedia data, thereby enabling tamper resistance of a key frame; and the pushing device is to cache the multimedia data locally.
  • the signature information is added in a user-defined information segment of the multimedia data before being stored in the specified address. For example, if the multimedia data is video data, generate MD5 (Message Digest Algorithm Fifth Edition) code according to the I frame of the video data, and user information of SEI (Enhanced Information of H.264) of the video data. Add the MD5 code to it.
  • MD5 Message Digest Algorithm Fifth Edition
  • SEI Supplemental Information of H.264
  • the security of the key frame can be improved by encrypting and/or signing the key frame, thereby providing security of the multimedia data.
  • the label information may also be added in the embodiment of the present application, thereby implementing a function of facilitating searching and preventing tampering.
  • the embodiment may further include: the pushing device generates label information, where the label information is used to describe a data feature of the multimedia data; and the pushing device stores the index file before the specified address,
  • the tag information is added to the index file, for example, the tag information is added after the key frame information.
  • the tag information may include at least one of the following information: information related to the person (eg, the number of artifacts in the video data, the color of the clothing, etc.), related to the vehicle. Information (such as the number of vehicles in the video data, license plate number, color, model, etc.), and other related information (such as information related to animals, non-motor vehicles).
  • the present application provides another method embodiment of a cloud storage method for multimedia data.
  • the push device is specifically a video capture device
  • the multimedia data is specifically video data
  • the cloud storage device is specifically an object storage system as an example. It is to be understood that the above limitations do not limit the other embodiments of the application. This embodiment is used in the video collection device.
  • the method of this embodiment includes five phases: a timing and an authentication phase, a segmentation phase, an index generation phase, a security processing phase, and an upload phase.
  • the five phases are described below.
  • the timing and authentication phase includes steps 501 to 504.
  • the video collection device initiates a time synchronization request to the server, and the server verifies that the time synchronization request is valid, and returns the current time to the video collection device. After receiving the time, the video collection device synchronizes with the server time.
  • the video capture device can also determine whether the time is successful, if yes, execute 502, and if not, re-time.
  • the video collection device determines whether a valid token exists, and if yes, indicates that the time alignment and the authentication level have been completed. Segment, if no, execute 503.
  • the token indicates a specified address that can be operated by the video capture device (which can also be understood as an operable video object), an identifier of the object storage system, information of the operation action type as a storage operation, and an operation time.
  • the video collection device sends an authentication request to the server, where the verification request is used to request verification of the storage authority of the pushing device.
  • the video collection device receives the verification success message sent by the server, where the verification success message includes a token generated by the server, and receiving the token is equivalent to acquiring the permission to store data to the specified address of the object storage system.
  • the segmentation phase includes 505 to 508.
  • the video capture device caches a video frame in the video data.
  • the video collection device determines whether the video data is all cached. If yes, execute 508. If not, execute 507.
  • the video collection device determines whether the currently buffered video frame reaches a preset slice size. If yes, execute 508. If not, return to execution 505. Wherein, when the judgment result is YES, it is also possible to return to execution 505 to continue buffering the next slice data.
  • the video collection device forms a data packet according to the currently buffered video frame.
  • the video data can be sliced into a plurality of data packets.
  • the preset slice size is 64 kbytes.
  • the video data can be sliced into a plurality of 64 kbyte data packets, wherein the size of the last data packet can be less than 64 kbytes.
  • the index generation phase includes 509 and 510.
  • the video collection device After performing 505 in the segmentation phase, that is, after buffering a video frame, the video collection device determines whether the video frame is a key frame, for example, determining whether it is an I frame, and if yes, executing 510, if not, for example, the video. If the frame is a B frame or a P frame, the video frame is not processed.
  • the video collection device generates an index object according to the I frame.
  • both the video data and the index file can be stored as objects, that is, as video objects and index objects, respectively.
  • the safe processing phase includes 511 to 514.
  • the video collection device determines whether the I frame needs to be encrypted and/or signed. If yes, execute 512. If not, execute 513.
  • the video capture device encrypts and/or signs the I frame.
  • the video collection device determines whether tagging information is needed. If yes, execute 514. If not, complete the security processing phase.
  • the video collection device adds label information to the index object, where the label information is used to describe data characteristics of the video data.
  • the upload phase includes 515 to 517.
  • the video collection device After performing the remaining four stages except the uploading stage, the video collection device uploads the data packet, the index object (if any), and the token, that is, sends the foregoing data to the object storage system.
  • the data packet is uploaded according to the additional object storage manner, and other data packets except the first data packet are added after the previous data packet to form a video stream storage until the specified size of the video data is reached.
  • the complete video data (that is, equivalent to a video object) corresponds to an index object.
  • the video collection device determines whether the upload is successful. If yes, execute 517. If not, return to execution 515 to re-upload the data.
  • the video collection device can detect whether the authentication timeout or the network timeout. If the authentication timeout is over, the 205 to 504 is re-authenticated. If the network times out, the data is re-uploaded.
  • the cloud storage method provided by the present application is introduced from the perspective of the push device.
  • the following describes the authorization verification method provided by this application from the perspective of the server.
  • the present application provides an embodiment of a method for verifying rights. This embodiment is used in a cloud storage process.
  • the server receives an authentication request sent by a push device, where the verification request is used to request verification of a storage right of the push device.
  • the server verifies that the pushing device has the storage authority.
  • the server generates storage authority information for a specified address on the cloud storage device.
  • the server sends an authentication success message to the pushing device, where the verification success message includes the storage authority information.
  • the present application provides an embodiment of a method for downloading a cloud of multimedia data.
  • This embodiment is for use in a user equipment (e.g., user equipment 104 shown in Figure 1).
  • the method of this embodiment includes 601, 602, and 603, which are specifically described below.
  • the user equipment sends an authentication request to the server, where the verification request is used to request verification of the download authority of the user equipment.
  • the user equipment When the user equipment needs to download multimedia data from the cloud storage device, the user equipment sends the verification request to the server, and the verification request enables the server to verify whether the user equipment has the right to download multimedia data from the cloud storage device.
  • the verification request generally includes an identifier of the user equipment, so that the server can identify the user equipment.
  • the server receives an authentication request sent by a user equipment.
  • the server verifies that the user equipment has the download permission.
  • the server After receiving the verification request, the server determines, according to the verification request, whether the user equipment has the download permission, and if yes, the user equipment has the right to download the multimedia data on the cloud storage device, and therefore executes 703; No, the user equipment does not have the right to download the multimedia data in the cloud storage device. In this case, the server may send a verification failure message to the user equipment, and the user equipment may re-initiate the verification.
  • the user equipment has the download permission only for the data stored by the push device corresponding to the user device.
  • the server generates download permission information for a specified address on the cloud storage device.
  • the server When the server verifies that the user equipment has the download permission, the server acquires a specified address (the specified address is generally an address of data stored by the push device corresponding to the user equipment), and generates the download permission information.
  • the downloading permission information includes the specified address, the identifier of the cloud storage device, and the information of the operation action type being the download operation, so that the user equipment can find the cloud storage device according to the identifier, and according to the Specifying an address and the information, downloading data from the specified address of the cloud storage device.
  • the download permission information may further include: an operation time of the user equipment, where the total duration of the download operation of the cloud storage device by the user equipment is restricted.
  • the download permission information may be specifically an access token.
  • the server sends an authentication success message to the user equipment, where the verification success message includes the download permission information.
  • the verification success message is used to indicate that the server verifies that the user equipment has a cloud storage device Download permissions.
  • step 703 For the description of the download permission information, see step 703, and details are not described herein again.
  • the user equipment receives an authentication success message sent by the server, where the verification success message includes download permission information of a specified address of the cloud storage device.
  • the user equipment uses the download permission information to download multimedia data from the specified address.
  • the embodiment may further include: the user equipment downloads an index file from the specified address by using the download permission information, where the index file includes key frame information of the multimedia data.
  • the key frame information may include a timestamp, a size of the key frame, and a position of the key frame in the multimedia data, so that the user equipment can locate the key frame according to the key frame information.
  • 603 specifically includes 603A and 603B.
  • the user equipment sends the download permission information to the cloud storage device.
  • the cloud storage device searches for the multimedia data corresponding to the specified address according to the download permission information, and executes 801, that is, sends the multimedia data to the user equipment.
  • the user equipment receives the multimedia data sent by the cloud storage device.
  • the user equipment may The plurality of slice data sequentially downloaded are downloaded to the user equipment by an additional object storage method.
  • the additional object storage manner can be such that when the multimedia data is segmented, the downloaded slice data can be accessed, that is, the multimedia data can be accessed without waiting for all the slice data to be downloaded.
  • the cloud downloading of the multimedia data does not require the server to perform data transfer, that is, the server does not need to perform local cache, and only the server performs the right verification, and the user equipment directly downloads the multimedia data, so
  • the processing pressure on multimedia data is distributed from the server to each user device, which reduces the resources of the occupied server, thereby saving hardware costs.
  • the server still performs the authority verification, which ensures the security in the cloud downloading process while reducing the occupied resources.
  • the embodiment may further include: the user equipment parses the index file to obtain the key frame information; and the user equipment plays the multimedia data according to the key frame information.
  • the user equipment can obtain the location of the key frame in the multimedia data by using the key frame information in the index file, and play the multimedia data according to the location.
  • the method may further include: if the user equipment acquires key frame encrypted information from the key frame information, the user equipment, before playing the multimedia data according to the key frame information, The key frame is decrypted.
  • the user equipment may prompt the user to input a key for decryption.
  • the user equipment may broadcast or order multimedia data. The following are explained separately.
  • the server acquires the latest multimedia data stored in the time, and uses the address of the latest multimedia data of the storage time as the designated address.
  • the server finds all the corresponding video data and index files according to the identifier of the video capture device to be accessed and the current date, and records the time information recorded by the key frame information and compares the current time. Time, find the latest key frame information of the time, and find the video data and the index file corresponding to the latest key frame information at the time, and the address where the corresponding video data and the index file are located as the specified address, thereby generating Download permission information.
  • the server obtains the identifier of the data to be on-demand of the user equipment, and uses the storage address corresponding to the identifier of the data to be on-demand as the designated address.
  • the identifier of the data to be broadcasted may include an identifier of the collection device and a storage time.
  • the user equipment can find all the corresponding video data and index files according to the identifier of the video collection device to be accessed and the time of the video to be on-demand, and find the time corresponding to the video to be on-demand by using the time information recorded by the key frame information.
  • the key frame information is searched for the video data and the index file corresponding to the corresponding key frame information, and the address where the corresponding video data and the index file are located is used as the specified address, thereby generating download permission information.
  • the cloud download method provided by the present application is introduced from the perspective of the user equipment.
  • the following describes the authorization verification method provided by this application from the perspective of the server.
  • the present application provides another method embodiment of a rights verification method, which is used in a cloud download process.
  • the server receives an authentication request sent by a user equipment, where the verification request is used to request verification of download permission of the user equipment.
  • the server verifies that the user equipment has the download permission.
  • the server generates download permission information for a specified address on the cloud storage device.
  • the server sends an authentication success message to the user equipment, where the verification success message includes the download permission information.
  • the present application also provides corresponding device embodiments, which are respectively described below.
  • the pushing device of this embodiment may be the pushing device 101 shown in FIG. 1.
  • the push device of this embodiment includes a transmitting unit 61, a receiving unit 62, and a buffer unit 63.
  • the sending unit 61 is configured to send an authentication request to the server, where the verification request is used to request verification of the storage authority of the pushing device.
  • the push device When the push device needs to store the multimedia data to the cloud storage device, the push device sends the verification request to the server, and the verification request enables the server to verify whether the push device has the right to store the multimedia data on the cloud storage device.
  • the verification request generally includes an identifier of the push device, so that the server can identify the push device.
  • the server may be a streaming media server (for example, the server 102 shown in FIG. 1), or may be an authentication server.
  • the receiving unit 62 is configured to receive an authentication success message sent by the server, where the verification success message includes storage authority information on a specified address of the cloud storage device.
  • the server After receiving the verification request, the server determines, according to the verification request, whether the push device has the storage permission, and if yes, the push device has the right to store multimedia data on the cloud storage device, and therefore sends the information to the push device. Verifying the success message; if not, indicating that the push device does not have the right to store multimedia data on the cloud storage device, at which time the server may send a verification failure message to the push device, and the push device may re-initiate the verification.
  • the cache unit 63 is configured to locally cache the multimedia data.
  • the size of the cache unit 63 for locally buffering the multimedia data may be smaller than the size of the multimedia data, thereby sequentially buffering the multimedia data into a plurality of slice data, that is, dividing into multiple slices. Data is cached.
  • the sending unit 61 is further configured to use the storage authority information to store the locally cached multimedia data in the specified address of the cloud storage device.
  • the sending unit 61 is specifically configured to send the storage authority information and the cached multimedia data to the cloud storage device, so that the cloud storage device (for example, the cloud storage device 103 in FIG. 1) uses the storage authority information to use the multimedia.
  • the data is stored at the specified address.
  • the sending unit 61 may The plurality of slice data sequentially cached are stored in the designated address by an additional object storage method.
  • the pushing device further includes: a first generating unit, configured to acquire key frame information of the multimedia data, and generate an index file according to the key frame information; the sending unit 61 is further configured to use the storage right information And storing the index file at the specified address of the cloud storage device.
  • the pushing device further includes: an encryption unit, configured to encrypt a key frame in the multimedia data before the sending unit 61 stores the locally cached multimedia data in the specified address; the first adding unit And for adding information indicating that the key frame is encrypted in the key frame information before the sending unit 61 stores the index file in the specified address.
  • an encryption unit configured to encrypt a key frame in the multimedia data before the sending unit 61 stores the locally cached multimedia data in the specified address
  • the first adding unit And for adding information indicating that the key frame is encrypted in the key frame information before the sending unit 61 stores the index file in the specified address.
  • the pushing device further includes: a second generating unit, configured to generate tag information, where the tag information is used to describe a data feature of the multimedia data; and a second adding unit, configured to be used in the sending unit
  • the index file is stored before the specified address, and the tag information is added in the index file.
  • the pushing device further includes: a third generating unit, configured to generate signature information, where the signature information can uniquely identify a key frame of the multimedia data; and a third adding unit, configured to be used in the sending unit
  • the locally cached multimedia data is stored before the specified address, and the signature information is added in a user-defined information segment of the multimedia data.
  • the buffering unit is configured to cache the multimedia data into a plurality of slice data in sequence; when the locally cached multimedia data is stored in the specified address, the sending unit is specifically configured to cache the plurality of caches in sequence.
  • the slice data is stored in the specified address by an additional object storage method.
  • the present application provides an apparatus embodiment of a server, where the server of the embodiment may be used in a cloud storage process.
  • the server of this embodiment includes a receiving unit 71, a verification unit 72, a generating unit 73, and a transmitting unit 74.
  • the receiving unit 71 is configured to receive an authentication request sent by the pushing device, where the verification request is used to request verification of the storage authority of the pushing device.
  • the verification unit 72 is configured to verify that the push device has the storage authority.
  • the generating unit 73 is configured to generate storage authority information on the specified address on the cloud storage device after the verification unit 72 verifies that the pushing device has the storage authority.
  • a sending unit 74 configured to send an authentication success message to the pushing device, where the verification success message includes Store storage authority information.
  • the verification request further indicates the multimedia data to be stored by the pushing device;
  • the server further includes: a determining unit; the determining unit is further configured to: before the generating unit 73 generates the access right information, If it is determined that the multimedia data does not exist in the cloud storage device, generating a designated folder on the cloud storage device, and using an address corresponding to the specified folder as the specified address, if the cloud is determined
  • the storage device exists part of the data in the multimedia data, and the address where the partial data is located is taken as the designated address.
  • the first level directory of the multimedia data corresponds to the collection device identifier
  • the second level directory corresponds to the storage time
  • the present application provides an apparatus embodiment of a user equipment.
  • the user equipment in this embodiment may be the user equipment 104 shown in FIG. 1.
  • the user equipment of this embodiment includes: a sending unit 81, a receiving unit 82, and a downloading unit 83.
  • the sending unit 81 is configured to send an authentication request to the server, where the verification request is used to request verification of the download authority of the push device.
  • the verification request generally includes an identifier of the user equipment, so that the server can identify the user equipment.
  • the receiving unit 82 is configured to receive an authentication success message sent by the server, where the verification success message includes download permission information of a specified address of the cloud storage device.
  • the server After receiving the verification request, the server determines, according to the verification request, whether the user equipment has the download permission, and if yes, the user equipment has the right to download multimedia data on the cloud storage device, and thus the user is The device sends a verification success message; if not, it indicates that the user equipment does not have the right to download the multimedia data on the cloud storage device, and the server may send an authentication failure message to the user equipment, and the user equipment may re-initiate the verification.
  • the user equipment has the download permission only for the data stored by the push device corresponding to the user device.
  • the download unit 83 is configured to download multimedia data from the specified address by using the download permission information.
  • the download unit 83 is specifically configured to: send the download permission information to the cloud storage device; and receive the multimedia data sent by the cloud storage device.
  • the download unit 83 may download the plurality of slice data sequentially downloaded to the user device by using an additional object storage manner.
  • the downloading unit 83 is further configured to: use the download permission information, to download an index file from the specified address, where the index file includes key frame information of the multimedia data.
  • the user equipment further includes: a parsing unit, configured to parse the index file to obtain the key frame information; and a playing unit, configured to play the multimedia data according to the key frame information.
  • a parsing unit configured to parse the index file to obtain the key frame information
  • a playing unit configured to play the multimedia data according to the key frame information.
  • the user equipment further includes: a decryption unit, configured to: if the key frame encrypted information is obtained from the key frame information, before the multimedia data is played according to the key frame information, the key frame is Decrypt.
  • the user equipment may prompt the user to input a key for decryption.
  • the present application provides another apparatus embodiment of a server.
  • the server of this embodiment may be used in a cloud download process.
  • the server of this embodiment includes a receiving unit 91, a verification unit 92, a generating unit 93, and a transmitting unit 94.
  • the receiving unit 91 is configured to receive an authentication request sent by the user equipment, where the verification request is used to request verification of the download authority of the user equipment.
  • the verification unit 92 is configured to verify that the user equipment has the download authority.
  • the generating unit 93 is configured to generate download permission information for the specified address on the cloud storage device after the verification unit 92 verifies that the user equipment has the download permission.
  • the sending unit 94 is configured to send an authentication success message to the user equipment, where the verification success message includes the download permission information.
  • the server further includes: an obtaining unit, configured to: when the user equipment is in a live broadcast state, acquire multimedia data with the latest storage time, and use an address of the latest multimedia data of the storage time as the designated address; If the user equipment is in the on-demand state, the identifier of the data to be on-demand of the user equipment is obtained, and the storage address corresponding to the identifier of the data to be on-demand is used as the designated address.
  • an obtaining unit configured to: when the user equipment is in a live broadcast state, acquire multimedia data with the latest storage time, and use an address of the latest multimedia data of the storage time as the designated address; If the user equipment is in the on-demand state, the identifier of the data to be on-demand of the user equipment is obtained, and the storage address corresponding to the identifier of the data to be on-demand is used as the designated address.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • a computer readable storage medium A number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present application.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Library & Information Science (AREA)
  • Computer Graphics (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

本申请提供了一种多媒体数据的云存储、云下载方法及相关装置,所述云存储方法包括:推送设备向服务器发送验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;所述推送设备接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的存储权限信息;所述推送设备对多媒体数据进行本地缓存;所述推送设备利用所述存储权限信息,将本地缓存的多媒体数据存储在所述云存储设备的所述指定地址。可见,本实施例在对多媒体数据进行云存储时,不需要服务器进行数据中转,即不需要服务器进行本地缓存,只需服务器进行权限验证,由推送设备直接存储多媒体数据,减少了占用的服务器的资源。

Description

一种多媒体数据的云存储、云下载方法及相关装置
本申请要求2015年10月29日递交的申请号为201510719292.9、发明名称为“一种多媒体数据的云存储、云下载方法及相关装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及云存储领域,尤其是涉及一种多媒体数据的云存储、云下载方法及相关装置。
背景技术
随着多媒体数据的存储需求的快速增长,传统的块存储等存储技术已经不能满足高并发、高吞吐以及高性能等特性需求。而云存储技术由于其所具有的良好特性,应用范围越来越广泛。
如图1所示,目前多媒体数据的云存储方式包括:视频采集设备等推送设备向服务器推送多媒体数据,服务器本地缓存该多媒体数据,并将缓存的多媒体数据存储到云存储设备中。云下载方式包括:用户设备向服务器发送下载请求,服务器从云存储设备中查找并本地缓存多媒体数据,将缓存的多媒体数据发送至用户设备。
显然,在从云存储设备存储或者下载多媒体数据时,都需要通过服务器进行本地缓存,占用了服务器的资源。尤其当多个推送设备同时向云存储设备存储多媒体数据,或者多个用户设备同时从云存储设备中下载多媒体数据时,服务器需要对大量的多媒体数据进行本地缓存,此时将会占用服务器大量的资源。对服务器的资源的占用,导致服务器的硬件成本较高。
发明内容
本申请解决的技术问题在于提供一种多媒体数据的云存储、云下载方法及相关装置,以实现向云存储设备存储或者从云存储设备下载多媒体数据时,不需要服务器进行本地缓存,减少占用的服务器的资源,从而节省硬件成本。
为此,本申请解决技术问题的技术方案是:
本申请提供了一种多媒体数据的云存储方法,所述方法包括:
推送设备向服务器发送验证请求,所述验证请求用于请求对所述推送设备的存储权 限进行验证;
所述推送设备接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的存储权限信息;
所述推送设备对多媒体数据进行本地缓存;
所述推送设备利用所述存储权限信息,将本地缓存的多媒体数据存储在所述云存储设备的所述指定地址。
可选的,所述方法还包括:
所述推送设备获取所述多媒体数据的关键帧信息,根据所述关键帧信息生成索引文件;
所述推送设备利用所述存储权限信息,将所述索引文件存储在所述云存储设备的所述指定地址。
可选的,所述方法还包括:
所述推送设备在将本地缓存的多媒体数据存储在所述指定地址之前,对所述多媒体数据中的关键帧进行加密;
所述推送设备在将所述索引文件存储在所述指定地址之前,在所述关键帧信息中添加用于表示所述关键帧已加密的信息。
可选的,所述方法还包括:
所述推送设备生成标签信息,所述标签信息用于描述所述多媒体数据的数据特征;
所述推送设备在将所述索引文件存储在所述指定地址之前,在所述索引文件中添加所述标签信息。
可选的,所述方法还包括:
所述推送设备生成签名信息,所述签名信息能够唯一标识所述多媒体数据的关键帧;
所述推送设备在将本地缓存的多媒体数据存储在所述指定地址之前,在所述多媒体数据的用户自定义信息段中添加所述签名信息。
可选的,所述推送设备对多媒体数据进行本地缓存,包括:
所述推送设备将多媒体数据依次缓存为多个切片数据;
所述推送设备将本地缓存的多媒体数据存储在所述指定地址,包括:
所述推送设备将依次缓存的多个切片数据,利用追加式对象存储方式存储在所述指定地址。
本申请提供了一种权限验证方法,用于云存储过程中,所述方法包括:
服务器接收推送设备发送的验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;
所述服务器验证出所述推送设备具有所述存储权限;
所述服务器生成对云存储设备上的指定地址的存储权限信息;
所述服务器向所述推送设备发送验证成功消息,所述验证成功消息中包括所述存储权限信息。
可选的,所述验证请求还指示出所述推送设备待存储的多媒体数据;
在生成所述访问权限信息之前,所述方法还包括:
若所述服务器确定出所述云存储设备不存在所述多媒体数据,则在所述云存储设备上生成指定文件夹,并将所述指定文件夹对应的地址作为所述指定地址;
若所述服务器确定出所述云存储设备存在所述多媒体数据中的部分数据,则将所述部分数据所位于的地址作为所述指定地址。
可选的,所述多媒体数据的第一级目录对应采集设备标识,第二级目录对应存储时间。
本申请提供了一种多媒体数据的云下载方法,所述方法包括:
用户设备向服务器发送验证请求,所述验证请求用于请求对所述推送设备的下载权限进行验证;
所述用户设备接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的下载权限信息;
所述用户设备利用所述下载权限信息,从所述指定地址中下载多媒体数据。
可选的,所述方法还包括:
所述用户设备利用所述下载权限信息,从所述指定地址中下载索引文件,所述索引文件中包括所述多媒体数据的关键帧信息。
可选的,所述方法还包括:
所述用户设备对所述索引文件进行解析获得所述关键帧信息;
所述用户设备根据所述关键帧信息播放所述多媒体数据。
可选的,所述方法还包括:
若所述用户设备从关键帧信息中获取到关键帧已加密的信息,所述用户设备在根据所述关键帧信息播放所述多媒体数据之前,对所述关键帧进行解密。
本申请提供了一种权限验证方法,用于云下载过程中,所述方法包括:
服务器接收用户设备发送的验证请求,所述验证请求用于请求对所述用户设备的下载权限进行验证;
所述服务器验证出所述用户设备具有所述下载权限;
所述服务器生成对云存储设备上的指定地址的下载权限信息;
所述服务器向所述用户设备发送验证成功消息,所述验证成功消息中包括所述下载权限信息。
可选的,所述方法还包括:
若所述用户设备处于直播状态,所述服务器获取存储时间最新的多媒体数据,并将所述存储时间最新的多媒体数据的地址作为所述指定地址;
若所述用户设备处于点播状态,所述服务器获取所述用户设备待点播数据的标识,将所述待点播数据的标识对应的存储地址,作为所述指定地址。
本申请提供了一种推送设备,包括:发送单元、接收单元和缓存单元;
发送单元,用于向服务器发送验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;
接收单元,用于接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的存储权限信息;
缓存单元,用于对多媒体数据进行本地缓存;
所述发送单元还用于利用所述存储权限信息,将本地缓存的多媒体数据存储在所述云存储设备的所述指定地址。
可选的,还包括:第一生成单元,用于获取所述多媒体数据的关键帧信息,根据所述关键帧信息生成索引文件;
所述发送单元还用于利用所述存储权限信息,将所述索引文件存储在所述云存储设备的所述指定地址。
可选的,还包括:
加密单元,用于在所述发送单元将本地缓存的多媒体数据存储在所述指定地址之前,对所述多媒体数据中的关键帧进行加密;
第一添加单元,用于在所述发送单元将所述索引文件存储在所述指定地址之前,在所述关键帧信息中添加用于表示所述关键帧已加密的信息。
可选的,还包括:
第二生成单元,用于生成标签信息,所述标签信息用于描述所述多媒体数据的数据 特征;
第二添加单元,用于在所述发送单元将所述索引文件存储在所述指定地址之前,在所述索引文件中添加所述标签信息。
可选的,还包括:
第三生成单元,用于生成签名信息,所述签名信息能够唯一标识所述多媒体数据的关键帧;
第三添加单元,用于在所述发送单元将本地缓存的多媒体数据存储在所述指定地址之前,在所述多媒体数据的用户自定义信息段中添加所述签名信息。
可选的,所述缓存单元具体用于,将多媒体数据依次缓存为多个切片数据;
当将本地缓存的多媒体数据存储在所述指定地址时,所述发送单元具体用于将依次缓存的多个切片数据,利用追加式对象存储方式存储在所述指定地址。
本申请提供了一种服务器,所述服务器包括:
接收单元,用于接收推送设备发送的验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;
验证单元,用于验证出所述推送设备具有所述存储权限;
生成单元,用于在所述验证单元验证出所述推送设备具有所述存储权限之后,生成对云存储设备上的指定地址的存储权限信息;
发送单元,用于向所述推送设备发送验证成功消息,所述验证成功消息中包括所述存储权限信息。
可选的,所述验证请求还指示出所述推送设备待存储的多媒体数据;所述服务器还包括:确定单元;
所述确定单元还用于,在所述生成单元生成所述访问权限信息之前,若确定出所述云存储设备不存在所述多媒体数据,则在所述云存储设备上生成指定文件夹,并将所述指定文件夹对应的地址作为所述指定地址;若确定出所述云存储设备存在所述多媒体数据中的部分数据,则将所述部分数据所位于的地址作为所述指定地址。
可选的,所述多媒体数据的第一级目录对应采集设备标识,第二级目录对应存储时间。
本申请提供了一种用户设备,包括:
发送单元,用于向服务器发送验证请求,所述验证请求用于请求对所述推送设备的下载权限进行验证;
接收单元,用于接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的下载权限信息;
下载单元,用于利用所述下载权限信息,从所述指定地址中下载多媒体数据。
可选的,所述下载单元还用于,利用所述下载权限信息,从所述指定地址中下载索引文件,所述索引文件中包括所述多媒体数据的关键帧信息。
可选的,还包括:
解析单元,用于对所述索引文件进行解析获得所述关键帧信息;
播放单元,用于根据所述关键帧信息播放所述多媒体数据。
可选的,还包括:解密单元,用于若从关键帧信息中获取到关键帧已加密的信息,在根据所述关键帧信息播放所述多媒体数据之前,对所述关键帧进行解密。
本申请提供了一种服务器,所述方法包括:
接收单元,用于接收用户设备发送的验证请求,所述验证请求用于请求对所述用户设备的下载权限进行验证;
验证单元,用于验证出所述用户设备具有所述下载权限;
生成单元,用于在所述验证单元验证出所述用户设备具有所述下载权限之后,生成对云存储设备上的指定地址的下载权限信息;
发送单元,用于向所述用户设备发送验证成功消息,所述验证成功消息中包括所述下载权限信息。
可选的,还包括:获取单元,用于若所述用户设备处于直播状态,获取存储时间最新的多媒体数据,并将所述存储时间最新的多媒体数据的地址作为所述指定地址;若所述用户设备处于点播状态,获取所述用户设备待点播数据的标识,将所述待点播数据的标识对应的存储地址,作为所述指定地址。
通过上述技术方案可知,本申请实施例在进行云存储时,由推送设备向服务器发送验证请求,使得服务器对推送设备的存储权限进行验证,若服务器验证出推送设备具有存储权限,推送设备会接收到服务器发送的验证成功消息,推送设备根据验证成功消息中的存储权限信息,将推送设备本地缓存的多媒体数据存储在云存储设备的指定地址。本申请实施例在进行云下载时,由用户设备向服务器发送验证请求,使得服务器对用户设备的下载权限进行验证,若服务器验证出用户设备具有下载权限,用户设备会接收到服务器发送的验证成功消息,用户设备根据验证成功消息中的下载权限信息,从云存储设备的指定地址中下载多媒体数据。
可见,本申请实施例在对多媒体数据进行云存储或者云下载时,不需要服务器进行数据中转,即不需要服务器进行本地缓存,只需服务器进行权限验证,由推送设备直接存储多媒体数据或者由用户设备直接下载多媒体数据,因此减少了占用的服务器的资源,从而节省了硬件成本。此外,本申请实施例虽然无需服务器进行数据中转,但仍然会进行权限验证,在减少占用资源的同时还保证了云存储或者云下载过程中的安全性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其它的附图。
图1为一种网络系统的结构示意图;
图2为本申请提供的云存储方法的一种实施例的信令交互图;
图3为本申请提供的云存储设备上的一种存储目录的示意图;
图4为本申请提供的云存储方法的另一种实施例的信令交互图;
图5为本申请提供的云下载方法的一种实施例的信令交互图;
图6为本申请提供的推送设备的一种实施例的结构示意图;
图7为本申请提供的服务器的一种实施例的结构示意图;
图8为本申请提供的用户设备的一种实施例的结构示意图;
图9为本申请提供的服务器的另一种实施例的结构示意图。
具体实施方式
图1为一种常见的网络系统,包括推送设备101、服务器102、云存储设备103和用户终端104。在本申请实施例中,多媒体数据包括音频数据、视频数据或者视频描述数据等。推送设备101指的是用于获取并推送多媒体数据的设备,例如可以具体为视频采集设备,或者用于从视频采集设备获取采集到的视频数据的设备。服务器102可以具体为流媒体服务器。云存储设备103指的是用于进行云存储的设备,例如可以具体为对象存储系统(Object-Based Storage System)。用户设备104可以具体为计算机、手机、PAD等电子设备。
目前,一种常见的多媒体数据的云存储方式包括:推送设备101向服务器102推送多媒体数据,服务器102本地缓存该多媒体数据,并将缓存的多媒体数据存储到云存储 设备103中。一种常见的多媒体数据的云下载方式包括:用户设备104向服务器102发送下载请求,服务器102从云存储设备103中查找并本地缓存多媒体数据,将缓存的多媒体数据发送至用户设备104。
上述云存储或者云下载的方式具有以下缺点。
1、无论是对多媒体数据进行云存储还是云下载的过程中,都需要通过服务器102进行本地缓存,占用了服务器的资源。尤其当多个推送设备同时向云存储设备103存储多媒体数据,或者多个用户设备同时从云存储设备103下载多媒体数据时,服务器102需要对大量的多媒体数据进行本地缓存,此时将会占用服务器大量的资源。对服务器的资源的占用,导致服务器的硬件成本较高。
2、在对多媒体数据进行云存储或者云下载的过程中,多媒体数据很容易被盗取或者篡改,导致安全性较低。
3、在对多媒体数据进行云存储或者云下载的过程中,若多媒体数据比较大,则需要将多媒体数据切分成多个切片数据,对多个切片数据进行依次存储或者下载。而当所有的切片数据没有全部存储或者下载时,多媒体数据不能被访问。
本申请实施例提供一种多媒体数据的云存储、云下载方法及相关装置,以实现向云存储设备存储或者从云存储设备下载多媒体数据时,不需要服务器进行本地缓存,减少占用的服务器的资源,从而节省硬件成本。
此外,本申请实施例还具有以下优点:能够提高多媒体数据的安全性;当多媒体数据被切分成多个切片数据后,可以对已存储或者下载的切片数据进行访问,即无需等到所有的切片数据全部存储或者下载后,就能访问多媒体数据。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请实施例的核心思想包括但不仅限于:本申请实施例在云存储或者云下载的过程中,不需要通过服务器对多媒体数据进行数据中转,而是由设备端(推送设备或者用户设备)直接与云存储设备交互,从而存储或者下载多媒体数据,也就是将对多媒体数据的处理压力从服务器分散到各个设备端。为了保证数据的安全性,设备端在与云存储设备交互之前,需要设备端向服务器发送验证请求,只有服务器对设备端的权限验证成 功之后,设备端才能够根据服务器返回的权限信息存储或者下载多媒体数据。
首先对本申请实施例提供的云存储方法进行说明。
请参阅图2,本申请提供了多媒体数据的云存储方法的一种方法实施例。本实施例用于推送设备(例如图1所示的推送设备101)中,所述推送设备可以为视频采集设备。
本实施例的所述方法包括201、202、203、204和205,下面进行具体介绍。
201:推送设备向服务器发送验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证。
推送设备需要向云存储设备存储多媒体数据时,推送设备会向服务器发送所述验证请求,所述验证请求能够使得所述服务器验证所述推送设备是否具有在云存储设备上存储多媒体数据的权限。其中,验证请求中一般包括推送设备的标识,使得服务器能够识别所述推送设备。
本申请实施例中,服务器可以为流媒体服务器(例如图1所示的服务器102),也可以为鉴权服务器。
301:所述服务器接收推送设备发送的验证请求。
302:所述服务器验证出所述推送设备具有所述存储权限。
服务器在接收到所述验证请求后,会根据验证请求判断所述推送设备是否具有所述存储权限,如果有,则表示推送设备具有在云存储设备上存储多媒体数据的权限,因此执行303和304;如果否,则表示推送设备不具有在云存储设备上存储多媒体数据的权限,此时所述服务器可以向所述推送设备发送验证失败消息,所述推送设备可以重新发起验证。
303:所述服务器生成对云存储设备上的指定地址的存储权限信息。
当所述服务器验证出所述推送设备具有所述存储权限,所述服务器会分配指定地址,生成所述存储权限信息,所述存储权限信息中包括所述指定地址、云存储设备的标识以及操作动作类型为存储操作的信息,使得所述推送设备能够根据所述标识查找到所述云存储设备,并根据所述指定地址和所述信息,在所述云存储设备的所述指定地址存储数据。
其中,所述存储权限信息中还可以包括:所述推送设备的操作时间,用于限制所述推送设备对云存储设备进行存储操作的总时长。所述存储权限信息可以具体为访问令牌(token)。
在本申请实施例中,所述指定地址也可以理解为指定路径。举例说明,指定路径可 以为:E:\ID_01\8月1日。
304:所述服务器向所述推送设备发送验证成功消息,所述验证成功消息中包括所述存储权限信息。
所述验证成功消息用于表示所述服务器验证出所述推送设备具有在云存储设备上的存储权限。
关于所述存储权限信息的说明见步骤303,这里不再赘述。
202:所述推送设备接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的存储权限信息。
关于所述验证成功消息和存储权限信息的说明见步骤303和304,这里不再赘述。
203:所述推送设备对多媒体数据进行本地缓存。
在本申请实施例中,由于不再通过服务器进行数据中转,而是由推送设备直接向云存储设备中存储数据,因此在推送设备本地进行数据缓存。
其中,由于多媒体数据一般都比较大,因此所述推送设备在对所述多媒体数据进行本地缓存的大小可以小于多媒体数据的大小,从而将多媒体数据依次缓存为多个切片数据,即相当于切分成多个切片数据并进行缓存。
需要说明的是,203与201的执行顺序不受限定,例如可以先执行201(即先向服务器验证),再执行203(即再缓存数据);或者,也可以先执行203,再执行201。
204:所述推送设备利用所述存储权限信息,将本地缓存的多媒体数据存储在所述云存储设备的所述指定地址。
本步骤在具体实现时,实际上是由推送设备将所述存储权限信息和缓存的多媒体数据发送至云存储设备,从而使得云存储设备(例如图1中的云存储设备103)执行401,即利用存储权限信息,将所述多媒体数据存储在所述指定地址。
本申请实施例中,若多媒体数据被切分成多个切片数据并依次缓存在推送设备,为了解决“当所有的切片数据没有全部存储时,多媒体数据不能被访问”的问题,推送设备可以将依次缓存的多个切片数据,利用追加式对象存储方式存储在所述指定地址。追加式对象存储方式指的是,除第一个切片数据外,其他切片数据都追加在前一个切片数据的后面,形成流式存储,直至达到多媒体数据的指定大小。追加式对象存储方式可以使得,当多媒体数据被切分后,可以对已存储的切片数据进行访问,即无需等到所有的切片数据全部存储后,就能访问所述多媒体数据。
通过上述技术方案可知,本实施例在对多媒体数据进行云存储时,不需要服务器进 行数据中转,即不需要服务器进行本地缓存,只需服务器进行权限验证,由推送设备直接存储多媒体数据,因此将对多媒体数据的处理压力从服务器分散到各个推送设备,减少了占用的服务器的资源,从而节省了硬件成本。此外,本申请实施例虽然无需服务器进行数据中转,但仍然会由服务器进行权限验证,在减少占用资源的同时还保证了云存储过程中的安全性。
当多媒体数据具体为视频数据或其他具有关键帧的多媒体数据时,多媒体数据在解码或者播放解码时需要依赖于关键帧,例如,从关键帧开始播放或者其他帧在解码时需要基于关键帧。因此本申请实施例中所述推送设备还可以获取多媒体数据的关键帧信息,根据所述关键帧信息生成索引文件;并利用所述存储权限信息,将所述索引文件存储在所述云存储设备的所述指定地址,实际上就是在步骤204时,将存储权限信息、缓存的多媒体数据以及索引文件一并发送至服务器。从而能够快速定位到关键帧,实现快速播放或者解码多媒体数据。所述指定地址可以包括第一指定地址和第二指定地址,将所述多媒体数据存储在所述第一指定地址,将所述索引文件存储在所述第二指定地址。
其中,所述关键帧信息可以包括关键帧的时间戳、关键帧的大小、以及关键帧在多媒体数据中的位置,使得其他设备(例如用户设备)能够根据所述关键帧信息定位关键帧。举例说明,若多媒体数据具体为基于H.264视频编码技术进行编码的视频数据(也可称为视频码流),关键帧信息中可以包括I帧(H.264的关键帧)的时间戳、I帧的大小、以及I帧在多媒体数据中的位置,用户设备在获取到关键帧信息后,可以定位到I帧,并从I帧开始播放该视频数据。
其中,若多媒体数据被切分成多个切片数据,所述推送设备在依次缓存多个切片数据时,可以依次判断当前缓存的切片数据中的每一帧是否为关键帧,如果是,则获取到所述关键帧信息。
本申请实施例中,验证请求中还可以指示出所述推送设备待存储的多媒体数据,例如所述验证请求中还包括推送设备待存储的多媒体数据的名称,从而使得服务器生成用于存储所述多媒体数据的指定地址。下面说明服务器对指定地址的一种生成方式。
所述验证请求还指示出所述推送设备待存储的多媒体数据,在所述服务器生成所述访问权限信息之前,若所述服务器确定出所述云存储设备不存在所述多媒体数据,例如所述推送设备第一次访问云存储设备,或者所述推送设备不是第一次访问云存储设备,但之前未在云存储设备中存储所述多媒体数据,则所述服务器在所述云存储设备上生成指定文件夹,并将所述指定文件夹的地址作为所述指定地址;若所述服务器确定出所述 云存储设备存在所述多媒体数据中的部分数据,例如,推送设备已经向云存储设备中存储了多媒体数据的多个切片数据,则所述服务器将所述部分数据所位于的地址作为所述指定地址。
在本申请实施例中,所述服务器能够对云存储设备上的各个文件夹,即云存储设备上的文件目录进行管理。其中,所述服务器在建立文件夹时,可以按照一定的规则逐级建立。例如图3所示,所述多媒体数据的第一级目录对应采集设备标识,第二级目录对应存储时间,第二级目录下存储有所述多媒体数据和所述索引文件,下面具体说明。
第一级目录对应采集设备标识,指的是第一级目录按照采集设备标识进行区分。其中,采集设备标识指的是采集到待存储的多媒体数据的设备(即采集设备)的标识。例如采集设备具体为网络摄像机,则采集设备标识为网络摄像机的标识(IPC ID)。需要说明的是,采集设备与推送设备可以是同一设备,也可以是不同的设备。
第二级目录对应存储时间,指的是第二级目录按照存储多媒体数据的时间进行区分。其中该存储时间可以以天为单位,也就是说,存储时间位于不同天数(即不同日期)的多媒体数据所位于的第二级目录也不同。例如图3所示,存储时间分别为8月1日和8月2日的多媒体数据,分别位于不同的第二级目录。
第二级目录下存储有对应的所述多媒体数据和所述索引文件。例如图3所示,在存储时间为8月1日的第二级目录下,存储有多媒体数据01、索引文件01,……,多媒体数据10、和索引文件10。
其中,第二级目录下的各个多媒体数据在命名时,命名方式可以为:保存天数+采集设备标识+开始时间+总时长。其中,开始时间指的是得到多媒体数据开始录制的时间。
可见,这种文件建立方式,能够更快地查找多媒体数据,从而能够使得服务器端的管理软件逻辑更加简单,降低软件开发成本。
在本申请实施例中,为了提高多媒体数据的安全性,还可以进一步对关键帧进行加密和/或签名,下面分别说明。
首先说明加密方式。所述推送设备在将本地缓存的多媒体数据存储在所述指定地址之前,对所述多媒体数据中的关键帧进行加密。也就是说,可以在本地缓存之前,或者在本地缓存之后,对所述关键帧进行加密,加密后再将缓存的多媒体数据发送至云存储设备。并且,所述推送设备在将所述索引文件存储在所述指定地址之前,在所述关键帧信息中添加用于表示所述关键帧已加密的信息,从而使得其他设备(例如用户设备)能够根据关键帧信息判断出关键帧已加密。举例说明,通用加密算法(例如DES加密算法) 对所述关键帧进行加密,解密时由用户设备输入密钥。
下面说明签名方式。本实施例还可以包括:所述推送设备生成签名信息,所述签名信息能够唯一标识所述多媒体数据的关键帧,从而能够实现关键帧的防篡改;所述推送设备在将本地缓存的多媒体数据存储在所述指定地址之前,在所述多媒体数据的用户自定义信息段中添加所述签名信息。举例说明,若所述多媒体数据为视频数据时,根据所述视频数据的I帧生成MD5(消息摘要算法第五版)码,在视频数据的SEI(H.264的增强型信息)的用户信息中添加该MD5码。
可见,本申请实施例中可以通过对关键帧加密和/或签名的方式,提高关键帧的安全性,从而提供了多媒体数据的安全性。
可选的,本申请实施例中还可以加入标签信息,从而实现方便查找以及防篡改的功能。具体地,本实施例还可以包括:所述推送设备生成标签信息,所述标签信息用于描述所述多媒体数据的数据特征;所述推送设备将所述索引文件存储在所述指定地址之前,在所述索引文件中添加所述标签信息,例如将所述标签信息添加在所述关键帧信息的后面。举例说明,若所述多媒体数据为视频数据,所述标签信息可以包括以下信息中的至少一项:与人相关的信息(例如视频数据中人为的个数、衣着颜色等特征)、与车相关的信息(例如视频数据中车辆的个数、车牌号、颜色、车型等特征)、和其他相关信息(例如与动物、非机动车相关的信息)。
下面本申请将提供一种更具体的方法实施例。
请参阅图4,本申请提供了多媒体数据的云存储方法的另一种方法实施例。本实施例以推送设备具体为视频采集设备,多媒体数据具体为视频数据,并且云存储设备具体为对象(object)存储系统为例加以说明。可以理解的是,上述限定不会对本申请其他实施例造成限制。本实施例用于所述视频采集设备中。
本实施例的所述方法包括5个阶段:对时和鉴权阶段、切分阶段、生成索引阶段、安全处理阶段以及上传阶段,下面分别对这5个阶段进行说明。
1、对时和鉴权阶段包括步骤501至504。
501:视频采集设备向服务器发起时间同步请求,服务器验证该时间同步请求有效后返回当前时间给视频采集设备,视频采集设备收到时间后与服务器时间进行同步。
其中视频采集设备还可以判断是否对时成功,如果是,执行502,如果否,则重新对时。
502:视频采集设备判断是否存在有效token,如果是,则表示已完成对时和鉴权阶 段,如果否,则执行503。
其中,该token指示出视频采集设备可以操作的指定地址(也可以理解为可以操作的视频object)、对象存储系统的标识、操作动作类型为存储操作的信息以及操作时间等。
503:视频采集设备向服务器发送验证请求,验证请求用于请求对所述推送设备的存储权限进行验证。
504:视频采集设备接收到服务器发送的验证成功消息,该验证成功消息包括服务器生成的token,接收到该token即相当于获取了向对象存储系统的指定地址存储数据的权限。
2、切分阶段包括505至508。
505:视频采集设备缓存视频数据中的一个视频帧。
506:视频采集设备判断视频数据是否被全部缓存,如果是,则执行508,如果否,则执行507。
507:视频采集设备判断当前缓存的视频帧是否达到预设切片大小,如果是,则执行508,如果否,则返回执行505。其中,当判断结果为是时,还可以返回执行505,继续缓存下一个切片数据。
508:视频采集设备根据当前缓存的视频帧形成数据包。
通过上述步骤505至508,能够将视频数据切分成多个数据包。例如,预设切片大小为64k字节,本实施例可以将视频数据切分成若干个64k字节的数据包,其中,最后一个数据包的大小可以小于64k字节。
3、生成索引阶段包括509和510。
509:在切分阶段中执行完505,即缓存一个视频帧之后,视频采集设备判断该视频帧是否为关键帧,例如判断是否为I帧,如果是,则执行510,如果否,例如该视频帧为B帧或者P帧,则不对该视频帧进行处理。
510:视频采集设备根据I帧生成索引对象(index object)。
在本实施例中,由于云存储设备具体为对象存储系统,因此视频数据和索引文件都可以作为对象进行存储,即分别作为视频对象和索引对象。
4、安全处理阶段包括511至514。
511:视频采集设备判断是否需要对I帧进行加密和/或签名,如果是,执行512,如果否,执行513。
512:视频采集设备对I帧进行加密和/或签名。
513:视频采集设备判断是否需要加标签信息,如果是,则执行514,如果否,则完成安全处理阶段。
514:视频采集设备在索引对象中加入标签信息,标签信息用于描述视频数据的数据特征。
5、上传阶段包括515至517。
515:当执行完除上传阶段外的其余4个阶段后,视频采集设备上传数据包、索引对象(如果有)和token,即,向对象存储系统发送上述数据。
其中,数据包按照追加式对象存储方式上传,出第一个数据包外的其他数据包都追加在前一个数据包的后面,形成视频流式存储,直至达到视频数据的指定大小。其中,完整的视频数据(即相当于一个视频对象)对应一个索引对象。
516:视频采集设备判断是否上传成功,如果是,则执行517,如果否,则返回执行515即重新上传数据。
其中,若上传失败,视频采集设备还可以检测是鉴权超时还是网络超时,如果是鉴权超时,则通过执行502至504重新鉴权,如果是网络超时,则重新上传数据。
517:结束流程。之后可以对其他视频数据进行存储。
上面从推送设备的角度,介绍了本申请提供的云存储方法。下面将从服务器的角度,介绍本申请对应提供的权限验证方法。
请参阅图2,本申请提供了权限验证方法的一种方法实施例,本实施例用于云存储过程中。
本实施例的所述方法包括:
301:所述服务器接收推送设备发送的验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证。
302:所述服务器验证出所述推送设备具有所述存储权限。
303:所述服务器生成对云存储设备上的指定地址的存储权限信息。
304:所述服务器向所述推送设备发送验证成功消息,所述验证成功消息中包括所述存储权限信息。
上述步骤301至304,已在云存储方法的实施例中进行了详细说明,因此这里不再赘述。
下面对本申请实施例提供的云下载方法进行说明。
请参阅图5,本申请提供了多媒体数据的云下载方法的一种方法实施例。本实施例用于用户设备(例如图1所示的用户设备104)中。
本实施例的所述方法包括601、602和603,下面进行具体介绍。
601:用户设备向服务器发送验证请求,所述验证请求用于请求对所述用户设备的下载权限进行验证。
用户设备需要从云存储设备下载多媒体数据时,用户设备会向服务器发送所述验证请求,所述验证请求能够使得所述服务器验证所述用户设备是否具有从云存储设备下载多媒体数据的权限。其中,验证请求中一般包括用户设备的标识,使得服务器能够识别所述用户设备。
701:所述服务器接收用户设备发送的验证请求。
702:所述服务器验证出所述用户设备具有所述下载权限。
服务器在接收到所述验证请求后,会根据验证请求判断所述用户设备是否具有所述下载权限,如果有,则表示用户设备具有在云存储设备上下载多媒体数据的权限,因此执行703;如果否,则表示用户设备不具有在云存储设备下载多媒体数据的权限,此时所述服务器可以向所述用户设备发送验证失败消息,所述用户设备可以重新发起验证。
其中,由于用户设备一般只对其对应的推送设备存储的数据具有下载权限,因此,所述服务器具体验证出的是,所述用户设备对该用户设备对应的推送设备存储的数据具有下载权限。
703:所述服务器生成对云存储设备上的指定地址的下载权限信息。
当所述服务器验证出所述用户设备具有所述下载权限,所述服务器会获取指定地址(该指定地址一般为该用户设备对应的推送设备存储的数据的地址),并生成所述下载权限信息,所述下载权限信息中包括所述指定地址、云存储设备的标识以及操作动作类型为下载操作的信息,使得所述用户设备能够根据所述标识查找到所述云存储设备,并根据所述指定地址和所述信息,从所述云存储设备的所述指定地址下载数据。
其中,所述下载权限信息中还可以包括:所述用户设备的操作时间,用于限制所述用户设备对云存储设备进行下载操作的总时长。所述下载权限信息可以具体为访问令牌(token)。
704:所述服务器向所述用户设备发送验证成功消息,所述验证成功消息中包括所述下载权限信息。
所述验证成功消息用于表示所述服务器验证出所述用户设备具有在云存储设备上的 下载权限。
关于所述下载权限信息的说明见步骤703,这里不再赘述。
602:所述用户设备接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的下载权限信息。
关于所述验证成功消息和下载权限信息的说明见步骤703和704,这里不再赘述。
603:所述用户设备利用所述下载权限信息,从所述指定地址中下载多媒体数据。本实施例还可以包括:所述用户设备利用所述下载权限信息,从所述指定地址中下载索引文件,所述索引文件中包括所述多媒体数据的关键帧信息。所述关键帧信息可以包括关键帧的时间戳、大小、以及关键帧在多媒体数据中的位置,使得用户设备能够根据所述关键帧信息定位关键帧
其中,603具体包括603A和603B。
603A:所述用户设备将所述下载权限信息发送给云存储设备。
云存储设备会根据该下载权限信息查找到所述指定地址对应存储的多媒体数据件,并执行801,即,将该多媒体数据发送至所述用户设备。
603B:所述用户设备接收所述云存储设备发送的所述多媒体数据。
本申请实施例中,若多媒体数据被切分成多个切片数据并依次从云存储设备下载时,为了解决“当所有的切片数据没有全部下载时,多媒体数据不能被访问”的问题,用户设备可以将依次下载的多个切片数据,利用追加式对象存储方式下载在所述用户设备。该追加式对象存储方式可以使得,当多媒体数据被切分后,可以对已下载的切片数据进行访问,即无需等到所有的切片数据全部下载后,就能访问所述多媒体数据。
通过上述技术方案可知,本实施例在对多媒体数据进行云下载时,不需要服务器进行数据中转,即不需要服务器进行本地缓存,只需服务器进行权限验证,由用户设备直接下载多媒体数据,因此将对多媒体数据的处理压力从服务器分散到各个用户设备,减少了占用的服务器的资源,从而节省了硬件成本。此外,本申请实施例虽然无需服务器进行数据中转,但仍然会由服务器进行权限验证,在减少占用资源的同时还保证了云下载过程中的安全性。
可选的,本实施例还可以包括:所述用户设备对所述索引文件进行解析获得所述关键帧信息;所述用户设备根据所述关键帧信息播放所述多媒体数据。例如,用户设备可以通过索引文件中的关键帧信息,获取到关键帧在多媒体数据中的位置,并根据该位置播放多媒体数据。
可选的,所述方法还可以包括:若所述用户设备从关键帧信息中获取到关键帧已加密的信息,所述用户设备在根据所述关键帧信息播放所述多媒体数据之前,对所述关键帧进行解密。其中,所述用户设备可以提示用户输入密钥以进行解密。
在本申请实施例中,用户设备可以直播或者点播多媒体数据。下面分别说明。
若所述用户设备处于直播状态,所述服务器获取存储时间最新的多媒体数据,并将所述存储时间最新的多媒体数据的地址作为所述指定地址。
以按照图3所示的方式存储多媒体数据为例,服务器根据要访问的视频采集设备的标识以及当前日期,查找到对应的全部视频数据和索引文件,通过关键帧信息记录的时间信息并对比当前时间,查找到时间最新的关键帧信息,并查找到该时间最新的关键帧信息对应的视频数据和索引文件,将该对应的视频数据和索引文件所位于的地址作为所述指定地址,从而生成下载权限信息。
若所述用户设备处于点播状态,所述服务器获取所述用户设备待点播数据的标识,将所述待点播数据的标识对应的存储地址,作为所述指定地址。其中所述待点播数据的标识可以包括采集设备标识和存储时间。
例如,用户设备可以根据要访问的视频采集设备的标识和待点播视频的时间,查找到对应的全部视频数据和索引文件,通过关键帧信息记录的时间信息查找到待点播视频的时间所对应的关键帧信息,并查找该对应的关键帧信息对应的视频数据和索引文件,将该对应的视频数据和索引文件所位于的地址作为所述指定地址,从而生成下载权限信息。
上面从用户设备的角度,介绍了本申请提供的云下载方法。下面将从服务器的角度,介绍本申请对应提供的权限验证方法。
请参阅图5,本申请提供了权限验证方法的另一种方法实施例,本实施例用于云下载过程中。
本实施例的所述方法包括:
701:所述服务器接收用户设备发送的验证请求,所述验证请求用于请求对所述用户设备的下载权限进行验证。
702:所述服务器验证出所述用户设备具有所述下载权限。
703:所述服务器生成对云存储设备上的指定地址的下载权限信息。
704:所述服务器向所述用户设备发送验证成功消息,所述验证成功消息中包括所述下载权限信息。
上述步骤701至704,已在云下载方法的实施例中进行了详细说明,因此这里不再赘述。
对应上述方法实施例,本申请还提供了对应的装置实施例,下面分别说明。
请参阅图6,本申请提供了推送设备的一种装置实施例。本实施例的推送设备可以为图1所示的推送设备101。
本实施例的推送设备包括:发送单元61、接收单元62和缓存单元63。
发送单元61用于向服务器发送验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证。
推送设备需要向云存储设备存储多媒体数据时,推送设备会向服务器发送所述验证请求,所述验证请求能够使得所述服务器验证所述推送设备是否具有在云存储设备上存储多媒体数据的权限。其中,验证请求中一般包括推送设备的标识,使得服务器能够识别所述推送设备。
本申请实施例中,服务器可以为流媒体服务器(例如图1所示的服务器102),也可以为鉴权服务器。
接收单元62,用于接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的存储权限信息。
服务器在接收到所述验证请求后,会根据验证请求判断所述推送设备是否具有所述存储权限,如果有,则表示推送设备具有在云存储设备上存储多媒体数据的权限,因此向推送设备发送验证成功消息;如果否,则表示推送设备不具有在云存储设备上存储多媒体数据的权限,此时所述服务器可以向所述推送设备发送验证失败消息,所述推送设备可以重新发起验证。
缓存单元63,用于对多媒体数据进行本地缓存。
由于多媒体数据一般都比较大,因此缓存单元63在对所述多媒体数据进行本地缓存的大小可以小于多媒体数据的大小,从而将多媒体数据依次缓存为多个切片数据,即相当于切分成多个切片数据并进行缓存。
发送单元61还用于利用所述存储权限信息,将本地缓存的多媒体数据存储在所述云存储设备的所述指定地址。
其中,发送单元61具体用于将所述存储权限信息和缓存的多媒体数据发送至云存储设备,从而使得云存储设备(例如图1中的云存储设备103)利用存储权限信息,将所述多媒体数据存储在所述指定地址。
本申请实施例中,若多媒体数据被切分成多个切片数据并依次缓存在推送设备,为了解决“当所有的切片数据没有全部存储时,多媒体数据不能被访问”的问题,发送单元61可以将依次缓存的多个切片数据,利用追加式对象存储方式存储在所述指定地址。
可选的,所述推送设备还包括:第一生成单元,用于获取所述多媒体数据的关键帧信息,根据所述关键帧信息生成索引文件;发送单元61还用于利用所述存储权限信息,将所述索引文件存储在所述云存储设备的所述指定地址。
可选的,所述推送设备还包括:加密单元,用于在发送单元61将本地缓存的多媒体数据存储在所述指定地址之前,对所述多媒体数据中的关键帧进行加密;第一添加单元,用于在发送单元61将所述索引文件存储在所述指定地址之前,在所述关键帧信息中添加用于表示所述关键帧已加密的信息。
可选的,所述推送设备还包括:第二生成单元,用于生成标签信息,所述标签信息用于描述所述多媒体数据的数据特征;第二添加单元,用于在所述发送单元将所述索引文件存储在所述指定地址之前,在所述索引文件中添加所述标签信息。
可选的,所述推送设备还包括:第三生成单元,用于生成签名信息,所述签名信息能够唯一标识所述多媒体数据的关键帧;第三添加单元,用于在所述发送单元将本地缓存的多媒体数据存储在所述指定地址之前,在所述多媒体数据的用户自定义信息段中添加所述签名信息。
可选的,所述缓存单元具体用于,将多媒体数据依次缓存为多个切片数据;当将本地缓存的多媒体数据存储在所述指定地址时,所述发送单元具体用于将依次缓存的多个切片数据,利用追加式对象存储方式存储在所述指定地址。
请参阅图7,本申请提供了服务器的一种装置实施例,本实施例的所述服务器可以用于云存储过程中。
本实施例的所述服务器包括:接收单元71、验证单元72、生成单元73和发送单元74。
接收单元71,用于接收推送设备发送的验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证。
验证单元72,用于验证出所述推送设备具有所述存储权限。
生成单元73,用于在验证单元72验证出所述推送设备具有所述存储权限之后,生成对云存储设备上的指定地址的存储权限信息。
发送单元74,用于向所述推送设备发送验证成功消息,所述验证成功消息中包括所 述存储权限信息。
可选的,所述验证请求还指示出所述推送设备待存储的多媒体数据;所述服务器还包括:确定单元;所述确定单元还用于,在生成单元73生成所述访问权限信息之前,若确定出所述云存储设备不存在所述多媒体数据,则在所述云存储设备上生成指定文件夹,并将所述指定文件夹对应的地址作为所述指定地址,若确定出所述云存储设备存在所述多媒体数据中的部分数据,则将所述部分数据所位于的地址作为所述指定地址。
可选的,所述多媒体数据的第一级目录对应采集设备标识,第二级目录对应存储时间。
请参阅图8,本申请提供了用户设备的一种装置实施例。本实施例的用户设备可以为图1所示的用户设备104。
本实施例的所述用户设备包括:发送单元81、接收单元82和下载单元83。
发送单元81,用于向服务器发送验证请求,所述验证请求用于请求对所述推送设备的下载权限进行验证。
其中,验证请求中一般包括用户设备的标识,使得服务器能够识别所述用户设备。
接收单元82,用于接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的下载权限信息。
服务器在接收到所述验证请求后,会根据验证请求判断所述用户设备是否具有所述下载权限,如果有,则表示用户设备具有在云存储设备上下载多媒体数据的权限,因此向所述用户设备发送验证成功消息;如果否,则表示用户设备不具有在云存储设备下载多媒体数据的权限,此时所述服务器可以向所述用户设备发送验证失败消息,所述用户设备可以重新发起验证。
其中,由于用户设备一般只对其对应的推送设备存储的数据具有下载权限,因此,所述服务器具体验证出的是,所述用户设备对该用户设备对应的推送设备存储的数据具有下载权限。
下载单元83,用于利用所述下载权限信息,从所述指定地址中下载多媒体数据。
其中,下载单元83具体用于,将所述下载权限信息发送给云存储设备;接收所述云存储设备发送的所述多媒体数据。
本申请实施例中,若多媒体数据被切分成多个切片数据并依次从云存储设备下载时,下载单元83可以将依次下载的多个切片数据,利用追加式对象存储方式下载在所述用户设备。
可选的,下载单元83还用于,利用所述下载权限信息,从所述指定地址中下载索引文件,所述索引文件中包括所述多媒体数据的关键帧信息。
可选的,所述用户设备还包括:解析单元,用于对所述索引文件进行解析获得所述关键帧信息;播放单元,用于根据所述关键帧信息播放所述多媒体数据。
可选的,所述用户设备还包括:解密单元,用于若从关键帧信息中获取到关键帧已加密的信息,在根据所述关键帧信息播放所述多媒体数据之前,对所述关键帧进行解密。其中,所述用户设备可以提示用户输入密钥以进行解密。
请参阅图9,本申请提供了服务器的另一种装置实施例,本实施例的所述服务器可以用于云下载过程中。
本实施例的所述服务器包括:接收单元91、验证单元92、生成单元93和发送单元94。
接收单元91,用于接收用户设备发送的验证请求,所述验证请求用于请求对所述用户设备的下载权限进行验证。
验证单元92,用于验证出所述用户设备具有所述下载权限。
生成单元93,用于在验证单元92验证出所述用户设备具有所述下载权限之后,生成对云存储设备上的指定地址的下载权限信息。
发送单元94,用于向所述用户设备发送验证成功消息,所述验证成功消息中包括所述下载权限信息。
可选的,所述服务器还包括:获取单元,用于若所述用户设备处于直播状态,获取存储时间最新的多媒体数据,并将所述存储时间最新的多媒体数据的地址作为所述指定地址;若所述用户设备处于点播状态,获取所述用户设备待点播数据的标识,将所述待点播数据的标识对应的存储地址,作为所述指定地址。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (30)

  1. 一种多媒体数据的云存储方法,其特征在于,所述方法包括:
    推送设备向服务器发送验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;
    所述推送设备接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的存储权限信息;
    所述推送设备对多媒体数据进行本地缓存;
    所述推送设备利用所述存储权限信息,将本地缓存的多媒体数据存储在所述云存储设备的所述指定地址。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    所述推送设备获取所述多媒体数据的关键帧信息,根据所述关键帧信息生成索引文件;
    所述推送设备利用所述存储权限信息,将所述索引文件存储在所述云存储设备的所述指定地址。
  3. 根据权利要求2所述的方法,其特征在于,所述方法还包括:
    所述推送设备在将本地缓存的多媒体数据存储在所述指定地址之前,对所述多媒体数据中的关键帧进行加密;
    所述推送设备在将所述索引文件存储在所述指定地址之前,在所述关键帧信息中添加用于表示所述关键帧已加密的信息。
  4. 根据权利要求2所述的方法,其特征在于,所述方法还包括:
    所述推送设备生成标签信息,所述标签信息用于描述所述多媒体数据的数据特征;
    所述推送设备在将所述索引文件存储在所述指定地址之前,在所述索引文件中添加所述标签信息。
  5. 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
    所述推送设备生成签名信息,所述签名信息能够唯一标识所述多媒体数据的关键帧;
    所述推送设备在将本地缓存的多媒体数据存储在所述指定地址之前,在所述多媒体数据的用户自定义信息段中添加所述签名信息。
  6. 根据权利要求1至4任一项所述的方法,其特征在于,
    所述推送设备对多媒体数据进行本地缓存,包括:
    所述推送设备将多媒体数据依次缓存为多个切片数据;
    所述推送设备将本地缓存的多媒体数据存储在所述指定地址,包括:
    所述推送设备将依次缓存的多个切片数据,利用追加式对象存储方式存储在所述指定地址。
  7. 一种权限验证方法,其特征在于,用于云存储过程中,所述方法包括:
    服务器接收推送设备发送的验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;
    所述服务器验证出所述推送设备具有所述存储权限;
    所述服务器生成对云存储设备上的指定地址的存储权限信息;
    所述服务器向所述推送设备发送验证成功消息,所述验证成功消息中包括所述存储权限信息。
  8. 根据权利要求7所述的方法,其特征在于,所述验证请求还指示出所述推送设备待存储的多媒体数据;
    在生成所述访问权限信息之前,所述方法还包括:
    若所述服务器确定出所述云存储设备不存在所述多媒体数据,则在所述云存储设备上生成指定文件夹,并将所述指定文件夹对应的地址作为所述指定地址;
    若所述服务器确定出所述云存储设备存在所述多媒体数据中的部分数据,则将所述部分数据所位于的地址作为所述指定地址。
  9. 根据权利要求8所述的方法,其特征在于,所述多媒体数据的第一级目录对应采集设备标识,第二级目录对应存储时间。
  10. 一种多媒体数据的云下载方法,其特征在于,所述方法包括:
    用户设备向服务器发送验证请求,所述验证请求用于请求对所述推送设备的下载权限进行验证;
    所述用户设备接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的下载权限信息;
    所述用户设备利用所述下载权限信息,从所述指定地址中下载多媒体数据。
  11. 根据权利要求10所述的方法,其特征在于,所述方法还包括:
    所述用户设备利用所述下载权限信息,从所述指定地址中下载索引文件,所述索引文件中包括所述多媒体数据的关键帧信息。
  12. 根据权利要求11所述的方法,其特征在于,所述方法还包括:
    所述用户设备对所述索引文件进行解析获得所述关键帧信息;
    所述用户设备根据所述关键帧信息播放所述多媒体数据。
  13. 根据权利要求12所述的方法,其特征在于,所述方法还包括:
    若所述用户设备从关键帧信息中获取到关键帧已加密的信息,所述用户设备在根据所述关键帧信息播放所述多媒体数据之前,对所述关键帧进行解密。
  14. 一种权限验证方法,其特征在于,用于云下载过程中,所述方法包括:
    服务器接收用户设备发送的验证请求,所述验证请求用于请求对所述用户设备的下载权限进行验证;
    所述服务器验证出所述用户设备具有所述下载权限;
    所述服务器生成对云存储设备上的指定地址的下载权限信息;
    所述服务器向所述用户设备发送验证成功消息,所述验证成功消息中包括所述下载权限信息。
  15. 根据权利要求14所述的方法,其特征在于,所述方法还包括:
    若所述用户设备处于直播状态,所述服务器获取存储时间最新的多媒体数据,并将所述存储时间最新的多媒体数据的地址作为所述指定地址;
    若所述用户设备处于点播状态,所述服务器获取所述用户设备待点播数据的标识,将所述待点播数据的标识对应的存储地址,作为所述指定地址。
  16. 一种推送设备,其特征在于,包括:发送单元、接收单元和缓存单元;
    发送单元,用于向服务器发送验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;
    接收单元,用于接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的存储权限信息;
    缓存单元,用于对多媒体数据进行本地缓存;
    所述发送单元还用于利用所述存储权限信息,将本地缓存的多媒体数据存储在所述云存储设备的所述指定地址。
  17. 根据权利要求16所述的推送设备,其特征在于,还包括:第一生成单元,用于获取所述多媒体数据的关键帧信息,根据所述关键帧信息生成索引文件;
    所述发送单元还用于利用所述存储权限信息,将所述索引文件存储在所述云存储设备的所述指定地址。
  18. 根据权利要求17所述的推送设备,其特征在于,还包括:
    加密单元,用于在所述发送单元将本地缓存的多媒体数据存储在所述指定地址之前,对所述多媒体数据中的关键帧进行加密;
    第一添加单元,用于在所述发送单元将所述索引文件存储在所述指定地址之前,在所述关键帧信息中添加用于表示所述关键帧已加密的信息。
  19. 根据权利要求17所述的推送设备,其特征在于,还包括:
    第二生成单元,用于生成标签信息,所述标签信息用于描述所述多媒体数据的数据特征;
    第二添加单元,用于在所述发送单元将所述索引文件存储在所述指定地址之前,在所述索引文件中添加所述标签信息。
  20. 根据权利要求16或17所述的推送设备,其特征在于,还包括:
    第三生成单元,用于生成签名信息,所述签名信息能够唯一标识所述多媒体数据的关键帧;
    第三添加单元,用于在所述发送单元将本地缓存的多媒体数据存储在所述指定地址之前,在所述多媒体数据的用户自定义信息段中添加所述签名信息。
  21. 根据权利要求16至19任一项所述的推送设备,其特征在于,
    所述缓存单元具体用于,将多媒体数据依次缓存为多个切片数据;
    当将本地缓存的多媒体数据存储在所述指定地址时,所述发送单元具体用于将依次缓存的多个切片数据,利用追加式对象存储方式存储在所述指定地址。
  22. 一种服务器,其特征在于,所述服务器包括:
    接收单元,用于接收推送设备发送的验证请求,所述验证请求用于请求对所述推送设备的存储权限进行验证;
    验证单元,用于验证出所述推送设备具有所述存储权限;
    生成单元,用于在所述验证单元验证出所述推送设备具有所述存储权限之后,生成对云存储设备上的指定地址的存储权限信息;
    发送单元,用于向所述推送设备发送验证成功消息,所述验证成功消息中包括所述存储权限信息。
  23. 根据权利要求22所述的服务器,其特征在于,所述验证请求还指示出所述推送设备待存储的多媒体数据;所述服务器还包括:确定单元;
    所述确定单元还用于,在所述生成单元生成所述访问权限信息之前,若确定出所述云存储设备不存在所述多媒体数据,则在所述云存储设备上生成指定文件夹,并将所述 指定文件夹对应的地址作为所述指定地址;若确定出所述云存储设备存在所述多媒体数据中的部分数据,则将所述部分数据所位于的地址作为所述指定地址。
  24. 根据权利要求23所述的服务器,其特征在于,所述多媒体数据的第一级目录对应采集设备标识,第二级目录对应存储时间。
  25. 一种用户设备,其特征在于,包括:
    发送单元,用于向服务器发送验证请求,所述验证请求用于请求对所述推送设备的下载权限进行验证;
    接收单元,用于接收所述服务器发送的验证成功消息,所述验证成功消息包括对云存储设备的指定地址的下载权限信息;
    下载单元,用于利用所述下载权限信息,从所述指定地址中下载多媒体数据。
  26. 根据权利要求25所述的用户设备,其特征在于,所述下载单元还用于,利用所述下载权限信息,从所述指定地址中下载索引文件,所述索引文件中包括所述多媒体数据的关键帧信息。
  27. 根据权利要求26所述的用户设备,其特征在于,还包括:
    解析单元,用于对所述索引文件进行解析获得所述关键帧信息;
    播放单元,用于根据所述关键帧信息播放所述多媒体数据。
  28. 根据权利要求27所述的用户设备,其特征在于,还包括:
    解密单元,用于若从关键帧信息中获取到关键帧已加密的信息,在根据所述关键帧信息播放所述多媒体数据之前,对所述关键帧进行解密。
  29. 一种服务器,其特征在于,所述方法包括:
    接收单元,用于接收用户设备发送的验证请求,所述验证请求用于请求对所述用户设备的下载权限进行验证;
    验证单元,用于验证出所述用户设备具有所述下载权限;
    生成单元,用于在所述验证单元验证出所述用户设备具有所述下载权限之后,生成对云存储设备上的指定地址的下载权限信息;
    发送单元,用于向所述用户设备发送验证成功消息,所述验证成功消息中包括所述下载权限信息。
  30. 根据权利要求29所述的服务器,其特征在于,还包括:
    获取单元,用于若所述用户设备处于直播状态,获取存储时间最新的多媒体数据,并将所述存储时间最新的多媒体数据的地址作为所述指定地址;若所述用户设备处于点 播状态,获取所述用户设备待点播数据的标识,将所述待点播数据的标识对应的存储地址,作为所述指定地址。
PCT/CN2016/102647 2015-10-29 2016-10-20 一种多媒体数据的云存储、云下载方法及相关装置 WO2017071512A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/965,782 US20180249190A1 (en) 2015-10-29 2018-04-27 Method and apparatus for cloud storage and cloud download of multimedia data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510719292.9A CN106658045A (zh) 2015-10-29 2015-10-29 一种多媒体数据的云存储、云下载方法及相关装置
CN201510719292.9 2015-10-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/965,782 Continuation US20180249190A1 (en) 2015-10-29 2018-04-27 Method and apparatus for cloud storage and cloud download of multimedia data

Publications (1)

Publication Number Publication Date
WO2017071512A1 true WO2017071512A1 (zh) 2017-05-04

Family

ID=58631302

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/102647 WO2017071512A1 (zh) 2015-10-29 2016-10-20 一种多媒体数据的云存储、云下载方法及相关装置

Country Status (3)

Country Link
US (1) US20180249190A1 (zh)
CN (1) CN106658045A (zh)
WO (1) WO2017071512A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600348A (zh) * 2018-04-11 2018-09-28 青岛通产伟博大数据运营有限公司 一种新的去中心化教育资源存储系统和方法
CN111586121A (zh) * 2020-04-27 2020-08-25 安超云软件有限公司 分布式的云手机应用安装方法、云平台、系统及存储介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109151494B (zh) * 2017-06-19 2021-07-09 杭州萤石网络有限公司 多媒体数据传输方法、多媒体采集设备及服务器
CN108965219B (zh) * 2017-11-22 2021-11-09 视联动力信息技术股份有限公司 一种基于视联网的数据处理方法及装置
CN109995821A (zh) * 2017-12-29 2019-07-09 中移(苏州)软件技术有限公司 文件上传的方法及系统、客户端、服务器、对象存储系统
US11064153B2 (en) * 2018-08-21 2021-07-13 Gopro, Inc. Methods and apparatus for encrypting camera media
CN109376254A (zh) * 2018-09-11 2019-02-22 青岛海信移动通信技术股份有限公司 数据流的处理方法、装置、电子设备及可读存储介质
CN110351371A (zh) * 2019-07-15 2019-10-18 星联云服科技有限公司 一种在云存储系统中进行数据推送的方法及系统
CN110809050B (zh) * 2019-11-08 2022-11-29 智者四海(北京)技术有限公司 基于流式计算的个性化推送系统及方法
CN112306972A (zh) * 2020-11-02 2021-02-02 西安博康硕达网络科技有限公司 一种基于云存储的文件生成方法和装置
CN112800482B (zh) * 2021-01-14 2022-10-28 南京邮电大学 基于身份的在线/离线安全云存储审计方法
CN113079027A (zh) * 2021-06-04 2021-07-06 江苏数字产权交易有限公司 一种基于哈希值的区块数据生成与验证方法
CN114301931B (zh) * 2022-03-11 2022-07-08 上海凯翔信息科技有限公司 一种基于云端nas的数据同步系统
CN114827127B (zh) * 2022-03-28 2024-02-13 重庆创通联达智能技术有限公司 文件管理方法、系统、云端服务器及终端设备
CN115396689B (zh) * 2022-08-24 2023-06-30 珠海安士佳电子有限公司 一种智能化云端视频传输储存方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546836A (zh) * 2012-03-09 2012-07-04 腾讯科技(深圳)有限公司 一种上传文件的方法、终端、服务器及系统
US20130042106A1 (en) * 2011-08-11 2013-02-14 Cisco Technology, Inc. Security Management In A Group Based Environment
CN103780609A (zh) * 2014-01-14 2014-05-07 北京淦蓝润和信息技术有限公司 一种云数据的处理方法、装置和云数据安全网关
CN104778129A (zh) * 2014-01-14 2015-07-15 中兴通讯股份有限公司 一种移动终端的虚拟存储的实现方法及装置
CN105025041A (zh) * 2015-08-25 2015-11-04 北京百度网讯科技有限公司 文件上传的方法、装置和系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040201701A1 (en) * 2001-09-06 2004-10-14 Shuichi Takagi Camera with wireless virtual storage
CN100556114C (zh) * 2006-11-23 2009-10-28 中兴通讯股份有限公司 一种媒体分片存储的方法
CN101141627A (zh) * 2007-10-23 2008-03-12 深圳市迅雷网络技术有限公司 一种流媒体文件的存储系统及方法
US9237387B2 (en) * 2009-10-06 2016-01-12 Microsoft Technology Licensing, Llc Low latency cacheable media streaming
US8515255B2 (en) * 2010-04-24 2013-08-20 Walker Digital, Llc Systems and methods for enhancing media with supplemental content
CN101883255A (zh) * 2010-06-17 2010-11-10 中兴通讯股份有限公司 一种交互式网络电视中点播节目的处理系统及其方法
CN102004760B (zh) * 2010-11-03 2013-08-14 深圳市龙视传媒有限公司 多媒体文件的存储和播放方法、相关装置及系统
CN102611721B (zh) * 2011-01-24 2015-06-17 鸿富锦精密工业(深圳)有限公司 存取网关及其提供云存储服务方法
CN102761524B (zh) * 2011-04-27 2017-06-23 中兴通讯股份有限公司 一种流媒体存储、播放方法及相应系统
US8712631B2 (en) * 2012-02-09 2014-04-29 Nordic Capital Partners, LLC System and method for access of user accounts on remote servers
CN104683824B (zh) * 2013-11-29 2018-08-24 航天信息股份有限公司 flv格式视频文件的加密传输方法和系统
US9997201B2 (en) * 2014-06-20 2018-06-12 Philo, Inc. Method and apparatus for video compression of multiple instances using index frames
US9930391B1 (en) * 2014-09-11 2018-03-27 Harmonic, Inc. Network personal video recorder utilizing personal digital storage
US9124946B1 (en) * 2014-09-24 2015-09-01 Microseven Systems, Llc. Plug and play method and system of viewing live and recorded contents

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130042106A1 (en) * 2011-08-11 2013-02-14 Cisco Technology, Inc. Security Management In A Group Based Environment
CN102546836A (zh) * 2012-03-09 2012-07-04 腾讯科技(深圳)有限公司 一种上传文件的方法、终端、服务器及系统
CN103780609A (zh) * 2014-01-14 2014-05-07 北京淦蓝润和信息技术有限公司 一种云数据的处理方法、装置和云数据安全网关
CN104778129A (zh) * 2014-01-14 2015-07-15 中兴通讯股份有限公司 一种移动终端的虚拟存储的实现方法及装置
CN105025041A (zh) * 2015-08-25 2015-11-04 北京百度网讯科技有限公司 文件上传的方法、装置和系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600348A (zh) * 2018-04-11 2018-09-28 青岛通产伟博大数据运营有限公司 一种新的去中心化教育资源存储系统和方法
CN111586121A (zh) * 2020-04-27 2020-08-25 安超云软件有限公司 分布式的云手机应用安装方法、云平台、系统及存储介质
CN111586121B (zh) * 2020-04-27 2023-04-18 安超云软件有限公司 分布式的云手机应用安装方法、云平台、系统及存储介质

Also Published As

Publication number Publication date
CN106658045A (zh) 2017-05-10
US20180249190A1 (en) 2018-08-30

Similar Documents

Publication Publication Date Title
WO2017071512A1 (zh) 一种多媒体数据的云存储、云下载方法及相关装置
US11238165B2 (en) File encryption method, file decryption method, electronic device, and storage medium
WO2018177110A1 (zh) 媒体内容的许可方法以及设备
US10972807B2 (en) Dynamic watermarking of digital media content at point of transmission
US9756389B2 (en) Systems and methods for digital media storage and playback
JP5557897B2 (ja) デジタルメディアコンテンツ保護システム及び方法
US9026782B2 (en) Token-based entitlement verification for streaming media decryption
US9633029B2 (en) Method, server, and user terminal for providing and acquiring media content
EP2109248B1 (en) Method and device for testing consistency of numeric contents
KR20130056342A (ko) 네트워크 환경에서의 안전하고 효율적인 컨텐츠 스크리닝
CN110635906B (zh) 一种分布式块存储系统的密钥管理方法及装置
CN106961614B (zh) 一种加密视频网络播放的方法和系统
US20150205755A1 (en) Extensible Media Format System and Methods of Use
US8893307B2 (en) Information processing system and method for providing authorized content
US20170034554A1 (en) Method of delivering and protecting media content
TW201246884A (en) Method and apparatus for protecting cached streams
RU2667780C2 (ru) Способ верификации преобразования формата контента
US20210089683A1 (en) Data stream integrity
EP3103264B1 (en) Methods and apparatus for naming video content chunks
WO2012126257A1 (zh) 媒体数据处理方法及其装置
US20150095483A1 (en) Communications terminal, transfer terminal, and content publication method
US20120210128A1 (en) Information processing apparatus, information processing method and program
JP5573272B2 (ja) デジタルコンテンツの配信プログラム,再生プログラム,配信装置及び再生装置
TW201317823A (zh) 一種雲端安全儲存系統
CN113014956B (zh) 视频播放方法以及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16858947

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16858947

Country of ref document: EP

Kind code of ref document: A1