CN106101745A - A kind of video broadcasting method and system - Google Patents
A kind of video broadcasting method and system Download PDFInfo
- Publication number
- CN106101745A CN106101745A CN201610417612.XA CN201610417612A CN106101745A CN 106101745 A CN106101745 A CN 106101745A CN 201610417612 A CN201610417612 A CN 201610417612A CN 106101745 A CN106101745 A CN 106101745A
- Authority
- CN
- China
- Prior art keywords
- top box
- box terminal
- video stream
- server
- video
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000004044 response Effects 0.000 claims description 34
- 238000012795 verification Methods 0.000 claims description 24
- 238000010586 diagram Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/254—Management at additional data server, e.g. shopping server, rights management server
- H04N21/2541—Rights Management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25816—Management of client data involving client authentication
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Graphics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The invention discloses a kind of video broadcasting method and system, in order to alleviate the burden of the server providing video source.Described method includes: STB terminal sends video playback request to application server;Application server receives and asks according to described video playback, to STB terminal feedback check string;Described check strings includes the mark of STB terminal and the channels/programs of request time, request broadcasting identifies, the video flowing of the channels/programs of request broadcasting logical address on streaming server;STB terminal receives check strings and is transmitted to streaming server;Streaming server is according to the check strings received, the video flowing that the channels/programs that the request of acquisition is play starts from described request time;The video stream of acquisition is given the STB terminal that in described check strings, the mark of STB terminal is corresponding by streaming server;STB terminal receives the video flowing that streaming server is sent.The method can alleviate not only provides the burden playing the single server controlling but also providing video flowing.
Description
Technical Field
The invention relates to the technical field of multimedia, in particular to a video playing method and a video playing system.
Background
With the development of network technology, television program pictures provided by television set-top box terminals to television audiences are clearer, signals are more stable, and forms are more diverse, so that the television set-top box terminals are popular with the television audiences. However, with the rapid development of the number of the television set-top terminals, more and more downloading requests are made to the server providing the video source of the television program, which brings heavy burden to the server.
Disclosure of Invention
The invention provides a video playing method and a video playing system, which are used for reducing the burden of a server for providing a video source.
The invention provides a video playing method, which comprises the following steps:
the set top box terminal sends a video playing request to an application server;
the application server receives a video playing request sent by the set top box terminal;
the application server feeds back a check string to the set top box terminal according to the video playing request; the check string comprises an identifier of the set top box terminal and request time thereof, an identifier of a channel/program requested to be played, and a logical address of a video stream of the channel/program requested to be played on the streaming server;
the set-top box terminal receives the check string and forwards the check string to a streaming server;
the streaming server receives the check string sent by the set-top box terminal;
the streaming server acquires the video stream of the channel/program requested to be played from the request time according to the check string;
the stream server sends the acquired video stream to the set top box terminal corresponding to the identification of the set top box terminal in the check string;
and the set-top box terminal receives the video stream sent by the streaming server.
Some beneficial effects of the embodiments of the present invention may include:
according to the video playing method provided by the invention, the functions of the existing server are differentiated, the application server realizes the authority authentication and playing control of the set top box terminal, and the streaming server is used for storing and providing the video stream, so that the burden of a single server for providing the playing control and the video stream is reduced; in addition, in the process of providing the video stream, the request information of the set top box terminal is transmitted through the check string corresponding to the set top box terminal, so that the stream server can check conveniently and quickly find the required video stream according to the logic address in the check string.
In one embodiment, the feeding back, by the application server, the check string to the set-top box terminal according to the video playing request includes:
the application server judges whether the set-top box terminal has the authority to play the channel/program requested to be played by the video playing request;
and when the set-top box terminal has the permission to play the channel/program requested to be played by the video playing request, feeding back the verification string to the set-top box terminal.
In this embodiment, when the application server determines that the set-top box terminal has the right to play the channel/program requested to be played by the video playing request, the application server generates the check string and feeds the check string back to the set-top box terminal, and the set-top box terminal directly transmits the check string to the streaming server when requesting from the streaming server, so that the check information is conveniently transmitted and the video stream acquisition speed is high.
In one embodiment, the check string is an encrypted check string with a check code;
the streaming server obtains the video stream of the channel/program requested to be played from the request time according to the check string, and the method comprises the following steps:
the stream server decompiles the check string to obtain a check code, an identifier of the set-top box terminal and request time thereof, a channel/program identifier requested to be played, and a logical address of a channel/program video stream requested to be played on the stream server;
the stream server checks whether the check code is correct or not;
when the check code is correct, the streaming server obtains the video stream of the channel/program corresponding to the channel/program identifier requested to be played from the request time from the logical address.
In the embodiment, in order to prevent errors in the transmission process of the check string, the application server adds the check code to the check string and encrypts and transmits the check string, when the stream server receives the check string, the stream server firstly performs decompiling and decrypting on the check string, verifies whether the check code is correct, and further acquires the video stream of the channel/program requested to be played by the set top box terminal from the request time according to the logic address information carried by the check string when the check code is correct.
In one embodiment, the video playing method further includes:
the set top box terminal sends a heartbeat request to the application server every preset time period from the moment when sending a video playing request to the application server; the stream server sends the acquired video stream to the set top box terminal corresponding to the identification of the set top box terminal in the check string, and sends an inquiry of whether to continue providing the video stream to the application server every preset time interval; the heartbeat request comprises an identifier of the set-top box terminal, and the inquiry of whether to continuously provide the video stream comprises the identifier of the set-top box terminal;
when the application server receives the inquiry of whether to continuously provide the video stream each time, judging whether a heartbeat request sent by the set top box terminal corresponding to the identifier of the set top box terminal in the inquiry of whether to continuously provide the video stream is received within the preset time length before the current moment; if yes, feeding back a response for continuously providing the video stream to the streaming server; otherwise, feeding back a response of stopping providing the video stream to the streaming server; wherein, the response of continuing/stopping providing the video stream comprises the identification of the set-top box terminal;
and the streaming server continues/stops providing the video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the response of continuing/stopping providing the video stream according to the received response of continuing/stopping providing the video stream.
In the embodiment, because the broadcasting control is performed on the application server, the streaming server is not controlled, and the application server does not know whether the network between the streaming server and the set top box keeps connection or not, the set top box terminal sends heartbeat requests to the application server every preset time period, the application server receives the requests of the set top box terminal regularly, the connection between the set top box terminal and the streaming server is considered to be normal, and whether the set top box terminal is continuously served or not is fed back to the streaming server.
In one embodiment, the preset time period is 5 minutes.
The invention provides a video playing system, comprising: the system comprises a set-top box terminal, an application server and a streaming server;
the set-top box terminal is used for sending a video playing request to the application server; the system is also used for receiving the check string sent by the application server and forwarding the check string to the streaming server; the video server is also used for receiving the video stream sent by the streaming server;
the application server is used for receiving a video playing request sent by the set-top box terminal and feeding back a verification string to the set-top box terminal according to the video playing request; the check string comprises an identifier of the set top box terminal and request time thereof, an identifier of a channel/program requested to be played, and a logical address of a video stream of the channel/program requested to be played on the streaming server;
and the stream server is used for receiving the check string sent by the set-top box terminal, acquiring the video stream of the channel/program requested to be played from the request time according to the check string, and sending the acquired video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the check string.
In one embodiment, the application server comprises:
the permission judging module is used for judging whether the set-top box terminal has permission to play the channel/program requested to be played by the video playing request according to the video playing request sent by the set-top box terminal;
and the verification string generating module is used for generating the verification string and feeding back the verification string to the set-top box terminal when the permission judging module judges that the set-top box terminal has the permission to play the channel/program requested to be played by the video playing request.
In one embodiment, the check string fed back to the set-top box terminal by the application server is an encrypted check string with a check code;
the streaming server includes:
the decompiling module is used for decompiling the check string sent by the set top box terminal to obtain a check code, the identifier and the request time of the set top box terminal, the identifier of the channel/program requested to be played, the logic address of the channel/program video stream requested to be played on the streaming server, sending the obtained check code to the check module, and sending the obtained identifier and the request time of the set top box terminal, the identifier of the channel/program requested to be played, and the logic address of the channel/program video stream requested to be played on the streaming server to the acquisition module;
the verification module is used for verifying whether the verification code is correct or not, and if the verification code is correct, an acquisition instruction is sent to the acquisition module;
and the acquisition module is used for acquiring the video stream of the channel/program corresponding to the channel/program identifier requested to be played from the request time from the received logic address according to the acquisition instruction, and sending the acquired video stream to the set top box terminal corresponding to the identifier of the set top box terminal.
In one embodiment, the set-top box terminal is further configured to send a heartbeat request to the application server every preset time interval, starting at the time when the video playing request is sent to the application server; the heartbeat request comprises an identifier of the set-top box terminal;
the stream server is further configured to send an inquiry about whether to continue providing the video stream to the application server every preset time interval starting at a time when the acquired video stream is sent to the set top box terminal corresponding to the identifier of the set top box terminal in the check string; the server is also used for continuing/stopping providing the video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the response of continuing/stopping providing the video stream according to the response of continuing/stopping providing the video stream fed back by the application server; wherein the query of whether to continue providing the video stream comprises an identification of the set-top terminal;
the application server is further configured to, each time the inquiry about whether to continue providing the video stream is received, determine whether a heartbeat request sent by the set top box terminal is received within a preset time period before the current time, where the heartbeat request is corresponding to an identifier of the set top box terminal in the inquiry about whether to continue providing the video stream; if yes, feeding back a response for continuously providing the video stream to the streaming server; otherwise, feeding back a response of stopping providing the video stream to the streaming server; wherein the response of continuing/stopping providing the video stream comprises the identification of the set-top box terminal.
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.
The technical solution of the present invention is further described in detail by the accompanying drawings and embodiments.
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 principles of the invention and not to limit the invention. In the drawings:
fig. 1 is a flowchart of a video playing method according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating another video playing method according to an embodiment of the present invention;
fig. 3 is a flowchart of a video playing method according to an embodiment of the present invention;
fig. 4 is a block diagram of a video playing system according to an embodiment of the present invention;
fig. 5 is a block diagram of another video playing system according to an embodiment of the present invention;
fig. 6 is a block diagram of another video playing system according to an embodiment of the present invention.
Detailed Description
The preferred embodiments of the present invention will be described in conjunction with the accompanying drawings, and it will be understood that they are described herein for the purpose of illustration and explanation and not limitation.
Fig. 1 is a flowchart of a video playing method according to an embodiment of the present invention. As shown in fig. 1, the method comprises the following steps S101-S108:
s101: and the set-top box terminal sends a video playing request to the application server.
S102: and the application server receives a video playing request sent by the set-top box terminal.
S103: the application server feeds back the check string to the set-top box terminal according to the video playing request; the check string comprises an identifier of the set-top box terminal and request time thereof, an identifier of a channel/program requested to be played, and a logical address of a video stream of the channel/program requested to be played on the streaming server. The application server records the logical address of the video stream of each channel/program on the streaming server in advance.
In this step, when receiving a video playing request from a set-top box terminal, an application server determines whether the set-top box terminal has the right to play a channel/program requested to be played by the video playing request; when the set-top box terminal has the authority to play the channel/program requested to be played by the video playing request, the verification string is generated and fed back to the set-top box terminal, so that the authority judgment of the requested set-top box terminal is realized, the video stream is prevented from being sent to the set-top box terminal without the authority, and the burden of a stream server is reduced.
S104: and the set-top box terminal receives the check string and forwards the check string to the streaming server.
S105: the streaming server receives the check string sent by the set-top box terminal.
S106: and the streaming server acquires the video stream of the channel/program requested to be played from the request time according to the received check string.
S107: the stream server sends the acquired video stream to the set top box terminal corresponding to the identification of the set top box terminal in the check string;
s108: the set-top box terminal receives the video stream sent by the streaming server.
According to the video playing method provided by the invention, the functions of the existing server are differentiated, the application server realizes the authority authentication and playing control of the set top box terminal, and the streaming server is used for storing and providing the video stream, so that the burden of a single server for providing the playing control and the video stream is reduced; in addition, in the process of providing the video stream, the request information of the set top box terminal is transmitted through the check string corresponding to the set top box terminal, so that the stream server can check conveniently and quickly find the required video stream according to the logic address in the check string, the information transmission between the application server and the stream server is reduced, and the method is convenient and effective.
Fig. 2 is a flowchart of another video playing method according to an embodiment of the present invention. As shown in fig. 2, includes steps S201-210:
s201: and the set-top box terminal sends a video playing request to the application server.
S202: and the application server receives a video playing request sent by the set-top box terminal.
S203: and the application server feeds back the encrypted verification string with the verification code to the set-top box terminal according to the video playing request.
The application server is similar to that in S103, when the set-top box terminal has the right to play the channel/program requested to be played by the video play request, generates a check string, adds a check code to the check string, encrypts the check string, and sends the check string to the set-top box terminal.
S204: and the set-top box terminal receives the check string and forwards the check string to the streaming server.
S205: the streaming server receives the check string sent by the set-top box terminal.
S206: the stream server decompiles the check string to obtain the check code, the identifier of the set-top box terminal and the request time thereof, the identifier of the channel/program requested to be played, and the logical address of the video stream of the channel/program requested to be played on the stream server.
S207: the stream server checks whether the check code obtained by decompiling is correct or not; if yes, go to step S208; otherwise, ending the flow.
S208: and the streaming server acquires the video stream of the channel/program corresponding to the identifier of the channel/program requested to be played, which is obtained by decompiling, from the logic address (namely the logic address of the channel/program video stream requested to be played by the current set-top box terminal on the streaming server) obtained by decompiling.
S209: the stream server sends the acquired video stream to the set top box terminal corresponding to the identification of the set top box terminal in the check string;
s210: the set-top box terminal receives the video stream sent by the streaming server.
In the embodiment, in order to prevent errors in the transmission process of the check string, the application server adds the check code to the check string and encrypts the check code and then sends the check string to the set top box terminal, when the stream server receives the check string, the stream server firstly performs decompiling and decrypting on the check string to verify whether the check code is correct, and then further obtains the video stream of the channel/program requested to be played by the set top box terminal from the request time according to the logical address information carried by the check string when the check code is correct.
In the above embodiment, since the playout control is on the application server, the streaming server does not control. The application server does not know whether the network between the streaming server and the set-top box is connected or not, and after the streaming server provides a video stream to the set-top box terminal in S107/S209, the connection between the streaming server and the set-top box terminal may be disconnected at a certain time, but the application server does not know that the streaming server cannot inform the streaming server to continue to serve the set-top box terminal or inform the streaming server to stop serving the disconnected set-top box terminal to reduce the load of the streaming server.
In order to avoid the foregoing situation, in a preferred embodiment, in the video playing method shown in fig. 1 or fig. 2, the set-top box terminal sends a heartbeat request to the application server every preset time interval, starting at a request time when the set-top box terminal sends a video playing request to the application server (i.e., step S101/S201); the stream server sends the acquired video stream to the set top box terminal corresponding to the identifier of the set top box terminal in the check string (namely step S107/S209), and the stream server sends an inquiry whether to continuously provide the video stream to the application server at intervals of preset time; wherein, the heartbeat request comprises the identification of the set-top box terminal, and the inquiry whether to continuously provide the video stream comprises the identification of the set-top box terminal. For example: if the set-top box terminal sends a video playing request to the application server at the time T0, sending a heartbeat request to the application server at the times T0+ T, T0+2T, T0+3T,. et al; if the streaming server sends the acquired video stream to the set top box terminal corresponding to the identifier of the set top box terminal in the check string at the time T0 ', an inquiry about whether to continue providing the video stream is sent to the application server at the times T0' + T, T0 '+ 2T, T0' + 3T. Then, when receiving an inquiry about whether to continue providing the video stream each time, the application server judges whether a heartbeat request sent by the set top box terminal corresponding to the identifier of the set top box terminal in the inquiry about whether to continue providing the video stream is received within a preset time length before the current time; if yes, feeding back a response for continuously providing the video stream to the streaming server; otherwise, feeding back a response of stopping providing the video stream to the streaming server; wherein, the response of continuing/stopping providing the video stream comprises the identification of the set-top box terminal. And finally, the streaming server continues/stops providing the video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the response of continuing/stopping providing the video stream according to the received response of continuing/stopping providing the video stream.
In the embodiment, because the set-top box terminal sends heartbeat requests to the application server every preset time period, the application server regularly receives the requests of the set-top box terminal, the connection between the set-top box terminal and the streaming server is considered to be normal, whether the set-top box terminal is continuously served is fed back to the streaming server, the method can ensure that the streaming server continuously provides video streams to the set-top box terminal when the set-top box terminal and the streaming server are kept connected through simple heartbeat request sending, simple inquiry of the streaming server and simple reply of the streaming server to the streaming server by the application server, and the streaming service can stop sending the video streams to the set-top box terminal in time after the set-top box terminal is disconnected from the server, so that the load is reduced.
The following describes a video playing method according to an embodiment of the present invention with reference to specific embodiments.
Example one
Fig. 3 is a flowchart of a video playing method according to an embodiment of the present invention. As shown in fig. 3, the method comprises the following steps S301 to S313:
s301: and the set-top box terminal sends a video playing request to the application server.
S302: and the application server receives a video playing request sent by the set-top box terminal.
S303: the application server judges whether the set-top box terminal has the authority to play the channel/program requested to be played by the video playing request, if so, S304 is executed; otherwise, ending the flow.
S304: and the application server feeds back the encrypted check string with the check code to the set-top box terminal.
S305: and the set-top box terminal receives the check string and forwards the check string to the streaming server.
S306: the streaming server receives the check string sent by the set-top box terminal.
S307: the stream server decompiles the check string to obtain the check code, the identifier of the set-top box terminal and the request time thereof, the identifier of the channel/program requested to be played, and the logical address of the video stream of the channel/program requested to be played on the stream server.
S308: the stream server checks whether the check code obtained by decompiling is correct or not; if yes, go to step S309; otherwise, ending the flow.
S309: and the streaming server acquires the video stream of the channel/program corresponding to the identifier of the channel/program requested to be played, which is obtained by decompiling, from the logic address (namely the logic address of the channel/program video stream requested to be played by the current set-top box terminal on the streaming server) obtained by decompiling.
S310: the stream server sends the acquired video stream to the set top box terminal corresponding to the identification of the set top box terminal in the check string;
s311: the set-top box terminal receives the video stream sent by the streaming server.
S312: when the current time T1 meets the condition that T1 is T0+ T, the set-top box terminal sends a heartbeat request including the identifier of the set-top box terminal to an application server; t0 is the time when the set-top box terminal sends the video playing request to the application server in step S301, and T is a preset time duration, preferably, T is 5 minutes.
S313: when the current time T1 'meets T1 ═ T0' + T, the streaming server sends an inquiry to the application server whether to continue providing the video stream; t0' is the time when the streaming server sends the acquired video stream to the set-top terminal corresponding to the identifier of the set-top terminal in the check string in step S309. Wherein the query whether to continue providing the video stream includes an identification of the set-top terminal.
For convenience of description in this embodiment, the set top box terminal corresponding to the identifier of the set top box terminal in the query of whether to continue providing the video stream, which is sent by the streaming server in step S313, is set as the set top box terminal that sends the heartbeat request in step S312.
S314: the application server receives the inquiry whether to continuously provide the video stream, and feeds back a response of continuously providing the video stream to the streaming server. Wherein the response to continue providing the video stream includes the same identification of the set-top terminal as in the received query whether to continue providing the video stream.
Since the network signal transmission is fast, the execution time of steps S301 to S310 is very short (usually, on the order of seconds), and therefore (T1 '-T1) is much shorter than the preset time T (on the order of minutes), when the application server receives an inquiry about whether to continue providing the video stream from the streaming server (which may be regarded as the application server receiving the inquiry at T1' and receiving the heartbeat request at T1), it is obviously determined that the heartbeat request sent from the set-top box terminal corresponding to the identifier of the set-top box terminal in the inquiry is received within the preset time before the current time, and the connection between the set-top box terminal and the streaming server is considered normal, so that the streaming server is notified to continue providing the video stream for the set-top box terminal.
S315: and the streaming server continues to provide the video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the response according to the received response of continuously providing the video stream.
Obviously, after step S313, the streaming server sends the query of whether to continue providing the video stream to the application server at intervals of the preset duration, after S312, the set-top box terminal may still send the heartbeat request to the application server at intervals of the preset duration as needed, and when the application server receives the query of whether to continue providing the video stream, S314 may be executed, which is not described herein again.
In the first embodiment, the application server is used for controlling the playing of the set-top box terminal, the stream server provides the video stream to the set-top box terminal according to the control of the application server, and the set-top box terminal informs the server whether to continue providing the video service for the set-top box terminal by whether to send the heartbeat request, so that the occurrence of connection disconnection or resource waste is avoided.
Corresponding to the video playing method provided in the foregoing embodiment, an embodiment of the present invention further provides a video playing system, as shown in fig. 4, including: a set-top box terminal 11, an application server 12 and a streaming server 13; wherein,
the set-top box terminal 11 is configured to send a video playing request to the application server 12; and is used for receiving the check string sent from the application server 12 and forwarding the check string to the streaming server 13; and is also used for receiving the video stream sent by the streaming server 13;
the application server 12 is configured to receive a video playing request sent by the set-top box terminal 11, and feed back a verification string to the set-top box terminal 11 according to the video playing request; the check string includes the identifier of the set-top box terminal 11 and its request time, the identifier of the channel/program requested to be played, and the logical address of the video stream of the channel/program requested to be played on the streaming server 13;
and the stream server 13 is configured to receive the check string sent by the set-top box terminal 11, obtain a video stream of the channel/program requested to be played from the request time according to the check string, and send the obtained video stream to the set-top box terminal 11 corresponding to the identifier of the set-top box terminal 11 in the check string.
The system shown in fig. 4 may be used to implement the technical solution of the method embodiment shown in fig. 1, and the implementation principle and technical effect are similar, which are not described herein again.
Fig. 5 is a block diagram of another video playing system according to an embodiment of the present invention, and as shown in fig. 5, the system of this embodiment is based on the system structure shown in fig. 4, and further, the application server 12 includes:
the permission judging module 121 is configured to judge whether the set-top terminal 11 has a permission to play a channel/program requested to be played by the video playing request according to the video playing request sent by the set-top terminal 11;
and the verification string generating module 122 is configured to generate a verification string and feed the verification string back to the set-top box terminal 11 when the permission judging module 121 judges that the set-top box terminal 11 has the permission to play the channel/program requested to be played by the video playing request.
The system shown in fig. 5 may be used to execute the technical solution of the method embodiment shown in fig. 1, fig. 2, or fig. 3, and the implementation principle and the technical effect are similar, which are not described herein again.
Fig. 6 is a block diagram of another video playing system according to an embodiment of the present invention, and as shown in fig. 6, the system according to this embodiment is based on the system structure shown in fig. 4, and further, the stream server 13 includes a decompilation module 131, a verification module 132, and an acquisition module 133;
in this embodiment, the check string fed back by the set-top box terminal 11 is an encrypted check string with a check code;
the decompiling module 131 is configured to decompile the check string sent by the set-top box terminal 11 to obtain a check code, the identifier of the set-top box terminal 11 and the request time thereof, the identifier of the channel/program requested to be played, and the logical address of the channel/program video stream requested to be played on the streaming server 13, send the obtained check code to the checking module 132, and send the obtained identifier of the set-top box terminal 11 and the request time thereof, the identifier of the channel/program requested to be played, and the logical address of the channel/program video stream requested to be played on the streaming server 13 to the obtaining module 133;
the checking module 132 is configured to check whether the check code is correct, and send an obtaining instruction to the obtaining module 133 if the check code is correct;
the obtaining module 133 is configured to obtain, according to the obtaining instruction, a video stream of the channel/program corresponding to the identifier of the channel/program requested to be played from the request time from the received logical address, and send the obtained video stream to the set-top terminal 11 corresponding to the identifier of the set-top terminal 11.
The system shown in fig. 6 may be used to implement the technical solutions of the method embodiments shown in fig. 2 or fig. 3, and the implementation principles and technical effects are similar, which are not described herein again.
In another embodiment, the set-top box terminal 11 in the video playing system provided by the present invention is further configured to send a heartbeat request to the application server 12 every preset duration starting at the moment of sending the video playing request to the application server 12; wherein, the heartbeat request includes the identifier of the set-top box terminal 11;
the stream server 13 is further configured to send, to the application server 12, an inquiry about whether to continue providing the video stream every preset duration starting at a time when the acquired video stream is sent to the set top box terminal 11 corresponding to the identifier of the set top box terminal 11 in the check string; the server is further configured to continue/stop providing the video stream to the set-top box terminal 11 corresponding to the identifier of the set-top box terminal 11 in the response of continuing/stopping providing the video stream according to the response of continuing/stopping providing the video stream fed back by the application server 12; wherein the query whether to continue providing the video stream includes an identification of the set-top terminal 11;
the application server 12 is further configured to, each time an inquiry is received to determine whether to continue providing the video stream, determine whether a heartbeat request sent by the set top box terminal 11 is received within a preset time period before the current time, where the heartbeat request is corresponding to an identifier of the set top box terminal 11 in the inquiry to continue providing the video stream; if yes, feeding back a response of continuously providing the video stream to the streaming server 13; otherwise, a response to stop providing the video stream is fed back to the streaming server 13; wherein the response to continue/stop providing the video stream includes the identification of the set-top terminal 11.
The video playing system provided in this embodiment may be used to implement the technical solution of the method embodiment shown in fig. 3, and the implementation principle and the technical effect are similar, which are not described herein again.
The video playing system provided by the invention has the advantages that the functions of the existing servers are differentiated, the application server realizes the authority authentication and playing control of the set top box terminal, and the stream server is used for storing and providing the video stream, so that the burden of a single server for providing the playing control and the video stream is reduced; in addition, in the process of providing the video stream, the request information of the set top box terminal is transmitted through the check string corresponding to the set top box terminal, so that the stream server can check conveniently and quickly find the required video stream according to the logic address in the check string, the information transmission between the application server and the stream server is reduced, and the method is convenient and effective.
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, 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.
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 (9)
1. A video playback method, comprising:
the set top box terminal sends a video playing request to an application server;
the application server receives a video playing request sent by the set top box terminal;
the application server feeds back a check string to the set top box terminal according to the video playing request; the check string comprises an identifier of the set top box terminal and request time thereof, an identifier of a channel/program requested to be played, and a logical address of a video stream of the channel/program requested to be played on the streaming server;
the set-top box terminal receives the check string and forwards the check string to a streaming server;
the streaming server receives the check string sent by the set-top box terminal;
the streaming server acquires the video stream of the channel/program requested to be played from the request time according to the check string;
the stream server sends the acquired video stream to the set top box terminal corresponding to the identification of the set top box terminal in the check string;
and the set-top box terminal receives the video stream sent by the streaming server.
2. The video playing method according to claim 1, wherein the feeding back, by the application server, the check string to the set-top box terminal according to the video playing request comprises:
the application server judges whether the set-top box terminal has the authority to play the channel/program requested to be played by the video playing request;
and when the set-top box terminal has the permission to play the channel/program requested to be played by the video playing request, feeding back the verification string to the set-top box terminal.
3. The video playback method according to claim 1, wherein the check string is an encrypted check string having a check code;
the streaming server obtains the video stream of the channel/program requested to be played from the request time according to the check string, and the method comprises the following steps:
the stream server decompiles the check string to obtain a check code, an identifier of the set-top box terminal and request time thereof, a channel/program identifier requested to be played, and a logical address of a channel/program video stream requested to be played on the stream server;
the stream server checks whether the check code is correct or not;
when the check code is correct, the streaming server obtains the video stream of the channel/program corresponding to the channel/program identifier requested to be played from the request time from the logical address.
4. The video playback method of any one of claims 1 to 3, further comprising:
the set top box terminal sends a heartbeat request to the application server every preset time period from the moment when sending a video playing request to the application server; the stream server sends the acquired video stream to the set top box terminal corresponding to the identification of the set top box terminal in the check string, and sends an inquiry of whether to continue providing the video stream to the application server every preset time interval; the heartbeat request comprises an identifier of the set-top box terminal, and the inquiry of whether to continuously provide the video stream comprises the identifier of the set-top box terminal;
when the application server receives the inquiry of whether to continuously provide the video stream each time, judging whether a heartbeat request sent by the set top box terminal corresponding to the identifier of the set top box terminal in the inquiry of whether to continuously provide the video stream is received within the preset time length before the current moment; if yes, feeding back a response for continuously providing the video stream to the streaming server; otherwise, feeding back a response of stopping providing the video stream to the streaming server; wherein, the response of continuing/stopping providing the video stream comprises the identification of the set-top box terminal;
and the streaming server continues/stops providing the video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the response of continuing/stopping providing the video stream according to the received response of continuing/stopping providing the video stream.
5. The video playback method of claim 4, wherein the predetermined duration is 5 minutes.
6. A video playback system, comprising: the system comprises a set-top box terminal, an application server and a streaming server;
the set-top box terminal is used for sending a video playing request to the application server; the system is also used for receiving the check string sent by the application server and forwarding the check string to the streaming server; the video server is also used for receiving the video stream sent by the streaming server;
the application server is used for receiving a video playing request sent by the set-top box terminal and feeding back a verification string to the set-top box terminal according to the video playing request; the check string comprises an identifier of the set top box terminal and request time thereof, an identifier of a channel/program requested to be played, and a logical address of a video stream of the channel/program requested to be played on the streaming server;
and the stream server is used for receiving the check string sent by the set-top box terminal, acquiring the video stream of the channel/program requested to be played from the request time according to the check string, and sending the acquired video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the check string.
7. The video playback system of claim 6, wherein the application server comprises:
the permission judging module is used for judging whether the set-top box terminal has permission to play the channel/program requested to be played by the video playing request according to the video playing request sent by the set-top box terminal;
and the verification string generating module is used for generating the verification string and feeding back the verification string to the set-top box terminal when the permission judging module judges that the set-top box terminal has the permission to play the channel/program requested to be played by the video playing request.
8. The video playback system according to claim 6, wherein the check string fed back to the set-top terminal by the application server is an encrypted check string having a check code;
the streaming server includes:
the decompiling module is used for decompiling the check string sent by the set top box terminal to obtain a check code, the identifier and the request time of the set top box terminal, the identifier of the channel/program requested to be played, the logic address of the channel/program video stream requested to be played on the streaming server, sending the obtained check code to the check module, and sending the obtained identifier and the request time of the set top box terminal, the identifier of the channel/program requested to be played, and the logic address of the channel/program video stream requested to be played on the streaming server to the acquisition module;
the verification module is used for verifying whether the verification code is correct or not, and if the verification code is correct, an acquisition instruction is sent to the acquisition module;
and the acquisition module is used for acquiring the video stream of the channel/program corresponding to the channel/program identifier requested to be played from the request time from the received logic address according to the acquisition instruction, and sending the acquired video stream to the set top box terminal corresponding to the identifier of the set top box terminal.
9. The video playback system of any of claims 6 to 8,
the set-top box terminal is also used for sending heartbeat requests to the application server every preset time interval from the moment of sending the video playing request to the application server; the heartbeat request comprises an identifier of the set-top box terminal;
the stream server is further configured to send an inquiry about whether to continue providing the video stream to the application server every preset time interval starting at a time when the acquired video stream is sent to the set top box terminal corresponding to the identifier of the set top box terminal in the check string; the server is also used for continuing/stopping providing the video stream to the set-top box terminal corresponding to the identifier of the set-top box terminal in the response of continuing/stopping providing the video stream according to the response of continuing/stopping providing the video stream fed back by the application server; wherein the query of whether to continue providing the video stream comprises an identification of the set-top terminal;
the application server is further configured to, each time the inquiry about whether to continue providing the video stream is received, determine whether a heartbeat request sent by the set top box terminal is received within a preset time period before the current time, where the heartbeat request is corresponding to an identifier of the set top box terminal in the inquiry about whether to continue providing the video stream; if yes, feeding back a response for continuously providing the video stream to the streaming server; otherwise, feeding back a response of stopping providing the video stream to the streaming server; wherein the response of continuing/stopping providing the video stream comprises the identification of the set-top box terminal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610417612.XA CN106101745A (en) | 2016-06-14 | 2016-06-14 | A kind of video broadcasting method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610417612.XA CN106101745A (en) | 2016-06-14 | 2016-06-14 | A kind of video broadcasting method and system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106101745A true CN106101745A (en) | 2016-11-09 |
Family
ID=57845469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610417612.XA Pending CN106101745A (en) | 2016-06-14 | 2016-06-14 | A kind of video broadcasting method and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106101745A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107248991A (en) * | 2017-06-12 | 2017-10-13 | 北京经纬中天信息技术有限公司 | IP stream scheduling system and methods based on key frame of video |
CN109348284A (en) * | 2018-11-28 | 2019-02-15 | 深圳市创维软件有限公司 | A kind of channel playback method, device, equipment and medium |
CN110072127A (en) * | 2018-01-24 | 2019-07-30 | 腾讯科技(深圳)有限公司 | Media Stream play handling method, device, system, storage medium and equipment |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1434386A (en) * | 2003-01-25 | 2003-08-06 | 华中科技大学 | Division distributed storage method of program source based on cluster video server |
CN101184204A (en) * | 2007-12-25 | 2008-05-21 | 天柏宽带网络科技(北京)有限公司 | Authentication method for interdynamic television service |
CN102148722A (en) * | 2011-01-20 | 2011-08-10 | 深圳市同洲电子股份有限公司 | Method and system for detecting data interaction state by using heartbeats, and proxy server |
CN104618738A (en) * | 2015-01-14 | 2015-05-13 | 青岛海信电器股份有限公司 | Method and device for playing programs of intelligent TV |
CN104837035A (en) * | 2015-04-30 | 2015-08-12 | 华为软件技术有限公司 | Video playing method and terminal |
US20160094870A1 (en) * | 2004-05-19 | 2016-03-31 | Philip Drope | Multimedia network system with content importation, content exportation, and integrated content management |
CN105657466A (en) * | 2014-12-04 | 2016-06-08 | 中国移动通信集团公司 | Video playing method and apparatus |
-
2016
- 2016-06-14 CN CN201610417612.XA patent/CN106101745A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1434386A (en) * | 2003-01-25 | 2003-08-06 | 华中科技大学 | Division distributed storage method of program source based on cluster video server |
US20160094870A1 (en) * | 2004-05-19 | 2016-03-31 | Philip Drope | Multimedia network system with content importation, content exportation, and integrated content management |
CN101184204A (en) * | 2007-12-25 | 2008-05-21 | 天柏宽带网络科技(北京)有限公司 | Authentication method for interdynamic television service |
CN102148722A (en) * | 2011-01-20 | 2011-08-10 | 深圳市同洲电子股份有限公司 | Method and system for detecting data interaction state by using heartbeats, and proxy server |
CN105657466A (en) * | 2014-12-04 | 2016-06-08 | 中国移动通信集团公司 | Video playing method and apparatus |
CN104618738A (en) * | 2015-01-14 | 2015-05-13 | 青岛海信电器股份有限公司 | Method and device for playing programs of intelligent TV |
CN104837035A (en) * | 2015-04-30 | 2015-08-12 | 华为软件技术有限公司 | Video playing method and terminal |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107248991A (en) * | 2017-06-12 | 2017-10-13 | 北京经纬中天信息技术有限公司 | IP stream scheduling system and methods based on key frame of video |
CN107248991B (en) * | 2017-06-12 | 2020-11-24 | 北京经纬中天信息技术有限公司 | IP stream scheduling system and method based on video key frame |
CN110072127A (en) * | 2018-01-24 | 2019-07-30 | 腾讯科技(深圳)有限公司 | Media Stream play handling method, device, system, storage medium and equipment |
CN110072127B (en) * | 2018-01-24 | 2021-09-24 | 腾讯科技(深圳)有限公司 | Media stream playing processing method, device, system, storage medium and equipment |
CN109348284A (en) * | 2018-11-28 | 2019-02-15 | 深圳市创维软件有限公司 | A kind of channel playback method, device, equipment and medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106797563B (en) | Certification and authorization message for adaptive stream media based on token signaling and interact | |
US7873987B2 (en) | Content distribution system and distribution method, and content processing device and processing method | |
US8595854B2 (en) | Processing recordable content in a stream | |
US20120017282A1 (en) | Method and apparatus for providing drm service | |
KR101854919B1 (en) | Method and apparatus for providing drm service | |
US8826324B2 (en) | Server apparatus, trick reproduction restriction method, and reception apparatus | |
US20130145016A1 (en) | Methods and apparatuses for domain management | |
WO2005060258A2 (en) | Content distribution system and distribution method, and content processing device and processing method | |
CN104811773A (en) | Hotlinking prevention-based channel playing implementation method, system and equipment | |
US8401187B2 (en) | Processing recordable content in a stream | |
US9043435B2 (en) | Distributing licensed content across multiple devices | |
WO2017219532A1 (en) | Video application program control method and video application program control system | |
CN106060055A (en) | Television video playing method and system | |
US10162944B2 (en) | Library style media DRM APIs in a hosted architecture | |
US9888272B2 (en) | Method, terminal and CDN server in IPTV system for realizing playing while downloading | |
KR20150035565A (en) | Method and apparatus for transmitting and receiving message for downloadable cas or drm in mmt | |
JP2010021615A (en) | Content distribution system, content receiving terminal, content distribution method, and processing method performed when viewing streaming contents | |
CN106101745A (en) | A kind of video broadcasting method and system | |
CN101160965B (en) | Method of implementing preview of network TV program, encryption device, copyright center system and subscriber terminal equipment | |
CN105684347A (en) | System and method for synchronized key derivation across multiple conditional access servers | |
WO2017198153A1 (en) | Program playing management method, playing method and apparatus, and playing terminal | |
CN112203118B (en) | Multimedia resource distribution method, device, electronic device and storage medium | |
JP5941356B2 (en) | Broadcast communication cooperative receiver, application authentication program, and broadcast communication cooperative system | |
CN101630519A (en) | IP streaming copy control method and system | |
KR101383910B1 (en) | Method and apparatus for maintaining session in connectionless streaming service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161109 |