CN110944228B - Video stream protection method, device, computing device and readable medium - Google Patents

Video stream protection method, device, computing device and readable medium Download PDF

Info

Publication number
CN110944228B
CN110944228B CN201811106445.2A CN201811106445A CN110944228B CN 110944228 B CN110944228 B CN 110944228B CN 201811106445 A CN201811106445 A CN 201811106445A CN 110944228 B CN110944228 B CN 110944228B
Authority
CN
China
Prior art keywords
address
video
video playing
transport stream
index file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811106445.2A
Other languages
Chinese (zh)
Other versions
CN110944228A (en
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.)
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
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 China Mobile Communications Group Co Ltd, China Mobile Communications Ltd Research Institute filed Critical China Mobile Communications Group Co Ltd
Priority to CN201811106445.2A priority Critical patent/CN110944228B/en
Publication of CN110944228A publication Critical patent/CN110944228A/en
Application granted granted Critical
Publication of CN110944228B publication Critical patent/CN110944228B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • 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
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The invention discloses a video stream protection method, a video stream protection device and a storage medium, which are used for improving the safety of video playing. The video stream protection method comprises the following steps: receiving a video playing request, wherein the video playing request carries an equipment identifier, and the video playing request is sent by a requesting party according to a preset video playing period when the starting time of each video playing period is reached; generating an index file storage address of the current video playing period according to the equipment identifier and the current timestamp, and filling a transport stream slice file address contained in the index file; generating a playing address of the current video playing period according to the storage address of the index file; and returning the generated playing address to the requester.

Description

