WO2017096786A1 - 一种视频流的在线播放方法、装置和系统 - Google Patents

一种视频流的在线播放方法、装置和系统 Download PDF

Info

Publication number
WO2017096786A1
WO2017096786A1 PCT/CN2016/088114 CN2016088114W WO2017096786A1 WO 2017096786 A1 WO2017096786 A1 WO 2017096786A1 CN 2016088114 W CN2016088114 W CN 2016088114W WO 2017096786 A1 WO2017096786 A1 WO 2017096786A1
Authority
WO
WIPO (PCT)
Prior art keywords
slice
video
data
encrypted
time parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2016/088114
Other languages
English (en)
French (fr)
Inventor
张巍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Le Holdings Beijing Co Ltd
LeTV Information Technology Beijing Co Ltd
Original Assignee
Le Holdings Beijing Co Ltd
LeTV Information Technology Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Le Holdings Beijing Co Ltd, LeTV Information Technology Beijing Co Ltd filed Critical Le Holdings Beijing Co Ltd
Priority to US15/247,409 priority Critical patent/US20170171279A1/en
Publication of WO2017096786A1 publication Critical patent/WO2017096786A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • 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/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
    • 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/2351Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving encryption of additional data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4353Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving decryption of additional data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4781Games
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Definitions

  • the present application relates to the field of encrypted video playback technologies, and in particular, to a method, device and system for online playback of a video stream.
  • the method of encrypting a video file through an encryption algorithm is used to solve the problem of security of video information.
  • the method has the advantages of high encryption reliability and high video quality.
  • the user when viewing the video encrypted by the method, the user needs to download the entire video file first, and then decrypt the entire video file, that is, the user must wait for the entire video to be downloaded. To watch the video. Therefore, the video encrypted by the method is not suitable for online play, and it is difficult to meet the requirements of real-time and controllability of the video data, which seriously affects the user experience.
  • the embodiment of the present application provides a method, a device, and a system for playing a video stream online, which are used to solve the problem that the encrypted video in the prior art cannot be played online in real time and seriously affects the user experience. technical problem.
  • the present application discloses an online playing method of a video stream, and the method includes the following steps:
  • the present application also discloses a method for online playing of a video stream, the method comprising the following steps:
  • an online playing device for a video stream including:
  • a slice obtaining module configured to acquire slice-by-slice encrypted slice data from a server according to a time parameter of the video slice, and decrypt the acquired slice data to obtain the video slice;
  • a video playing module configured to add the video slice to a buffer for online play.
  • an online playing device for a video stream including:
  • a data storage module configured to store slice-by-slice encrypted slice data of a video slice
  • a request receiving module configured to receive a request for the client to acquire the slice data, where the request includes a time parameter of the video slice;
  • the data sending module is configured to send the piecemeal encrypted slice data to the client for online play by the client.
  • the present application also discloses an online playing system for video streams. Including the client and server;
  • the server stores slice-by-slice encrypted slice data of a video slice
  • the client acquires the sliced data that has been encrypted piece by piece according to the time parameter of the video slice;
  • the client decrypts the acquired slice data, obtains the video slice, and adds the video slice to a buffer for online play.
  • the slice-based video encryption online playing method, device and system provided by the embodiments of the present invention use a slicing principle to slice the original video to obtain a plurality of slices, and respectively encrypt each slice. Then, each slice is decrypted and put into a buffer for online play.
  • video encryption can be easily realized, and the rate resolution can be easily switched, and the user does not need to purchase complicated commercial digital rights management.
  • DRM Digital Rights Management
  • FIG. 1 is a flowchart of a method for online playback of a video stream according to an embodiment of the present application
  • FIG. 2 is a flowchart of a method for online playback of a video stream according to an embodiment of the present application
  • FIG. 3 is a flowchart of a method for online playback of a video stream according to an embodiment of the present application
  • FIG. 4 is a flowchart of a method for online playing of a video stream according to an embodiment of the present application
  • FIG. 5 is a flowchart of a method for online playing of a video stream according to an embodiment of the present application
  • FIG. 6 is a flowchart of a method for online playback of a video stream according to an embodiment of the present application
  • FIG. 7 is a flowchart of a method for online playing of a video stream according to an embodiment of the present application.
  • FIG. 8 is a block diagram of an online playing device for a video stream according to an embodiment of the present application.
  • FIG. 9 is a block diagram of an online playing device for a video stream according to an embodiment of the present application.
  • FIG. 10 is a block diagram of an online playing system for a video stream according to an embodiment of the present application.
  • the online play method of the video stream is applicable to a terminal device, and the terminal device may be a mobile phone, a computer, a game console, or a car console. Tablet devices, medical equipment, fitness equipment, personal digital assistants, etc.
  • the method includes the following steps S10-S11.
  • step S10 the slice data encrypted by the slice is obtained from the server according to the time parameter of the video slice, and the obtained slice data is decrypted to obtain the video slice.
  • ffmpeg Fast Forward Mpeg
  • other video cutting tools to slice the video to be obtained to obtain multiple slices, such as an existing video. 60 seconds, one slice every 5 seconds, then 12 slices will be generated after cutting, then each slice will be encrypted piece by piece, and the encrypted slice will be stored in the server in time order for storage. .
  • the video encryption operation mainly includes all encryption and selective encryption.
  • all encryption methods are selected to encrypt all slices of the entire video stream, and each encrypted slice is timed. Stored in the server for the order.
  • the terminal device acquires slice data that has been encrypted piece by piece according to the video slice time parameter, and decrypts the acquired slice data to obtain a video slice.
  • step S11 the video slice is added to a buffer for online play.
  • the acquired video slices are sequentially added to the buffer area in time order, and are continuously played online in chronological order, wherein the played video may be the entire content of a movie, a TV series, a variety show, or the like, or may be a certain segment.
  • the location where the video starts or stops playing is up to the user.
  • the buffer is empty when initially played, and as the play progresses, try to expand the buffer data as much as possible.
  • the terminal device adds the video slice to a buffer for online play.
  • the terminal device acquires the sliced data that has been encrypted piece by piece according to the time parameter of the video slice, decrypts the obtained slice data, obtains the video slice, and adds the video slice to the buffer to For online play.
  • the time is set to 0.
  • step S10 may be further implemented as the following steps S100-S103.
  • step S100 the slice data of the video stream is requested from the server.
  • step S101 a preset slice specification of the video stream is acquired from the server.
  • the server When the server transcodes the complete video file into a slice stream for online play, first set a slice interface, in which the slice specification of the video stream is specified, and in the slice specification, each slice is sliced.
  • the lengths may be the same or different, for example, 5 seconds, 10 seconds, etc., or irregular slice lengths, for example, the first slice is 2 seconds, the second slice is 4 seconds, and the third slice is 5 seconds. second.
  • the above examples are used to exemplify the slice specifications and do not constitute a limitation on the scope of the present application.
  • step S102 the time parameter of the video slice is determined according to the preset slice specification and the slice data that has been encrypted piece by piece is acquired from the server.
  • the slice data is acquired according to the determined time parameter.
  • step S103 the acquired slice data is decrypted to obtain a video slice.
  • the slice specification of the video stream is first obtained, which facilitates fast acquisition of the slice data, especially for a video stream with different slice lengths, which is more convenient for requesting the slice data to the server quickly and accurately.
  • step S102 can be further implemented as the following steps S1020-S1021.
  • step S1020 the number of consecutively requested slices is determined according to the preset buffer time of the buffer and the preset slice specification.
  • the above examples are used to exemplify the number of slices of consecutive requests, and do not constitute a limitation on the scope of the present application.
  • step S1021 slice data that has been encrypted piece by piece is acquired from the server according to the number of slices.
  • the above examples are used to exemplify the continuous acquisition of the slice data, and do not constitute a limitation on the scope of the present application.
  • the slice data that can be continuously acquired is determined according to the buffer time and the slice specification, which is convenient for obtaining buffer data faster, shortening the waiting time of the online video from loading to starting playback, and improving the viewing experience of the user.
  • the method further includes the following steps S12-S13.
  • step S12 when an adjustment operation for the playback progress is detected, the time parameter closest to the target time of the adjustment operation is determined.
  • the player When the user performs an adjustment operation (seek operation) for the playback progress, the player first clears the buffer and finds a plurality of requests at a critical time point closest to the target time.
  • the number of requests is determined by the number of consecutively requested slices, for example, 3 times. .
  • the terminal device processes the time and selects a multiple of the slice size closest to the time point, for example, the slice size is 5 seconds, at this time
  • step S13 slice data is acquired from the server based on the most recent time parameter.
  • the user can implement operations such as fast forward, fast rewind, and specific time on-demand of the online video, and meet the requirements of real-time and controllability of the video data.
  • step S13 may be further implemented as the following steps S130-S132.
  • step S130 the data of the buffer is cleared.
  • the data in the buffer is first cleared to facilitate the subsequent acquisition of the slice data.
  • step S131 the slice data is acquired from the server according to the latest time parameter, and the acquired slice data is decrypted to obtain a video slice corresponding to the latest time parameter.
  • step S132 a video slice corresponding to the most recent time parameter is added to the buffer.
  • the buffer is cleared, which is convenient for quickly buffering the slice data starting from the time parameter closest to the target time, and shortening the video after the seek operation from loading to starting.
  • the waiting time for playback enhances the user's viewing experience.
  • FIG. 4 is a method for playing a video stream online according to an embodiment of the present application, which is applicable to a server, and the method includes the following steps S20-S22.
  • step S20 slice-by-slice encrypted slice data of the video slice is stored.
  • All video slices of the video stream have been encrypted piece by piece and stored in the server in time order.
  • step S21 the client receives a request for acquiring the slice data, and the request includes a time parameter of the video slice.
  • the request for acquiring the slice data includes a video stream identifier, and the server determines, according to the identifier, a video stream requested by the client.
  • the request to obtain the slice data also includes a time parameter of the video cut of the requested video stream.
  • step S22 the piece-by-piece encrypted slice data is sent to the client for online play by the client.
  • the slice data of the video slice corresponding to the time parameter is sent to the client, and the slice data is decrypted piece by piece by the client to obtain a video slice and played online.
  • the original video is sliced by using the slicing principle to obtain a plurality of slices, and each slice is separately encrypted, and then the slice data corresponding to the time parameter is sent to the client according to the request of the client.
  • video encryption can be easily implemented, and the rate resolution can be easily switched, and the user can encrypt and play the online video stream without purchasing complicated commercial DRM.
  • step S20 may be further implemented as the following steps S201-S202.
  • step S201 the video slice is subjected to encryption processing piece by piece.
  • the server processes the source video file into a video stream including multiple video slices, and encrypts each video slice separately by using a preset encryption algorithm to obtain slice-by-chip encrypted slice data.
  • the server can encrypt each video slice separately by the same encryption algorithm, and the client obtains each video slice for online play through corresponding decryption processing.
  • the server encrypts the video slice with different encryption algorithms, for example, encrypting the first 50 slices by the first encryption algorithm and encrypting the subsequent 500 slices by the second encryption algorithm.
  • the client can decrypt the slice data encrypted by the first encryption algorithm, and cannot decrypt the slice data encrypted by the second encryption algorithm, and the client can encrypt the slice of the second encryption algorithm after obtaining the corresponding authorization of the server. Data decryption.
  • copyright restrictions can be imposed on different parts of the video stream, and after the client pays the copyright fee of the video stream, the client can obtain the authorization of the server, and decrypt the slice data encrypted by the second encryption algorithm, thereby facilitating the video service.
  • the company manages the copyright of video resources.
  • step S202 slice-by-slice encrypted slice data of the video slice is stored.
  • the source video file is sliced and encrypted by the server, and the slice-by-chip encrypted slice data is saved locally.
  • step S20 may be further implemented as the following steps S203-S204.
  • step S203 slice-by-slice encrypted slice data of the video slice is received.
  • the video stream is sliced and encrypted piece by piece by other terminal devices or other servers, for example, a computer or a transcoding server used by an editor of a video service provider.
  • the video slice can be encrypted piece by piece by the same encryption algorithm; the video slice can also be encrypted with different encryption algorithms to achieve the copyright restriction on different parts of the video stream.
  • the server receives slice-by-slice encrypted slice data uploaded by other terminal devices or other servers.
  • step S204 slice-by-slice encrypted slice data of the video slice is stored.
  • the server is configured to store slice-by-slice encrypted slice data uploaded by other terminal devices or other servers, and the process of slicing and encrypting the source video file may be completed by other terminal devices or other servers to achieve equalization. Load to prevent excessive load on the server.
  • step S21 may be further implemented as the following steps S211-S213.
  • step S211 a request is received by the client to acquire slice data of the video stream.
  • the slice data of the corresponding video stream is requested according to the video stream identification, for example, a channel identifier, a program identifier, a file name, and the like.
  • step S212 returning a preset slice specification of the video stream to the client
  • a slice interface is usually set, and the slice interface includes a preset slice specification.
  • the length of each slice in the slice specification may be the same or different, for example, one slice of 5 seconds, one slice of 10 seconds, etc., or may be an irregular slice length, for example, the first slice is 2 seconds, and the second slice is 4 seconds.
  • the third piece is 5 seconds.
  • the server returns the preset slice specification corresponding to the video stream to the client.
  • step S213 the request for acquiring the slice data by the client according to the time parameter determined by the preset slice specification is received.
  • the request received by the server includes a time parameter determined according to a preset slice rule.
  • the slice data is acquired according to the determined time parameter.
  • the slice specification of the video stream is first obtained, which facilitates fast acquisition of the slice data, especially for a video stream with different slice lengths, which is more convenient for requesting the slice data to the server quickly and accurately.
  • FIG. 8 is a device for online playback of a video stream, which is located on the terminal device side, and includes:
  • the first slice obtaining module 10 is configured to acquire slice-by-slice encrypted slice data from a server according to a time parameter of the video slice, and decrypt the acquired slice data to obtain the video slice.
  • the video playing module 11 is configured to add the video slice to a buffer for online play.
  • the first slice obtaining module 10 includes:
  • a video requesting submodule configured to request, from the server, slice data of the video stream
  • a specification obtaining submodule configured to acquire, from the server, a preset slice specification of the video stream
  • a first slice obtaining submodule configured to determine a time parameter of the video slice according to the preset slice specification, and acquire slice data that has been encrypted piece by piece from a server.
  • the first slice acquisition submodule includes:
  • a slice quantity determining unit configured to determine a number of consecutively requested slices according to a preset buffer time of the buffer and the preset slice specification
  • a slice obtaining unit configured to acquire slice-by-slice encrypted slice data from the server according to the number of slices.
  • the apparatus further includes:
  • a parameter determining module configured to determine a time parameter that is closest to a target time of the adjustment operation when an adjustment operation for a play progress is detected
  • the second slice obtaining module is configured to acquire the slice data from the server according to the latest time parameter.
  • the second slice acquisition module includes:
  • a cache flushing submodule for clearing data of the buffer
  • a second slice obtaining submodule configured to acquire slice data from the server according to the latest time parameter, decrypt the acquired slice data, and obtain a video slice corresponding to the latest time parameter;
  • the cache adds a submodule that adds the video slice corresponding to the most recent time parameter to the buffer.
  • FIG. 9 is a device for online playback of a video stream, which is located on the server side and includes:
  • a data storage module 20 configured to store slice-by-slice encrypted slice data of a video slice
  • the request receiving module 21 is configured to receive a request for the client to acquire the slice data, where the request includes a time parameter of the video slice;
  • the data sending module 22 is configured to send the piece-by-piece encrypted slice data to the client for online playback by the client.
  • the data storage module 20 further includes:
  • An encryption submodule configured to perform encryption processing on the video slice by slice
  • the first storage submodule is configured to store slice-by-slice encrypted slice data of the video slice.
  • the data storage module 20 further includes:
  • a data receiving submodule configured to receive slice-by-slice encrypted slice data of the video slice
  • the second storage submodule is configured to store slice-by-slice encrypted slice data of the video slice.
  • the request receiving module 21 further includes:
  • a first receiving submodule configured to receive, by the client, a request for acquiring slice data of the video stream
  • a specification feedback submodule configured to return a preset slice specification of the video stream to the client
  • the second receiving submodule is configured to receive a request for the client to acquire the slice data according to the time parameter determined by the preset slice specification.
  • the embodiment of the present application further provides an online playing system for a video stream, which includes a client 30 and a server 31;
  • the server 31 stores slice-by-slice encrypted slice data of a video slice
  • the client 30 acquires slice data that has been encrypted piece by piece according to the time parameter of the video slice from the server 30;
  • the server 31 receives a request for the client 30 to acquire the slice data, and sends the slice-by-chip encrypted slice data to the client 30;
  • the client 30 decrypts the acquired slice data, obtains the video slice, and adds the video slice to a buffer for online play.
  • the original video is sliced by using the slicing principle to obtain a plurality of slices, and each slice is separately encrypted, and the client obtains slice-by-slice encrypted slice data from the server, and decrypts each slice. It can be played in the buffer for online playback.
  • video encryption can be easily realized, and the bit rate sharpness can be easily switched. Users can realize online video stream encryption and playback without purchasing complicated commercial DRM. .
  • the device embodiments described above are merely illustrative, wherein the description as separate components
  • the units may or may not be physically separate, 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 modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment. Those of ordinary skill in the art can understand and implement without deliberate labor.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请公开了一种视频流的在线播放方法、装置和系统,该方法包括:以下步骤:根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片;将所述视频切片添加至缓冲区,以供在线播放。本发明利用切片原理将原始视频进行切片,然后分片加密处理,可实现在线视频流的加密及播放操作,满足视频数据的实时性、可操控性等方面的要求。