Video stream protection method, device, computing device and readable medium
Technical Field
The present invention relates to the field of video processing technologies, and in particular, to a method and an apparatus for protecting a video stream, and a storage medium.
Background
Hls (HTTP Live streaming) is a streaming media network transport protocol based on HTTP (hypertext transfer protocol). It works by dividing the entire stream into small HTTP-based files for downloading, only a portion of each time. While the media stream is playing, the client may choose to download the same resource from many different alternate sources at different rates, allowing the streaming media session to accommodate different data rates. When starting a streaming media session, the client downloads an extended M3U (M3u8) playlist file containing metadata for finding available media streams.
When a user requests HLS live streaming, the HTTP interface of a service server is requested, a fixed m3u8 address (such as HTTP:// domainA/stream.m3u8) is obtained, a Web player can recognize the address, the content in the stream.m3u8 is downloaded in real time, the address of a TS (transport stream) video slice is written in the m3u8, such as (HTTP:// domainA/stream/1.TS and HTTP:// domainA/stream/2.TS, HTTP:// domainA/stream/3.TS, etc.), the TS video slice can be directly decoded and played by the player, therefore, if the address of the m3u8 is leaked, the live video content is leaked, in a monitoring system, the m3u8 address is usually bound with a device, so that the video stream of the device is unsafe, once the m3u8 address is leaked, the video stream of the device can be viewed on line at any time, the safety of video playing is reduced.
Disclosure of Invention
The embodiment of the invention provides a video stream protection method, a video stream protection device and a storage medium, which are used for improving the safety of video playing.
In a first aspect, a video stream protection method is provided, including:
receiving a video playing request, wherein the video playing request carries an equipment identifier, and the video playing request is sent by a requesting party according to a preset video playing period at the beginning of each video playing period;
generating an index file storage address of the current video playing period according to the equipment identifier and the current timestamp, and filling a transport stream slice file address contained in the index file;
generating a playing address of the current video playing period according to the storage address of the index file;
and returning the generated playing address to the requester.
Optionally, generating an address corresponding to each transport stream slice file included in the index file, where the address includes:
generating a random number corresponding to each transport stream slice file; and
and generating an address corresponding to the transport stream slice file by using the equipment identifier, the current timestamp and the random number.
Optionally, the method for protecting a video stream according to the embodiment of the present invention, after returning the generated play address to the requesting party, further includes:
receiving a video playback request, wherein the video playback request carries the equipment identifier and playback time information;
generating an index file storage address corresponding to the playback video according to the equipment identifier and the playback time information;
generating a return visit playing address according to an index file storage address corresponding to the generated playback video;
and returning the playback playing address to the requester.
Optionally, the filling the transport stream slice file address contained in the index file specifically includes:
and according to preset transport stream slicing time length, filling transport stream slicing file addresses contained in the index file by taking the transport stream slicing time length as a unit.
Optionally, generating an index file storage address of the current video playing period according to the device identifier and the current timestamp, specifically including:
and generating an index file storage address of the video playing period by using an address confusion algorithm according to the equipment identifier and the current timestamp.
In a second aspect, there is provided a video stream protection apparatus, including:
the device comprises a first receiving unit, a second receiving unit and a processing unit, wherein the first receiving unit is used for receiving a video playing request, and the video playing request carries a device identifier, and the video playing request is sent by a requesting party according to a preset video playing period at the beginning of each video playing period;
the first generating unit is used for generating an index file storage address of the current video playing period according to the equipment identifier and the current timestamp;
a padding unit for padding transport stream slice file addresses contained in the index file;
the second generating unit is used for generating a playing address of the current video playing period according to the storage address of the index file;
and the first returning unit is used for returning the generated playing address to the requester.
Optionally, the video stream protection device provided in the embodiment of the present invention further includes:
a third generating unit, configured to generate, for each transport stream slice file, a random number corresponding to the random transport stream slice file;
and the fourth generating unit is used for generating the address corresponding to the transport stream slice file by using the equipment identifier, the current timestamp and the random number.
Optionally, the video stream protection device provided in the embodiment of the present invention further includes:
a second receiving unit, configured to receive a video playback request after the first returning unit returns the generated play address to the requestor, where the video playback request carries the device identifier and playback time information;
a fifth generating unit, configured to generate an index file storage address corresponding to the playback video according to the device identifier and the playback time information;
the sixth generating unit is used for generating a return visit playing address according to the index file storage address corresponding to the generated playback video;
and the second returning unit is used for returning the playback playing address to the requester.
Optionally, the padding unit is configured to pad transport stream slice file addresses included in the index file by using the transport stream slice duration as a unit according to a preset transport stream slice duration.
Optionally, the first generating unit is specifically configured to generate an index file storage address of the video playing period by using an address obfuscation algorithm according to the device identifier and the current timestamp.
In a third aspect, a computing device is provided, comprising at least one processor and at least one memory, wherein the memory stores a computer program, and when the program is executed by the processor, the program causes the processor to perform the steps of any of the video stream protection methods described above.
In a fourth aspect, a computer-readable medium is provided, which stores a computer program executable by a terminal device, and when the program runs on the terminal device, the program causes the terminal device to execute the steps of any one of the video stream protection methods described above.
In the video stream protection method provided by the embodiment of the invention, a requesting party initiates a video playing request to a network side according to a set video playing period, after the network side receives the video playing request, an index file storage address of the current video playing period is generated according to an equipment identifier and a current timestamp, and then a playing address of the current video playing period is generated according to the index file storage address and returned to the requesting method.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the invention and not to limit the invention. In the drawings:
FIG. 1 is a schematic diagram illustrating a principle of dynamic update of a playing address according to an embodiment of the present invention;
fig. 2 is a schematic flowchart illustrating a method for implementing video stream protection by a network-side server according to an embodiment of the present invention;
fig. 3 is a schematic diagram of an address of a TS slice file included in an index file generated by a network side server according to an embodiment of the present invention;
fig. 4 is a schematic flowchart illustrating a method for implementing video stream protection by a terminal device according to an embodiment of the present invention;
FIG. 5 is a schematic structural diagram of a video stream protection apparatus according to an embodiment of the present invention;
FIG. 6 is a schematic structural diagram of a computing device according to an embodiment of the present invention.
Detailed Description
In order to improve the security of video playing, embodiments of the present invention provide a video stream protection method, apparatus, and storage medium.
The terminal device in the present invention may be a Personal Computer (PC), a tablet PC, a Personal Digital Assistant (PDA), a Personal Communication Service (PCs) phone, a notebook, a mobile phone, or other terminal devices, or may be a Computer having a mobile terminal, for example, a portable, pocket, hand-held, Computer-embedded or vehicle-mounted mobile device, which can provide voice and/or data connectivity to a user, and exchange voice and/or data with a wireless access network.
Furthermore, the terms "first," "second," and the like in the description and in the claims, and in the drawings, in the embodiments of the invention are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that the embodiments described herein may be practiced otherwise than as specifically illustrated or described herein.
Reference herein to "a plurality or a number" means two or more. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
In order to improve the security of video playing, in the embodiment of the invention, the playing address of the video stream is dynamically updated, and the address confusion is used for preventing a malicious user from predicting the next transport stream slice address so as to realize the protection of the content.
The preferred embodiments of the present invention will be described below with reference to the accompanying drawings of the specification, it being understood that the preferred embodiments described herein are merely for illustrating and explaining the present invention, and are not intended to limit the present invention, and that the embodiments and features of the embodiments in the present invention may be combined with each other without conflict.
As shown in fig. 1, which is a schematic diagram illustrating a dynamic update principle of a play address of a video stream in an embodiment of the present invention, it can be known from fig. 1 that a real video stream address of a device is not fixed any more, but is dynamically updated, and is updated every preset video play period, so that even if a malicious user obtains a play address of a video stream, the malicious user cannot obtain a corresponding video stream because the malicious user does not know a play address of a next period, and thus the security of video play is ensured. Further, in the embodiment of the present invention, the addresses of each transport stream slice file included in the playing index file (e.g., the mu8 file) are obfuscated, so that, after acquiring the transport stream slice address of the current video playing period, a malicious user cannot acquire the address of the next transport stream slice through the acquired transport stream slice address, and thus, in combination with a secure HTTP interface, even if the malicious user acquires the transport stream slice address of a legitimate user, the malicious user can only acquire the content of one transport stream slice, and cannot guess the next transport stream slice and the video stream of the next period, thereby improving the security of video playing.
In the embodiment of the invention, the video playing address is a real live streaming address on the server, and the video playing address can ensure that only a very small part of video streaming fragments can be stolen even if the video playing real address is illegally acquired through address confusion and dynamic updating, because the video playing addresses are real addresses and are not addresses which are mapped or hidden through an encryption means.
As shown in fig. 2, which is a schematic flow chart of an implementation of a video stream protection method according to an embodiment of the present invention, the method may include the following steps:
and S21, receiving a video playing request.
In specific implementation, when a user needs to check a live video stream of a video acquisition device, the user can use a terminal device to send a video playing request to a network side server, wherein the sent video playing request carries a device identifier of the video acquisition device for acquiring a video.
In the embodiment of the invention, in order to improve the safety of video playing, a user can send a video playing request to the network side server when the starting time of each video playing period reaches according to the preset video playing period. Taking the video acquisition period as 50s as an example, the terminal device sends a video playing request to the network side server every 50 s.
And S22, generating an index file storage address of the current video playing period according to the current timestamp and the equipment identifier carried in the video playing request, and filling the transport stream slice file address contained in the index file.
And after receiving the video playing request, the network side server generates an index file storage address of the current video playing period according to the equipment identifier carried in the video playing request and the current timestamp. In one embodiment, the index file storage address may be an m3u8 address.
And S23, generating a playing address of the current video playing period according to the storage address of the index file.
And S24, returning the generated playing address to the requester.
In this embodiment of the present invention, in order to improve the security of video streaming, in step S22, the network side server may generate an index file storage address of a video playing period by using an address obfuscation algorithm according to the device identifier and the current timestamp carried in the video playing request, that is, perform obfuscation processing on the index file storage address.
In one embodiment, the address obfuscation algorithm may be SHA256, and in this embodiment, the network side server may generate the index file storage address by using the address obfuscation algorithm according to the device identifier, the timestamp, and the user token. The user token may be key information for user authentication. Because the original text cannot be deduced reversely due to the irreversibility of the SHA256, the obfuscated address is secure enough, does not expose the original text information, and has enough obfuscation.
It should be understood that, in a specific implementation, the parameters used for generating the storage address of the index file are not limited to the three types described above, and the network side server may also generate the storage address of the index file according to at least one of the parameters. Or the network side server may also generate the storage address of the index file according to other parameters, for example, the network side generates the index file according to the device identifier, the timestamp, and the random number, which is not limited in the embodiment of the present invention.
For example, taking a video playing period as 50s as an example, when a video stream is transmitted, a TS slice may be generated every 10s for the 50s video stream, and a storage address corresponding to each TS slice needs to be filled in the index file, so that the network side server continues to fill in the TS slice file address in the index file after generating the index file storage address. In specific implementation, the filling may be performed in a manner of filling the TS slice file address in the index file according to the prior art.
In the embodiment of the invention, in order to further improve the security of video playing, the network side server may confuse the address of each transport stream slice file, so that even if the m3u8 address is leaked, a malicious user may only obtain the current TS slice, but not obtain other TS slices.
Specifically, for each transport stream slice file contained in the index file, the network side server may generate an address corresponding to the transport stream slice file according to the following procedure: generating a random number corresponding to each transport stream slice file; and generating an address corresponding to the transport stream slice file by using the equipment identifier, the current timestamp and the generated random number carried in the video playing request.
In specific implementation, the network side server may fill a transport stream slice file address included in the index file with a preset transport stream slice duration as a unit. Taking the transport stream slicing time length as t seconds as an example, the network side server fills the address of the next TS slice file in the unit of t seconds and writes the address into the database.
For a better understanding of the present invention, the following description is given in conjunction with specific examples, and may include the following steps:
step 1, a player installed in the terminal equipment sends a video playing request to a network side server, wherein the video playing request carries an equipment identifier of video acquisition equipment requested by a user.
And 2, calling a video stream acquisition service interface by the network side server.
For example, the network side server calls address: http:// domain/api/getlivestream/, wherein the carried parameter is a device identifier (deviceID) carried in the video playing request, and the deviceID is 65010000001327758550
And 3, calling an address confusion module by the service interface to generate an index file storage address.
In this example, explanation will be given by taking SHA1 encryption as an example. Example parameters are as follows:
salt:testpass
pass: 65010000001327758550_1526272365 (Equipment ID + Unix timestamp)
output:6bf7bcda6e1b2d94b4084dccce58ffa9a14b701b
And step 4, filling addresses corresponding to the TS slices contained in the index file.
In this example, taking the timestamp + the device identifier + the serial number + 5-bit random number as an example, the generated TS address is as follows:
1526272365_65010000001327758550_0000035046_02539.ts
and 5, writing the index file into a server disk, and generating a video playing address of the current video playing period according to the storage address of the index file.
In this example, the playing address of the current video playing period generated by the network side server is as follows: http:// domain/live/6 bf7bcda6e1b2d94b4084dcce58ffa9a14b701b.m3u8
And 6, returning the generated video playing address to the player.
The carried TS slice file address is shown in fig. 3.
As can be seen from fig. 3, the TS slice file address in the video playing address returned by the network side server to the player installed in the terminal device is highly unpredictable, and the user cannot guess the address of the next TS slice, so that the TS video slice can be effectively protected.
In specific implementation, after a video playing period is finished, the playing of the video stream content in the current video playing period is finished, the player needs to request the video playing address from the network side server again, the device identifier requested at this time is unchanged, the timestamp requested is updated to the timestamp after the period, and the assumption is that: 1526272415. After receiving the video playing request, the network side server generates a video playing address of the current video playing period by adopting the above process, assuming that:
http:// domain/live/89 e30aa503ae 7be3ab175c2c7a09ab71f8df19ede.m3u8, in the embodiment of the present invention, the video playing address in different video playing cycles cannot be estimated at all according to the video playing address in the previous video playing cycle, so that the video playing security is improved. And repeating the steps until the user finishes watching.
In specific implementation, the video playing period, that is, the interval of dynamic update of the video playing address, may be adjusted according to actual needs, and may be adjusted according to the needs of the content security level in actual setting, which is as little as several seconds, and may be as long as several days, and this is not limited in the embodiment of the present invention.
In specific implementation, the video stream protection method provided in the embodiment of the present invention may further include the following steps: receiving a video playback request, wherein the video playback request carries the equipment identifier and playback time information; generating an index file storage address corresponding to the playback video according to the equipment identifier and the playback time information; generating a return visit playing address according to an index file storage address corresponding to the generated playback video; and returning the playback playing address to the requester.
In specific implementation, after receiving a video review request, a network side server generates an index file storage address corresponding to a playback video by using an address obfuscation algorithm according to a device identifier of a video capture device for capturing the video and review time information requested to be reviewed by a user. Specifically, when a user needs to view a playback video, a video acquisition device identifier for acquiring the playback video and input playback time can be selected in a player, the player sends a video playback request to a network side server according to the device identifier and the playback time provided by the user, the network side server generates an index file storage address corresponding to the playback video according to the playback time and the device identifier, and generates a playback address according to the index file storage address corresponding to the generated playback video; and returning the playback playing address to the requesting party, wherein the specific implementation process is similar to the generation of the index file storage address in the video playing process, and details are not repeated here.
In the embodiment of the invention, the logic of the related storage part is the same as the existing logic for storing the HLS live stream file, and the TS file stream and the m3u8 both need to store addresses in a database, and in the embodiment of the invention, because the m3u8 address is dynamically updated, the m3u8 file needs to be classified and stored, under a simplified scene, address confusion can be removed, random numbers are directly added, and in this case, the m3u8 address contains equipment identification and random content, and is still safe enough, and the TS file is stored in a dynamic slice form before, so the storage logic does not involve adjustment.
In addition, in specific implementation, different function switches can be set according to the security level required by the device, for example, the m3u8 address update interval and the algorithm strength required by address obfuscation can be set, and in addition, because the storage logic of the system is not affected at all, the method provided by the embodiment of the invention can also be set to be a switchable mode in implementation, and no confusion or inconsistency in content is caused.
As shown in fig. 4, an implementation flow diagram of a video stream protection method provided by the present invention for a video player installed in a terminal device is implemented, and the implementation flow diagram may include the following steps:
and S41, sending a video playing request to the network side server.
The sent video playing request carries an equipment identifier of video acquisition equipment for acquiring time frequency.
And S42, receiving the video playing address returned by the network side server.
In specific implementation, the network side server may generate a video playing address according to the flow shown in fig. 2 and provide the video playing address to the terminal device.
And S43, playing the video stream according to the received video playing address.
S44, judging whether the end of the video provided by the video playing address is reached, if so, executing the step S41, and if not, executing the step S43.
In specific implementation, when the user ends the video playing, the flow shown in fig. 4 ends.
Therefore, on the player side, the player does not need to perform any verification, and only needs to request the next video playing address from the network side server when no next Transport Stream (TS) slice file exists.
The embodiment of the invention provides a dynamic updating method for an HLS video playing address, which is used for preventing the video address leakage from causing the persistent exposure of real-time video stream content. According to the method provided by the embodiment of the invention, the concept of address confusion is provided, so that the user is prevented from deducing the access address of the next video slice not through the m3u8 file but through the rule of the TS address, the address confusion of m3u8 and the TS slice is increased, and the safety is further ensured. The storage logic of the m3u8 and the TS file is further provided, the storage logic is designed on the premise that the storage logic and the structure of the HLS live broadcast system are changed as little as possible or not, and the system is changed very little by implementing the method. The video stream protection method provided by the embodiment of the invention is more flexible, safer and low in implementation cost, does not conflict with other video content protection technologies, and can be used in parallel with a hotlink protection technology and a content encryption technology if necessary to realize multiple protection.
Based on the same inventive concept, the embodiment of the invention also provides a mobile terminal interface icon arrangement device and a mobile terminal, and as the problem solving principle of the device and the equipment is similar to the mobile terminal interface icon arrangement method, the implementation of the device and the equipment can refer to the implementation of the method, and repeated parts are not described again.
As shown in fig. 5, which is a schematic structural diagram of a video stream protection apparatus according to an embodiment of the present invention, the video stream protection apparatus includes:
the first receiving unit 51 is configured to receive a video playing request, where the video playing request carries an apparatus identifier, and the video playing request is sent by a requesting party according to a preset video playing period at the beginning of each video playing period;
a first generating unit 52, configured to generate an index file storage address of a current video playing period according to the device identifier and the current timestamp;
a padding unit 53 for padding transport stream slice file addresses contained in the index file;
a second generating unit 54, configured to generate a playing address of the current video playing period according to the storage address of the index file;
a first returning unit 55, configured to return the generated play address to the requester.
Optionally, the video stream protection device provided in the embodiment of the present invention further includes:
a third generating unit, configured to generate, for each transport stream slice file, a random number corresponding to the random transport stream slice file;
and the fourth generating unit is used for generating the address corresponding to the transport stream slice file by using the equipment identifier, the current timestamp and the random number.
Optionally, the video stream protection device provided in the embodiment of the present invention further includes:
a second receiving unit, configured to receive a video playback request after the first returning unit 55 returns the generated play address to the requestor, where the video playback request carries the device identifier and playback time information;
a fifth generating unit, configured to generate an index file storage address corresponding to the playback video according to the device identifier and the playback time information;
the sixth generating unit is used for generating a return visit playing address according to the index file storage address corresponding to the generated playback video;
and the second returning unit is used for returning the playback playing address to the requester.
Optionally, the padding unit is configured to pad transport stream slice file addresses included in the index file by using the transport stream slice duration as a unit according to a preset transport stream slice duration.
Optionally, the first generating unit is specifically configured to generate an index file storage address of the video playing period by using an address obfuscation algorithm according to the device identifier and the current timestamp.
For convenience of description, the above parts are separately described as modules (or units) according to functional division. Of course, the functionality of the various modules (or units) may be implemented in the same or in multiple pieces of software or hardware in practicing the invention.
Having described the video stream protection method and apparatus according to an exemplary embodiment of the present invention, a computing apparatus according to another exemplary embodiment of the present invention is described next.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or program product. Thus, various aspects of the invention may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.) or an embodiment combining hardware and software aspects that may all generally be referred to herein as a "circuit," module "or" system.
In some possible embodiments, a computing device according to the present invention may include at least one processor, and at least one memory. Wherein the memory stores program code which, when executed by the processor, causes the processor to perform the steps of the video stream protection method according to various exemplary embodiments of the present invention described above in this specification. For example, the processor may execute step S21 shown in fig. 2, receive a video playing request, and step S22, generate an index file storage address of a current video playing period according to a current timestamp and a device identifier carried in the video playing request, and fill a transport stream slice file address contained in the index file; step S23, generating the playing address of the current video playing period according to the storage address of the index file; and step S24, returning the generated playing address to the requester.
The computing device 60 according to this embodiment of the invention is described below with reference to fig. 6. The computing device 60 shown in fig. 6 is only an example and should not impose any limitations on the functionality or scope of use of embodiments of the present invention.
As shown in fig. 6, the computing apparatus 60 is in the form of a general purpose computing device. Components of computing device 60 may include, but are not limited to: the at least one processor 61, the at least one memory 62, and a bus 63 connecting the various system components (including the memory 62 and the processor 61).
Bus 63 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a processor, or a local bus using any of a variety of bus architectures.
The memory 62 may include readable media in the form of volatile memory, such as Random Access Memory (RAM)621 and/or cache memory 622, and may further include Read Only Memory (ROM) 623.
The memory 62 may also include a program/utility 625 having a set (at least one) of program modules 624, such program modules 624 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may comprise an implementation of a network environment.
Computing device 60 may also communicate with one or more external devices 64 (e.g., keyboard, pointing device, etc.), with one or more devices that enable a user to interact with computing device 60, and/or with any devices (e.g., router, modem, etc.) that enable computing device 60 to communicate with one or more other computing devices. Such communication may be through an input/output (I/O) interface 65. Also, computing device 60 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the internet) through network adapter 66. As shown, network adapter 66 communicates with other modules for computing device 60 over bus 63. It should be understood that although not shown in the figures, other hardware and/or software modules may be used in conjunction with computing device 60, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
In some possible embodiments, various aspects of the video stream protection method provided by the present invention may also be implemented in the form of a program product, which includes program code for causing a computer device to execute the steps in the video stream protection method according to various exemplary embodiments of the present invention described above in this specification when the program product runs on the computer device, for example, the computer device may execute the steps S21 shown in fig. 2, receive a video playing request, and step S22, generate an index file storage address of a current video playing period according to a current timestamp and a device identifier carried in the video playing request, and fill a transport stream slice file address contained in the index file; step S23, generating the playing address of the current video playing period according to the storage address of the index file; and step S24, returning the generated playing address to the requester.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The program product for video playback of embodiments of the present invention may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a computing device. However, the program product of the present invention is not limited in this regard and, in the present document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A readable signal medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device over any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., over the internet using an internet service provider).
It should be noted that although several units or sub-units of the apparatus are mentioned in the above detailed description, such division is merely exemplary and not mandatory. Indeed, the features and functions of two or more of the units described above may be embodied in one unit, according to embodiments of the invention. Conversely, the features and functions of one unit described above may be further divided into embodiments by a plurality of units.
Moreover, while the operations of the method of the invention are depicted in the drawings in a particular order, this does not require or imply that the operations must be performed in this particular order, or that all of the illustrated operations must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (8)

1. A method for video stream protection, comprising:
receiving a video playing request, wherein the video playing request carries an equipment identifier, and the video playing request is sent by a requesting party according to a preset video playing period at the beginning of each video playing period;
generating an index file storage address of a video playing period by using an address confusion algorithm according to the equipment identifier and the current timestamp, and filling a transport stream slice file address contained in the index file;
generating a playing address of the current video playing period according to the storage address of the index file;
returning the generated playing address to the requester;
generating the transport stream slice file address for each transport stream slice file contained in the index file comprises:
generating a random number corresponding to each transport stream slice file; and
and generating an address corresponding to the transport stream slice file by using the equipment identifier, the current timestamp and the random number.
2. The method of claim 1, after returning the generated play address to the requestor, further comprising:
receiving a video playback request, wherein the video playback request carries the equipment identifier and playback time information;
generating an index file storage address corresponding to the playback video according to the equipment identifier and the playback time information;
generating a return visit playing address according to an index file storage address corresponding to the generated playback video;
and returning the playback playing address to the requester.
3. The method of claim 1, wherein populating transport stream slice file addresses contained in the index file specifically includes:
and according to preset transport stream slicing time length, filling transport stream slicing file addresses contained in the index file by taking the transport stream slicing time length as a unit.
4. A video stream protection apparatus, comprising:
the device comprises a first receiving unit, a second receiving unit and a processing unit, wherein the first receiving unit is used for receiving a video playing request, and the video playing request carries a device identifier, and the video playing request is sent by a requesting party according to a preset video playing period at the beginning of each video playing period;
the first generation unit is used for generating an index file storage address of a video playing period by using an address confusion algorithm according to the equipment identifier and the current timestamp;
a padding unit for padding transport stream slice file addresses contained in the index file;
the second generating unit is used for generating a playing address of the current video playing period according to the storage address of the index file;
the first returning unit is used for returning the generated playing address to the requester;
a third generating unit, configured to generate, for each transport stream slice file, a random number corresponding to the transport stream slice file;
and the fourth generating unit is used for generating the address corresponding to the transport stream slice file by using the equipment identifier, the current timestamp and the random number.
5. The apparatus of claim 4, further comprising:
a second receiving unit, configured to receive a video playback request after the first returning unit returns the generated play address to the requestor, where the video playback request carries the device identifier and playback time information;
a fifth generating unit, configured to generate an index file storage address corresponding to the playback video according to the device identifier and the playback time information;
the sixth generating unit is used for generating a return visit playing address according to the index file storage address corresponding to the generated playback video;
and the second returning unit is used for returning the playback playing address to the requester.
6. The apparatus of claim 4,
and the filling unit is used for filling the transport stream slice file address contained in the index file by taking the transport stream slice time length as a unit according to the preset transport stream slice time length.
7. A computing device comprising at least one processor and at least one memory, wherein the memory stores a computer program that, when executed by the processor, causes the processor to perform the steps of the method of any of claims 1 to 3.
8. A computer-readable medium, in which a computer program executable by a terminal device is stored, which program, when run on the terminal device, causes the terminal device to carry out the steps of the method according to any one of claims 1 to 3.
CN201811106445.2A 2018-09-21 2018-09-21 Video stream protection method, device, computing device and readable medium Active CN110944228B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811106445.2A CN110944228B (en) 2018-09-21 2018-09-21 Video stream protection method, device, computing device and readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811106445.2A CN110944228B (en) 2018-09-21 2018-09-21 Video stream protection method, device, computing device and readable medium