Description

一种视频流的在线播放方法、装置和系统
交叉引用
本申请引用于2015年12月11日递交的名称为“一种视频流的在线播放方法、装置和系统”的第201510921181.6号中国专利申请,其通过引用被全部并入本申请。
技术领域
本申请属于加密视频播放技术领域,具体地说,涉及一种视频流的在线播放方法、装置和系统。
背景技术
随着全球信息化的快速发展,个人计算机、通讯、网络、多媒体技术等已经融入到人们的日常生活当中,图像、音频、视频等多媒体信息得到了广泛的应用,如视频点播、视频会议、监控系统等。随着社会对信息需求面的不断增大,不仅对视频信息的质量有越来越高的要求,还对视频信息的其他方面也提出了更多的要求,最明显的一个方面就是视频信息的安全性。
现有技术中主要采用将视频文件通过加密算法进行整体文件加密的方式,解决视频信息安全性的问题。该方法具有加密可靠性高、视频质量高等优点,然而需要观看采用该方法加密的视频时,用户需先下载整个视频文件,然后对整个视频文件进行解密,即用户必须等待整个视频全部下载完成后才能观看视频。因此,该方法加密的视频不适合在线播放,难以满足视频数据的实时性、可操控性等方面的要求,严重影响用户体验。
发明内容
有鉴于此,本申请实施例提供了一种视频流的在线播放方法、装置和系统,用以解决现有技术中加密视频不可实时在线播放、严重影响用户体验的 技术问题。
为了解决上述技术问题,本申请公开了一种视频流的在线播放方法,该方法包括以下步骤:
根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片;
将所述视频切片添加至缓冲区,以供在线播放。
为了解决上述技术问题,本申请还公开了一种视频流的在线播放方法,该方法包括以下步骤:
存储视频切片的已逐片加密的切片数据;
接收客户端获取所述切片数据的请求,所述请求包括所述视频切片的时间参数;
发送所述已逐片加密的切片数据至客户端,供所述客户端进行在线播放。
为了解决上述技术问题,本申请还公开了一种视频流的在线播放装置,包括:
切片获取模块,用于根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片;
视频播放模块,用于将所述视频切片添加至缓冲区,以供在线播放。
为了解决上述技术问题,本申请还公开了一种视频流的在线播放装置,包括:
数据存储模块,用于存储视频切片的已逐片加密的切片数据;
请求接收模块,用于接收客户端获取所述切片数据的请求,所述请求包括所述视频切片的时间参数;
数据发送模块,用于发送所述已逐片加密的切片数据至客户端,供所述客户端进行在线播放。
为了解决上述技术问题,本申请还公开了一种视频流的在线播放系统, 包括客户端和服务器;
所述服务器存储视频切片的已逐片加密的切片数据;
所述客户端根据视频切片的时间参数从服务器获取已逐片加密的切片数据;
所述服务器接收客户端获取所述切片数据的请求,发送所述已逐片加密的切片数据至所述客户端;
所述客户端对获取到的切片数据进行解密,获得所述视频切片,将所述视频切片添加至缓冲区,以供在线播放。
与现有技术相比,本申请实施例提供的基于切片的视频加密在线播放方法、装置和系统,利用切片原理将原始视频进行切片处理以获得多个切片,并分别对每个切片进行加密处理,然后将每个切片进行解密处理放入缓冲区中供在线播放,以此方式,可轻松实现视频的加密,并且可以方便的进行码率清晰度的切换,用户无需购买复杂的商业数字版权管理(Digital Rights Management,DRM)即可实现在线视频流的加密及播放操作。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种视频流的在线播放方法的流程图;
图2是本申请实施例提供的一种视频流的在线播放方法的流程图;
图3是本申请实施例提供的一种视频流的在线播放方法的流程图;
图4是本申请实施例提供的一种视频流的在线播放方法的流程图;
图5是本申请实施例提供的一种视频流的在线播放方法的流程图;
图6是本申请实施例提供的一种视频流的在线播放方法的流程图;
图7是本申请实施例提供的一种视频流的在线播放方法的流程图;
图8是本申请实施例提供的一种视频流的在线播放装置的框图;
图9是本申请实施例提供的一种视频流的在线播放装置的框图;
图10是本申请实施例提供的一种视频流的在线播放系统的框图;
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请实施例提供的一种视频流的在线播放方法的流程图,该视频流的在线播放方法适用于终端设备,终端设备可以是移动电话,计算机,游戏控制台,车载控制台,平板设备,医疗设备,健身设备,个人数字助理等。
如图1所示,该方法包括以下步骤S10-S11。
在步骤S10中,根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片。
首先,选择待播放的各类视频,例如电影、电视剧、综艺节目等,利用ffmpeg(Fast Forward Mpeg)或者其他视频切割工具对待播放的视频进行切片处理,以获得多个切片,例如现有一个视频60秒,每5秒钟一个切片,那么切割后将会生成12个切片文件,之后对每个切片进行逐片加密,加密后的切片以时间为序组成切片数据存储于服务器中供后续请求播放。
其中视频加密操作主要包括全部加密和选择性加密两种,本实施例中选择全部加密的方法加密整个视频流的全部切片,并且每个加密的切片以时间 为序存入服务器中。
终端设备根据视频切片时间参数从服务器获取已逐片加密的切片数据,并对获取到的切片数据进行解密,获得视频切片。
在步骤S11中,将所述视频切片添加至缓冲区,以供在线播放。
获取的视频切片以时间为序依次添加至缓存区中,并以时间先后顺序进行在线的连续播放,其中播放的视频可以是电影、电视剧、综艺节目等视频的全部内容,也可以是某个片段,视频开始播放或停止播放的位置由用户自行决定。最初播放时缓冲区为空,随着播放的进行,尽最大努力扩充缓冲区的数据。
终端设备将所述视频切片添加至缓冲区,以供在线播放。
本实施例中,终端设备根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片,将所述视频切片添加至缓冲区,以供在线播放。每次视频开始时将时间置为0,随着播放进度的进行,更新时间参数t,对切片数据进行请求,即视频播放开始时视频播放器请求的时间参数t=0,此时后端服务返回第一个切片,获取到第一个切片后播放器请求t=1×切片规格,t=2×切片规格的切片,后端返回相应的第二和第三个切片,获取切片数据然后进行解密。其利用切片原理将原始视频进行切片处理以获得多个切片,并分别对每个切片进行加密处理,然后将每个切片进行解密处理放入缓冲区中供在线播放,以此方式,可轻松实现视频的加密,并且可以方便的进行码率清晰度的切换,用户无需购买复杂的商业DRM,即可实现在线视频流的加密及播放操作。
在一个实施例中,如图2所示,步骤S10可进一步实施为以下步骤S100-S103。
在步骤S100中,向服务器请求视频流的切片数据。
在步骤S101中,从服务器获取视频流的预设切片规格。
在服务器将完整的视频文件转码成切片流供在线播放时,首先设置一切片接口,在该切片接口中规定了视频流的切片规格,在切片规格中各切片的 长度可以相同,也可以不同,例如5秒一片、10秒一片等,也可以是不规则的切片长度,例如第一片为2秒,第二片为4秒,从第三片起均为5秒。以上例子用于对切片规格进行示例性说明,不构成对本申请保护范围的限制。
在步骤S102中,根据预设切片规格确定视频切片的时间参数并从服务器获取已逐片加密的切片数据。
例如,获取到的切片规格为第一片为2秒,第二片为4秒,从第三片起均为5秒,则用于获取切片数据的时间参数分别为t=0、t=2、t=6、t=11、t=16……根据确定的时间参数获取切片数据。
在步骤S103中,对获取到的切片数据进行解密,获得视频切片。
本实施例中,先获取视频流的切片规格,利于快速的获取到切片数据,特别是针对切片长度不同的视频流时,更利于快速准确的向服务器请求切片数据。
在一个实施例中,如图3所示,步骤S102可进一步实施为以下步骤S1020-S1021。
在步骤S1020中,根据缓冲区的预设缓冲时间和预设切片规格确定连续请求的切片数量。
例如缓冲时间为15秒,预设切片规格为5秒,那么连续请求的切片数量为3,即连续请求t=0,t=5,t=10的切片数据,将请求的切片数据放入缓冲区。以上例子用于对连续请求的切片数量进行示例性说明,不构成对本申请保护范围的限制。
在步骤S1021中,根据切片数量从服务器获取已逐片加密的切片数据。
例如切片数量为3,预设切片规格为5秒,则从服务器连续获取t=0,t=5,t=10的已逐片加密的切片数据。以上例子用于对连续获取切片数据进行示例性说明,不构成对本申请保护范围的限制。
本实施例中,根据缓冲时间和切片规格确定可以连续获取的切片数据,有利于更快的获取缓冲数据,缩短在线视频从加载到开始播放的等待时间,提升用户的观看感受。
在一个实施例中,该方法进一步包括以下步骤S12-S13。
在步骤S12中,当检测到针对播放进度的调整操作时,确定距所述调整操作的目标时间最近的时间参数。
当用户进行针对播放进度的调整操作(seek操作)时,播放器首先清空缓冲区,找到距离目标时间最近的关键时间点进行多次请求,请求次数由连续请求的切片数量决定,例如为3次。
例如,观看者拖动播放器的进度条进行seek操作,拖到26秒,那么终端设备对时间进行处理,选择距离该时间点最近的切片规格的倍数,例如切片规格为5秒,此时离26秒最近的时间参数是t=25。
在步骤S13中,根据所述最近的时间参数从服务器获取切片数据。
根据最近的时间参数,例如离26秒最近的时间参数为t=25,那么从服务器获取时间参数t=25的切片数据。
本实施例中,用户可实现在线视频的快进、快退以及特定时间点播等操作,满足视频数据的实时性、可操控性等方面的要求。
在一个实施例中,步骤S13可进一步实施为以下步骤S130-S132。
在步骤S130中,清空所述缓冲区的数据。
根据所述最近的时间参数从服务器获取切片数据之前,首先清空缓冲区中的数据,以便于放置后续获取的切片数据。
在步骤S131中,根据所述最近的时间参数从服务器获取切片数据,对获取到的切片数据进行解密,获得与所述最近的时间参数对应的视频切片。
在步骤S132中,将与所述最近的时间参数对应的视频切片添加至缓冲区。
本实施例中,获取距离目标时间最近的时间参数对应的切片数据之前,清空缓冲区,有利于快速缓冲从距离目标时间最近的时间参数开始的切片数据,缩短seek操作后的视频从加载到开始播放的等待时间,提升用户观看感受。
图4是本申请实施例提供的一种视频流的在线播放方法,适用于服务器,该方法包括以下步骤S20-S22。
在步骤S20中,存储视频切片的已逐片加密的切片数据。
视频流的全部视频切片已被逐片加密,并以时间为序存储在服务器中。
在步骤S21中,接收客户端获取所述切片数据的请求,所述请求包括所述视频切片的时间参数。
获取所述切片数据的请求包括视频流标识,服务器根据该标识确定客户端请求的视频流。获取所述切片数据的请求还包括所请求视频流的视频切皮的时间参数。首个视频切片的时间参数被置为0,后续其他切片的时间参数根据切片规格(切片的时间长度)来确定,例如,每个视频切片的时间长度为5秒,则视频切片的时间参数分别为t=0、t=5、t=10……,服务器根据该时间参数确定客户端所请求的切片。
在步骤S22中,发送所述已逐片加密的切片数据至客户端,供所述客户端进行在线播放。
将与时间参数对应的视频切片的切片数据发送至客户端,由客户端对切片数据逐片进行解密,得到视频切片并在线播放。
本实施例其利用切片原理将原始视频进行切片处理以获得多个切片,并分别对每个切片进行加密处理,然后根据客户端的请求发送与时间参数对应的切片数据至客户端。以此方式,可轻松实现视频的加密,并且可以方便的进行码率清晰度的切换,用户无需购买复杂的商业DRM,即可实现在线视频流的加密及播放操作。
在一个实施例中,如图5所示,步骤S20可进一步实施为以下步骤S201-S202。
在步骤S201中,对视频切片逐片进行加密处理。
服务器对源视频文件进行切片处理,转化为包括多个视频切片的视频流,并通过预设的加密算法对每个视频切片分别进行加密处理,得到逐片加密的切片数据。
服务器可以相同的加密算法对每个视频切片分别加密,客户端通过对应的解密处理获得每个视频切片进行在线播放。或者,为了对应的不同的客户端权限,服务器以不同的加密算法对视频切片进行加密,例如,对前50个切片通过第一加密算法加密,对后续的500个切片通过第二加密算法加密。客户端默认可以对第一加密算法加密的切片数据的进行解密,而无法对第二加密算法加密的切片数据解密,客户端在获得服务器相应的授权后,才能够对第二加密算法加密的切片数据解密。这样,便可以对视频流的不同部分赋予版权限制,客户端在交付了该视频流的版权费用后,可以得到服务器的授权许可,对第二加密算法加密的切片数据进行解密,从而便于视频服务商对视频资源进行版权管理。
在步骤S202中,存储视频切片的已逐片加密的切片数据。
本实施例中,由服务器对源视频文件进行切片和加密处理,并将逐片加密的切片数据保存在本地。
在一个实施例中,如图6所示,步骤S20可进一步实施为以下步骤S203-S204。
在步骤S203中,接收所述视频切片的已逐片加密的切片数据。
通过其他终端设备或者其他服务器对视频流进行切片处理并逐片进行加密,例如,可以是视频服务商的编辑人员所使用的计算机或者转码服务器等。同样,可以用相同的加密算法对视频切片逐片进行加密;也可以用不同的加密算法对视频切皮进行加密,以达到对视频流的不同部分赋予版权限制的目的。
服务器接收其他终端设备或者其他服务器上传的已逐片加密的切片数据。
在步骤S204中,存储视频切片的已逐片加密的切片数据。
本实施例中,服务器用于存储其他终端设备或其他服务器上传的已逐片加密的切片数据,对源视频文件进行切片并逐片加密的处理可以由其他终端设备或其他服务器完成,以达到均衡负载,防止服务器负载压力过大的目的。
在另一个实施例中,如图7所示,步骤S21可进一步实施为以下步骤S211-S213。
在步骤S211中,接收客户端获取视频流的切片数据的请求。
根据视频流标识请求对应的视频流的切片数据,例如,频道标识、节目标识以及文件名称等等。
在步骤S212中,返回所述视频流的预设切片规格至所述客户端;
服务器在将源视频文件进行切片处理时,通常会设置一切片接口,在切片接口包括预设切片规格。在切片规格中各切片的长度可以相同,也可以不同,例如5秒一片、10秒一片等,也可以是不规则的切片长度,例如第一片为2秒,第二片为4秒,从第三片起均为5秒。服务器该视频流对应的预设切片规格返回至客户端。
在步骤S213中,接收客户端根据预设切片规格确定的时间参数获取切片数据的请求。
服务器接收到的请求中包括根据预设切片规则确定的时间参数。例如,获取到的预设切片规格为第一片为2秒,第二片为4秒,从第三片起均为5秒,则用于获取切片数据的时间参数分别为t=0、t=2、t=6、t=11、t=16……根据确定的时间参数获取切片数据。
本实施例中,先获取视频流的切片规格,利于快速的获取到切片数据,特别是针对切片长度不同的视频流时,更利于快速准确的向服务器请求切片数据。
以下为本申请的装置实施例,用以执行本申请实施例的上述方法。
图8是本申请实施例提供一种视频流的在线播放装置,位于终端设备侧,包括:
第一切片获取模块10,用于根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片;
视频播放模块11,用于将所述视频切片添加至缓冲区,以供在线播放。
在一个实施例中,所述第一切片获取模块10包括:
视频请求子模块,用于向服务器请求所述视频流的切片数据;
规格获取子模块,用于从所述服务器获取所述视频流的预设切片规格;
第一切片获取子模块,用于根据所述预设切片规格确定所述视频切片的时间参数并从服务器获取已逐片加密的切片数据。
在一个实施例中,所述第一切片获取子模块包括:
切片数量确定单元,用于根据所述缓冲区的预设缓冲时间和所述预设切片规格确定连续请求的切片数量;
切片获取单元,用于根据所述切片数量从服务器获取已逐片加密的切片数据。
在一个实施例中,所述装置还包括:
参数确定模块,用于当检测到针对播放进度的调整操作时,确定距所述调整操作的目标时间最近的时间参数;
第二切片获取模块,用于根据最近的时间参数从服务器获取切片数据。
在一个实施例中,所述第二切片获取模块包括:
缓存清空子模块,用于清空所述缓冲区的数据;
第二切片获取子模块,用于根据所述最近的时间参数从服务器获取切片数据,对获取到的切片数据进行解密,获得与所述最近的时间参数对应的视频切片;
缓存添加子模块,将与最近的时间参数对应的视频切片添加至缓冲区。
图9是本申请实施例提供一种视频流的在线播放装置,位于服务器侧,包括:
数据存储模块20,用于存储视频切片的已逐片加密的切片数据;
请求接收模块21,用于接收客户端获取所述切片数据的请求,所述请求包括所述视频切片的时间参数;
数据发送模块22,用于发送所述已逐片加密的切片数据至客户端,供所述客户端进行在线播放。
在一个实施例中,所述数据存储模块20进一步包括:
加密子模块,用于对所述视频切片逐片进行加密处理;
第一存储子模块,用于存储视频切片的已逐片加密的切片数据。
在一个实施例中,所述数据存储模块20进一步包括:
数据接收子模块,用于接收所述视频切片的已逐片加密的切片数据;
第二存储子模块,用于存储视频切片的已逐片加密的切片数据。
在一个实施例中,所述请求接收模块21进一步包括:
第一接收子模块,用于接收客户端获取所述视频流的切片数据的请求;
规格反馈子模块,用于返回所述视频流的预设切片规格至所述客户端;
第二接收子模块,用于接收客户端根据所述预设切片规格确定的时间参数获取所述切片数据的请求。
如图10所示,本申请实施例还提供了一种视频流的在线播放系统,其包括客户端30和服务器31;
所述服务器31存储视频切片的已逐片加密的切片数据;
所述客户端30根据视频切片的时间参数从服务器30获取已逐片加密的切片数据;
所述服务器31接收客户端30获取所述切片数据的请求,发送所述已逐片加密的切片数据至所述客户端30;
所述客户端30对获取到的切片数据进行解密,获得所述视频切片,将所述视频切片添加至缓冲区,以供在线播放。
本实施例中,利用切片原理将原始视频进行切片处理以获得多个切片,并分别对每个切片进行加密处理,客户端从服务器获取逐片加密的切片数据,将每个切片进行解密处理放入缓冲区中供在线播放,以此方式,可轻松实现视频的加密,并且可以方便的进行码率清晰度的切换,用户无需购买复杂的商业DRM,即可实现在线视频流的加密及播放操作。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明 的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

Claims (17)

  1. 一种视频流的在线播放方法,其特征在于,该方法包括以下步骤:
    根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片;
    将所述视频切片添加至缓冲区,以供在线播放。
  2. 根据权利要求1所述的方法,其特征在于,所述根据视频切片的时间参数从服务器获取已逐片加密的切片数据,包括:
    向服务器请求所述视频流的切片数据;
    从所述服务器获取所述视频流的预设切片规格;
    根据所述预设切片规格确定所述视频切片的时间参数并从服务器获取已逐片加密的切片数据。
  3. 根据权利要求2所述的方法,其特征在于,所述根据所述预设切片规格确定所述视频切片的时间参数并从服务器获取已逐片加密的切片数据,包括:
    根据缓冲区的预设缓冲时间和所述预设切片规格确定连续请求的切片数量;
    根据所述切片数量从服务器获取已逐片加密的切片数据。
  4. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    当检测到针对播放进度的调整操作时,确定距所述调整操作的目标时间最近的时间参数;
    根据所述最近的时间参数从服务器获取切片数据。
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述最近的时间参数从服务器获取切片数据,包括:
    清空所述缓冲区的数据;
    根据所述最近的时间参数从服务器获取切片数据,对获取到的切片数据进行解密,获得与所述最近的时间参数对应的视频切片;
    将与所述最近的时间参数对应的视频切片添加至缓冲区。
  6. 一种视频流的在线播放方法,其特征在于,该方法包括以下步骤:
    存储视频切片的已逐片加密的切片数据;
    接收客户端获取所述切片数据的请求,所述请求包括所述视频切片的时间参数;
    发送所述已逐片加密的切片数据至客户端,供所述客户端进行在线播放。
  7. 根据权利要求6所述的方法,其特征在于,所述存储视频切片的已逐片加密的切片数据之前,还包括:
    以不同的加密算法对视频切片逐片进行加密处理。
  8. 根据权利要求6所述的方法,其特征在于,所述接收客户端获取所述切片数据的请求,所述请求包括所述视频切片的时间参数包括:
    接收客户端获取所述视频流的切片数据的请求;
    返回所述视频流的预设切片规格至所述客户端;
    接收客户端根据所述预设切片规格确定的时间参数获取所述切片数据的请求。
  9. 一种视频流的在线播放装置,其特征在于,包括:
    第一切片获取模块,用于根据视频切片的时间参数从服务器获取已逐片加密的切片数据,对获取到的切片数据进行解密,获得所述视频切片;
    视频播放模块,用于将所述视频切片添加至缓冲区,以供在线播放。
  10. 根据权利要求9所述的装置,其特征在于,所述第一切片获取模块包括:
    视频请求子模块,用于向服务器请求所述视频流的切片数据;
    规格获取子模块,用于从所述服务器获取所述视频流的预设切片规格;
    第一切片获取子模块,用于根据所述预设切片规格确定所述视频切片的时间参数并从服务器获取已逐片加密的切片数据。
  11. 根据权利要求10所述的装置,其特征在于,所述第一切片获取子模块包括:
    切片数量确定单元,用于根据所述缓冲区的预设缓冲时间和所述预设切片规格确定连续请求的切片数量;
    切片获取单元,用于根据所述切片数量从服务器获取已逐片加密的切片数据。
  12. 根据权利要求9所述的装置,其特征在于,所述装置还包括:
    参数确定模块,用于当检测到针对播放进度的调整操作时,确定距所述调整操作的目标时间最近的时间参数;
    第二切片获取模块,用于根据所述最近的时间参数从服务器获取切片数据。
  13. 根据权利要求12所述的装置,其特征在于,所述第二切片获取模块包括:
    缓存清空子模块,用于清空所述缓冲区的数据;
    第二切片获取子模块,用于根据所述最近的时间参数从服务器获取切片数据,对获取到的切片数据进行解密,获得与所述最近的时间参数对应的视频切片;
    缓存添加子模块,将与最近的时间参数对应的视频切片添加至缓冲区。
  14. 一种视频流的在线播放装置,其特征在于,包括:
    数据存储模块,用于存储视频切片的已逐片加密的切片数据;
    请求接收模块,用于接收客户端获取所述切片数据的请求,所述请求包括所述视频切片的时间参数;
    数据发送模块,用于发送所述已逐片加密的切片数据至客户端,供所述客户端进行在线播放。
  15. 根据权利要求14所述的装置,其特征在于,所述数据存储模块包括:
    加密子模块,用于对所述视频切片逐片进行加密处理;
    第一存储子模块,用于存储视频切片的已逐片加密的切片数据。
  16. 根据权利要求14所述的装置,其特征在于,所述请求接收模块包括:
    第一接收子模块,用于接收客户端获取所述视频流的切片数据的请求;
    规格反馈子模块,用于返回所述视频流的预设切片规格至所述客户端;
    第二接收子模块,用于接收客户端根据所述预设切片规格确定的时间参数获取所述切片数据的请求。
  17. 一种视频流的在线播放系统,其特征在于,包括客户端和服务器;
    所述服务器存储视频切片的已逐片加密的切片数据;
    所述客户端根据视频切片的时间参数从服务器获取已逐片加密的切片数据;
    所述服务器接收客户端获取所述切片数据的请求,发送所述已逐片加密的切片数据至所述客户端;
    所述客户端对获取到的切片数据进行解密,获得所述视频切片,将所述视频切片添加至缓冲区,以供在线播放。