Publications (2)

Publication Number Publication Date
CN110944228A CN110944228A (en) 2020-03-31
CN110944228B true CN110944228B (en) 2022-04-01

Family

ID=69905365

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811106445.2A Active CN110944228B (en) 2018-09-21 2018-09-21 Video stream protection method, device, computing device and readable medium

Country Status (1)

Country Link
CN (1) CN110944228B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111511044B (en) * 2020-04-16 2023-05-05 蓓安科仪(北京)技术有限公司 Data communication method for realizing telemedicine based on 5G network
CN114630143B (en) * 2020-12-10 2024-03-22 浙江宇视科技有限公司 Video stream storage method, device, electronic equipment and storage medium
CN112637669A (en) * 2020-12-18 2021-04-09 北京浪潮数据技术有限公司 Streaming media data processing method and related device
CN113038196A (en) * 2021-03-17 2021-06-25 大陆投资(中国)有限公司 Sender device and receiver device for transmitting media data in a communication network
CN113810780B (en) * 2021-11-17 2022-04-26 三节课信息咨询(北京)有限公司 Video transmission method, device and storage medium
WO2023133960A1 (en) * 2022-01-12 2023-07-20 成都拟合未来科技有限公司 Display device, method and system

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101272205B (en) * 2008-05-14 2011-07-13 中兴通讯股份有限公司 Transmission method and device of mobile multimedia broadcasting service parameter information
US8351446B2 (en) * 2009-02-19 2013-01-08 Michel Ghosn Device, method and system for wireless communication and uses thereof
US8429169B2 (en) * 2010-07-30 2013-04-23 Bytemobile, Inc. Systems and methods for video cache indexing
CN102214282A (en) * 2011-05-27 2011-10-12 苏州海客科技有限公司 Protection method suitable for multimedia data files in portable system
US10318480B2 (en) * 2011-10-06 2019-06-11 Dell Products L.P. System and method for efficient inode enumeration
US9020331B2 (en) * 2011-10-21 2015-04-28 Mitsubishi Electric Corporation Video image information playback method and video image information playback device
CN103974086A (en) * 2013-02-05 2014-08-06 天津奇异果科技有限公司 Palm network school based on H.264 encoding and spread spectrum watermarking
US11057446B2 (en) * 2015-05-14 2021-07-06 Bright Data Ltd. System and method for streaming content from multiple servers
CN105142005A (en) * 2015-09-21 2015-12-09 深圳市九洲电器有限公司 Program recording sharing method and system
CN106936770B (en) * 2015-12-30 2019-06-14 玲珑视界科技(北京)有限公司 A kind of HLS index list encrypted antitheft catenary system and method
CN107786526A (en) * 2016-08-31 2018-03-09 北京优朋普乐科技有限公司 Anti-stealing link method, client and server system
EP3866491A1 (en) * 2016-12-08 2021-08-18 GN Hearing A/S Fitting devices, server devices and methods of remote configuration of a hearing device
CN107870973B (en) * 2017-09-20 2021-11-26 广东东为信息技术有限公司 File storage system capable of accelerating simultaneous playback of multiple paths of monitoring
CN108235064A (en) * 2017-12-05 2018-06-29 广州高清视信数码科技股份有限公司 HLS stream media live broadcasting methods and system
CN108540868B (en) * 2018-05-16 2019-04-16 北京百度网讯科技有限公司 Processing method, device, server, terminal and the storage medium of HLS live streaming