PCT/CN2016/088114 2015-12-11 2016-07-01 一种视频流的在线播放方法、装置和系统 Ceased WO2017096786A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/247,409 US20170171279A1 (en) 2015-12-11 2016-08-25 Method and terminal for online playing video stream

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510921181.6A CN105898376A (zh) 2015-12-11 2015-12-11 一种视频流的在线播放方法、装置和系统
CN201510921181.6 2015-12-11

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/247,409 Continuation US20170171279A1 (en) 2015-12-11 2016-08-25 Method and terminal for online playing video stream

Publications (1)

Publication Number Publication Date
WO2017096786A1 true WO2017096786A1 (zh) 2017-06-15

Family

ID=57002438

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/088114 Ceased WO2017096786A1 (zh) 2015-12-11 2016-07-01 一种视频流的在线播放方法、装置和系统

Country Status (3)

Country Link
US (1) US20170171279A1 (zh)
CN (1) CN105898376A (zh)
WO (1) WO2017096786A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113014981A (zh) * 2019-12-19 2021-06-22 海信视像科技股份有限公司 视频播放方法、装置、电子设备及可读存储介质

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106658062A (zh) * 2016-12-20 2017-05-10 广东东田数码科技有限公司 一种基于随机加密的视频切片加密与播放方法
US10209887B2 (en) * 2016-12-20 2019-02-19 Texas Instruments Incorporated Streaming engine with fetch ahead hysteresis
CN107809681B (zh) * 2017-10-19 2019-01-04 广东省南方数字电视无线传播有限公司 切片视频传输的方法及装置
CN109714299B (zh) * 2017-10-26 2022-01-11 创盛视联数码科技(北京)有限公司 加密视频播放的方法
CN110248219A (zh) 2018-03-08 2019-09-17 腾讯科技(深圳)有限公司 视频播放方法、装置及设备
US10778547B2 (en) 2018-04-26 2020-09-15 At&T Intellectual Property I, L.P. System for determining a predicted buffer condition based on flow metrics and classifier rules generated in response to the creation of training data sets
CN110138749B (zh) * 2019-04-23 2021-12-21 华为技术有限公司 一种数据安全保护方法及相关设备
CN110493641A (zh) * 2019-08-06 2019-11-22 东软集团股份有限公司 一种视频文件加解密方法及装置
CN111510745B (zh) * 2020-03-27 2021-01-19 曹新 一种互联网视频数据加密传输方法
CN113727184B (zh) * 2020-05-25 2023-11-03 京东城市(北京)数字科技有限公司 视频播放方法、装置、系统、存储介质以及电子设备
CN112565906A (zh) * 2020-11-05 2021-03-26 深圳市麦谷科技有限公司 一种在线视频的点播处理方法及系统
CN112953936A (zh) * 2021-02-18 2021-06-11 泰州中科树人信息科技有限公司 基于zksr协议的加密视频播放技术
CN112822518A (zh) * 2021-04-19 2021-05-18 浙江华创视讯科技有限公司 视频播放方法、装置、系统、电子设备和存储介质
CN114510668B (zh) * 2022-02-17 2025-04-18 平安国际智慧城市科技股份有限公司 数据显示方法、装置、计算机设备及存储介质
CN115767136A (zh) * 2022-12-18 2023-03-07 人民卫生电子音像出版社有限公司 基于医学视频加密播放综合管理平台系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7660416B1 (en) * 2005-01-11 2010-02-09 Sample Digital Holdings Llc System and method for media content collaboration throughout a media production process
CN102255886A (zh) * 2011-04-02 2011-11-23 南京邮电大学 一种流媒体点播系统的加密和解密方法
US20130219178A1 (en) * 2012-02-17 2013-08-22 Christopher Peter Xiques Media Player Security for Full Length Episodes
CN103297452A (zh) * 2012-02-24 2013-09-11 北京对角巷科技发展有限公司 一种在互联网发布和直播流媒体的方法及系统
CN103825885A (zh) * 2014-01-23 2014-05-28 广东顺德中山大学卡内基梅隆大学国际联合研究院 一种互联网内容加密发布方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413358B (zh) * 2011-08-12 2014-04-16 青岛海信传媒网络技术有限公司 流媒体文件存储和播放的方法、装置及系统
CN104349176B (zh) * 2013-07-30 2017-11-10 中国电信股份有限公司 自适应流媒体系统、下载方法及流媒体服务器、用户终端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7660416B1 (en) * 2005-01-11 2010-02-09 Sample Digital Holdings Llc System and method for media content collaboration throughout a media production process
CN102255886A (zh) * 2011-04-02 2011-11-23 南京邮电大学 一种流媒体点播系统的加密和解密方法
US20130219178A1 (en) * 2012-02-17 2013-08-22 Christopher Peter Xiques Media Player Security for Full Length Episodes
CN103297452A (zh) * 2012-02-24 2013-09-11 北京对角巷科技发展有限公司 一种在互联网发布和直播流媒体的方法及系统
CN103825885A (zh) * 2014-01-23 2014-05-28 广东顺德中山大学卡内基梅隆大学国际联合研究院 一种互联网内容加密发布方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113014981A (zh) * 2019-12-19 2021-06-22 海信视像科技股份有限公司 视频播放方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN105898376A (zh) 2016-08-24
US20170171279A1 (en) 2017-06-15

Similar Documents

Publication Publication Date Title
WO2017096786A1 (zh) 一种视频流的在线播放方法、装置和系统
JP6856747B2 (ja) コンテンツ部分をストリーミングするための要求ベースのエンコーディング
US9332051B2 (en) Media manifest file generation for adaptive streaming cost management
CN105282627B (zh) 一种获取直播视频切片的方法及服务器
US8612353B2 (en) Publishing ingested video content to a video provisioning system
US8850054B2 (en) Hypertext transfer protocol live streaming
US9282355B2 (en) Delayed video-on-demand streaming for enhanced user experience and network capacity optimization
US9356821B1 (en) Streaming content delivery system and method
US11528128B2 (en) Encryption management, content recording management, and playback management in a network environment
US20140108585A1 (en) Multimedia content management system
CN109348292B (zh) 一种基于切片文件字节阈值的视频切片方法
CN109525893A (zh) 基于切片文件时长阈值的视频切片方法
US12425668B2 (en) Systems and methods for managing access to content assets
KR20140062479A (ko) 상부 레벨 인덱스 파일들을 자동적으로 생성하기 위한 시스템들 및 방법들
EP2930935A1 (en) Method of delivering media content
CN114679608B (zh) Vr视频加密播放方法、服务器、用户端、系统、电子设备和介质
US11647237B1 (en) Method and apparatus for secure video manifest/playlist generation and playback
CN101160965B (zh) 实现网络电视节目预览的方法、加密装置、版权中心系统和用户终端设备
EP2651123B1 (en) Personal network video recording device and method for operation of a personal network video recording device.
JP6063952B2 (ja) マルチメディア資産を表示する方法、関連するシステム、メディアクライアント、および関連するメディアサーバ
US11611798B2 (en) IDR fracking for glass to glass latency reduction
US10893331B1 (en) Subtitle processing for devices with limited memory
KR101604201B1 (ko) 분산 트랜스코딩 방법 및 이를 이용한 분산 트랜스코딩 시스템
CN120512575A (zh) 基于非对称加密的视频播放方法、装置、电子设备及介质
CN103220574A (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: 16871990

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: 16871990

Country of ref document: EP

Kind code of ref document: A1