Also Published As

Publication number Publication date
CN110944228A (en) 2020-03-31

Similar Documents

Publication Publication Date Title
CN110944228B (en) Video stream protection method, device, computing device and readable medium
CN103957436B (en) A kind of video anti-stealing link method based on OTT business
CN107528865B (en) File downloading method and system
US20070172065A1 (en) Apparatus and method for moving rights object from one device to another device via server
US9369288B1 (en) Video data delivery protection
US8788849B2 (en) Method and apparatus for protecting cached streams
CN106658045A (en) Cloud storage and cloud download methods for multimedia data and related devices
CN110011950B (en) Authentication method and device for video stream address
CN110381334B (en) Anti-stealing-link method, device and system
CN109474600B (en) Account binding method, system, device and equipment
EP3618428A1 (en) Method and system for storing video, and method for accessing video
WO2019001082A1 (en) Authentication method and device for video stream address
CN110365688B (en) Anti-stealing-link method and device
KR20080027198A (en) Method of implementing a state tracking mechanism in a communications session between a server and a client system
CN105245975A (en) Media data processing method and apparatus
CN116015767A (en) Data processing method, device, equipment and medium
WO2019001084A1 (en) Authentication method and device for video stream address
CN108235067B (en) Authentication method and device for video stream address
CN104284215B (en) A kind for the treatment of method and apparatus of video request
CN112560003A (en) User authority management method and device
CN113329242A (en) Resource management method and device
CN107026828A (en) A kind of anti-stealing link method cached based on internet and internet caching
CN111182010B (en) Local service providing method and device
WO2021092809A1 (en) Function calling method and device, electronic device, and computer-readable medium
CN110008654B (en) Electronic file processing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant