WO2017092259A1 - 一种游戏直播视频的传输控制方法以及装置 - Google Patents
一种游戏直播视频的传输控制方法以及装置 Download PDFInfo
- Publication number
- WO2017092259A1 WO2017092259A1 PCT/CN2016/083649 CN2016083649W WO2017092259A1 WO 2017092259 A1 WO2017092259 A1 WO 2017092259A1 CN 2016083649 W CN2016083649 W CN 2016083649W WO 2017092259 A1 WO2017092259 A1 WO 2017092259A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- game
- cdn
- video
- live video
- video data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4781—Games
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
-
- 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/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- 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/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2385—Channel allocation; Bandwidth allocation
-
- 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/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- 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/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26216—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
-
- 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/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
Definitions
- the present invention relates to the field of Internet technologies, and in particular, to a method and device for controlling transmission of a game live video.
- the current game live broadcast platform mainly includes a game application with a live game watching function and a video playing application for playing a live video of the game.
- the client When the user logs in to the game live broadcast platform through the client and chooses to start watching the live video of the game, the client will first connect to the CDN (Content Delivery Network), at this time, by the headstream device at the live broadcast site.
- the collected live video of the game is uploaded to the video server, and then the video server delivers the live video of the game to the client through the CDN pre-fast push technology, so that the user can quickly view the live video of the game.
- the technical problem to be solved by the embodiments of the present invention is to provide a method and a device for controlling the transmission of a live video of a game, which can avoid the situation that the bandwidth of the CDN is lowered and the load of the video server is lowered, and the smoothness of playing the live video of the game by the client is improved. Sex.
- An embodiment of the present invention provides a method for controlling transmission of a game live video, including:
- the end includes a game client with live video viewing function and/or a video client for playing live video;
- the video streaming state is a no-flow state
- determining whether the duration of the no-flow state reaches a preset duration threshold means that no live video data of the game is transmitted to the The status of the CDN;
- the embodiment of the invention further provides a transmission control device for a game live video, comprising:
- a first acquisition sending module configured to acquire game live video data sent by the headend stream device, and send the game live video data to a content distribution network CDN, so that the CDN forwards the game live video data to multiple a client;
- the plurality of clients include a game client having a live video viewing function and/or a video client for playing a live video;
- a detecting module configured to detect a video streaming status between the CDN and the CDN in real time
- a judging module configured to determine whether the duration of the no-flow state reaches a preset duration threshold when detecting that the video stream transmission state is a no-flow state; and the no-flow state refers to no live video of the game. Data transfer to the state of the CDN;
- a second acquisition sending module configured to acquire a default game video file corresponding to game type information of the game live video data when it is determined that the duration of the no-flow state reaches the preset duration threshold, and The default game video file is sent to the CDN to cause the CDN to forward the default game video file to the plurality of clients.
- the game live video data sent by the head-end stream device can be sent to the CDN, so that the CDN forwards the game live video data to multiple clients; and during the entire live broadcast of the game, Real-time detection of video streaming status with CDN, And when it is detected that the video stream transmission state is a no-flow state, it is determined whether the duration of the continuous streamless state reaches a preset duration threshold, and the no-flow state refers to a state in which no game live video data is transmitted to the CDN; when it is determined that the duration is continuous When the duration of the no-flow state reaches the preset duration threshold, the default game video file corresponding to the game type information of the game live video data is acquired, and the default game video file is sent to the CDN, so that the CDN forwards the default game video file to at most
- the client can make the CDN still transmit data to the client by sending the default streaming file to the CDN before the client disconnects from the CDN when the game live video captured on the site is interrupted for a short
- FIG. 1 is a schematic diagram of a network architecture according to an embodiment of the present invention
- FIG. 2 is a schematic flowchart of a method for controlling transmission of a live video of a game according to an embodiment of the present invention
- FIG. 3 is a schematic flowchart of another method for controlling transmission of a live video of a game according to an embodiment of the present invention
- FIG. 4 is a schematic structural diagram of a game broadcast video transmission control apparatus according to an embodiment of the present invention.
- FIG. 5 is a schematic structural diagram of another game for transmitting live video of a game according to an embodiment of the present invention.
- FIG. 6 is a schematic structural diagram of a second acquisition and transmission module according to an embodiment of the present disclosure.
- FIG. 7 is a schematic structural diagram of a detection module according to an embodiment of the present invention.
- FIG. 8 is a schematic structural diagram of a video server according to an embodiment of the present invention.
- FIG. 1 is a schematic diagram of a network architecture according to an embodiment of the present invention.
- the network architecture may include a headend stream device, a video server, a CDN, and a plurality of clients.
- the head-end stream device may be connected to the video server through an external network, and the video server is connected to the CDN through an internal network, and the CDN is connected to multiple clients through an external network.
- the video server may acquire game live video data collected by the head-end stream device in the field, and the video server transmits the acquired game live video data to the CDN to The CDN is caused to push the buffered game live video data to each client.
- the network architecture is based on the CDN pre-fast push technology to realize game live video data transmission, which enables the user to see the game live video more quickly.
- FIG. 2 is a schematic flowchart of a method for controlling transmission of a game live video according to an embodiment of the present invention.
- the method may include:
- the video server may obtain game live video data sent by the head-end stream device, where the game live video data is collected by the head-end stream device at a live game site. Transmitting, by the video server, the game live video data to the CDN, and forwarding, by the CDN, the buffered game live video data to the plurality of clients by using a pre-fast push technology;
- the client includes a game client with live video viewing and/or a video client for playing live video.
- the video server may further convert the obtained live video data of the game into a plurality of game live video data of different code rates/resolutions, and broadcast the plurality of games with different code rates/resolutions.
- the video data is sent to the CDN, and the CDN transmits the corresponding game rate live video data of the corresponding code rate/resolution to each client according to the network fluency of each client, so as to improve the fluency of playing the live video of the game by each client.
- the video server can not only transmit the live video data of the game, but also detect the video stream transmission status with the CDN in real time, and the video stream transmission status may include a no-flow state.
- the no-flow state refers to a state in which no live video data of the game is transmitted to the CDN.
- the video server may not be able to obtain the live broadcast of the game sent by the head-end stream device in a short time.
- the video data that is, the live video of the game collected in the field is interrupted for a short time, and then the video server does not send the live video data of the game to the CDN.
- the video stream transmission state is a no-flow state
- the video server When the video server reacquires the game live video data sent by the headend stream device, the video server will continue to send the game live video data to the CDN, and at this time, the video may be determined.
- the streaming state switches back to the non-no flow state.
- the video server can start accumulating the duration of the no-flow state, and real-time. Determine whether the accumulated duration reaches the preset duration threshold.
- the video server may acquire a default game video file corresponding to the game type information of the game live video data. And transmitting the default game video file to the CDN, and then forwarding the default game video file to the plurality of clients by the CDN.
- the default game video file may be a video file pre-stored in the video server, and the format, resolution, and the like of the default game video file and various video parameters required for the video server to perform streaming Consistently to ensure that the default game video file can be successfully sent to each client; and the default The game video file may be a video file associated with the game type of the game video currently being broadcasted.
- the video server pre-stores a plurality of default game video files, respectively, which are game promotion videos of different games, when being broadcasted.
- the video server may select a game promotion video of the A game (the game promotion video is one of the default game video files) to be sent to the CDN.
- the CDN may have video data transmitted to each client to ensure that each client does not disconnect from the CDN, and may also allow the user to view the default game video when the game live video captured in the scene is interrupted. File to avoid users being bored waiting.
- the video server may further convert the obtained default game video file into a plurality of default game video files of different code rates/resolutions, and the default games of the plurality of different code rates/resolutions.
- the video file is sent to the CDN, and the CDN sends a corresponding game rate/resolution resolution game video file to each client according to the network fluency of each client, so as to improve the fluency of each client playing the game live video.
- the game live video data sent by the head-end stream device can be sent to the CDN, so that the CDN forwards the game live video data to multiple clients; and during the entire live broadcast of the game,
- the status of the video stream transmission between the CDN and the CDN can be detected in real time, and when it is detected that the video stream transmission state is the no-flow state, it is determined whether the duration of the continuous streamless state reaches the preset duration threshold, and the no-flow state refers to the no-game live broadcast.
- FIG. 3 is a schematic flowchart of another method for controlling transmission of a game live video according to an embodiment of the present invention.
- the method may include:
- the video server may obtain game type information of the game live video data in advance, that is, obtain the type information of the game broadcasted in the live game of the game, for example, in the live broadcast event of the game.
- the live video of the game of the A game the video server may obtain the game type information of the A game from the operator before the start of the live game of the game, the game type information may include the game name of the A game, the type of the game (including sports) Class games, board games, role-playing games, etc.).
- the video server may convert the acquired game type information into a corresponding type identifier, and record the type identifier, so that the corresponding default game video file may be selected in a targeted manner.
- the video server may acquire game live video data sent by the head-end stream device, where the game live video data is collected by the head-end stream device at a live game site. Transmitting, by the video server, the game live video data to the CDN, and forwarding, by the CDN, the buffered game live video data to the plurality of clients by using a pre-fast push technology;
- the client includes a game client with live video viewing and/or a video client for playing live video.
- the video server may further convert the obtained live video data of the game into a plurality of game live video data of different code rates/resolutions, and broadcast the plurality of games with different code rates/resolutions.
- the video data is sent to the CDN, and the CDN transmits the corresponding game rate live video data of the corresponding code rate/resolution to each client according to the network fluency of each client, so as to improve the fluency of playing the live video of the game by each client.
- the video server can not only transmit the live video data of the game, but also detect the video stream transmission status with the CDN in real time, and the video stream transmission status may include a no-flow state.
- the no-flow state refers to a state in which no live video data of the game is transmitted to the CDN.
- the video server may not be able to obtain the live video data of the game sent by the head-end stream device in a short time, that is, the live video of the game collected on the scene appears. a short-term interruption, which in turn causes the video server to send the game live video data to the CDN.
- the video stream transmission status is a no-flow state; when the video server re-acquires the head end When the game broadcast video data is sent by the streaming device, the video server will continue to send the game live video data to the CDN. At this time, it may be determined that the video stream transmission state is switched back to the non-flowless state.
- the video server can start accumulating the duration of the no-flow state, and real-time. Determine whether the accumulated duration reaches the preset duration threshold.
- the video server may acquire the recorded type identifier and search in a preset game video set.
- a default game video file corresponding to the type identification, and the default game video file is sent to the CDN, and the default game video file is forwarded by the CDN to the plurality of clients.
- the game video set includes a plurality of pre-stored default game video files, and each default game video file is mapped with a corresponding type identifier. All the default game video files in the game video set may be video files pre-stored in the video server, and parameters such as format, resolution, and the like of each default game video file are pushed by the video server.
- the various video parameters required for streaming are consistent to ensure that the default game video file can be successfully sent to each client.
- the game video set pre-stored by the video server includes a plurality of default games a video file, wherein the plurality of default game video files are game promotion videos of different games respectively.
- the video server may select a corresponding type according to the type identifier corresponding to the game type information of the A game.
- the game promotion video (the game promotion video is one of the default game video files) is sent to the CDN.
- the CDN may have video data transmitted to each client to ensure that each client does not disconnect from the CDN, and may also allow the user to view the default game video when the game live video captured in the scene is interrupted. File to avoid users being bored waiting.
- the video server may further convert the obtained default game video file into a plurality of default game video files of different code rates/resolutions, and the default games of the plurality of different code rates/resolutions.
- the video file is sent to the CDN, and the CDN sends a corresponding game rate/resolution resolution game video file to each client according to the network fluency of each client, so as to improve the fluency of each client playing the game live video.
- step S306 that is, after the default game video file is sent to the CDN
- the video server reacquires the game live video data sent by the headend stream device, stopping sending The default game video file, and resending the game live video data acquired from the headend stream device to the CDN, so that the CDN forwards the game live video data to the plurality of Clients.
- the video server may continue to detect the video streaming status with the CDN in real time to facilitate transmitting the default game video file to the CDN before the client disconnects from the CDN.
- the video server may re-acquire the game live video data sent by the head-end stream device before the duration of the no-flow state reaches the preset duration threshold.
- the video server may The game live video data re-acquired from the head-end stream device is sent to the CDN, so that the CDN forwards the game live video data to the plurality of clients. Since the interruption duration of the game live video has not reached the preset duration threshold, the connection between the client and the CDN is not broken, and therefore, in this case, it is not necessary to acquire the default game video file.
- the game live video data sent by the head-end stream device can be sent to the CDN, so that the CDN forwards the game live video data to multiple clients; and during the entire live broadcast of the game,
- the status of the video stream transmission between the CDN and the CDN can be detected in real time, and when it is detected that the video stream transmission state is the no-flow state, it is determined whether the duration of the continuous streamless state reaches the preset duration threshold, and the no-flow state refers to the no-game live broadcast.
- FIG. 4 is a schematic structural diagram of a game broadcast video transmission control apparatus according to an embodiment of the present invention.
- the game live video transmission control apparatus 1 can be applied to a video server, and the game live video transmission control is performed.
- the device 1 may include: a first acquisition and transmission module 10, a detection module 20, a determination module 30, and a second acquisition and transmission module 40;
- the first acquisition sending module 10 is configured to acquire game live video data sent by the head end stream device, and send the game live video data to the content distribution network CDN, so that the CDN broadcasts the game live video data. Forwarding to a plurality of clients; the plurality of clients including a game client having a live video viewing function and/or a video client for playing live video;
- the first acquisition sending module 10 may acquire game live video data sent by the headend stream device, where the game live video data is used by the headend stream device in a live broadcast site. Collected.
- the first acquisition and transmission module 10 further sends the game live video data to the CDN, and the CDN forwards the buffered game live video data to the plurality of clients by using a pre-fast push technology;
- the plurality of clients include a game client having a live video viewing function and/or a video client for playing live video.
- the first acquisition and transmission module 10 may further convert the acquired live video data of the game into a plurality of game live video data of different code rates/resolutions, and convert the plurality of different code rates/resolutions.
- Rate game live video data is sent to the CDN, and the CDN sends the corresponding live rate video data of the code rate/resolution to each client according to the network fluency of each client, so as to improve the live video of each game played by each client. The fluency.
- the detecting module 20 is configured to detect a video stream transmission status with the CDN in real time;
- the detection module 20 can also detect the status of the video stream transmission with the CDN in real time.
- the video streaming state may include a no-flow state and a non-no-flow state, where the no-flow state refers to a state in which no live video data of the game is transmitted to the CDN.
- the first acquisition and transmission module 10 may not be able to obtain the transmission by the head-end stream device in a short time.
- the game live video data that is, the game live video captured on the scene is interrupted for a short time, and then the first acquisition and transmission module 10 does not send the game live video data to the CDN.
- the detection module 20 Determining that the video stream transmission status is a no-flow state; when the first acquisition and transmission module 10 re-acquires the game live video data sent by the head-end stream device, the first acquisition and transmission module 10 And continuing to send the game live video data to the CDN.
- the detecting module 20 may determine that the video stream transmission state is switched back to the non-flowless state.
- the determining module 30 is configured to: when it is detected that the video streaming state is a no-flow state, determine whether the duration of the no-flow state reaches a preset duration threshold; the no-flow state refers to none of the The state in which the game live video data is transmitted to the CDN;
- the determining module 30 may start accumulating the duration as described. The duration of the no-flow state, and it is determined in real time whether the accumulated duration reaches the preset duration threshold.
- the second obtaining and sending module 40 is configured to acquire a default game video corresponding to the game type information of the game live video data when it is determined that the duration of the no-flow state reaches the preset duration threshold a file, and transmitting the default game video file to the CDN to cause the CDN to forward the default game video file to the plurality of clients;
- the second obtaining and transmitting module 40 may acquire the game type information of the live video data of the game.
- Corresponding default game video files, and the default game video files are sent to the CDN, and the default game video files are forwarded by the CDN to the plurality of clients.
- the default game video file may be a video file pre-stored in the video server, and the format, resolution, and the like of the default game video file and various video parameters required for the video server to perform streaming Consistently to ensure that the default game video file can be successfully sent to each client; and the default game video file can be a video file associated with the game type of the currently being broadcasted game video, for example, the video server is pre- A plurality of default game video files are stored, respectively, which are game promotion videos of different games.
- the second acquisition sending module 40 may select a game promotion video of the A game (the game promotion video) Send to the CDN for one of the default game video files).
- the CDN may have video data transmitted to each client to ensure that each client does not disconnect from the CDN, and may also allow the user to view the default game video when the game live video captured in the scene is interrupted. File to avoid users being bored waiting.
- the second acquisition sending module 40 may further convert the obtained default game video file into a plurality of default game video files of different code rates/resolutions, and convert the plurality of different code rates/resolutions.
- the default game video file is sent to the CDN, and the CDN sends a corresponding game rate video of the corresponding bit rate/resolution to each client according to the network fluency of each client, so as to improve the live video of each game played by each client. The fluency.
- the live broadcast video data sent by the head-end stream device can be sent to the CDN, so that the CDN forwards the game live video data to multiple clients; And in the whole game live broadcast process, the video stream transmission state between the CDN and the CDN can also be detected in real time, and when it is detected that the video stream transmission state is a no-flow state, it is determined whether the duration of the no-flow state is up to a preset.
- the duration threshold, the no-flow state refers to a state in which no game live video data is transmitted to the CDN; and when it is determined that the duration of the no-flow state reaches the preset duration threshold, the game type information corresponding to the game live video data is acquired.
- the default game video file and send the default game video file to the CDN, so that the CDN will forward the default game video file to multiple clients, so that when the live video of the game collected in the scene is interrupted for a short time, it can be on the client.
- send the default streaming media file to the CDN Before disconnecting from the CDN, send the default streaming media file to the CDN to ensure that the CDN still has data to the client to avoid reconnecting the CDN to all clients, thus avoiding the bandwidth soaring of the CDN and the surge of the video server load. Occurs and improves the fluency of the live video of the game played by the client.
- the transmission control device 1 may include the first acquisition and transmission module 10, the detection module 20, the determination module 30, and the second acquisition and transmission module 40 in the corresponding embodiment of FIG. 4, and further, the transmission control device 1 of the game live video is further
- the method may include: a type acquisition record module 50, a stop notification module 60;
- the type acquisition record module 50 is configured to acquire game type information of the game live video data, and record a type identifier corresponding to the acquired game type information;
- the type acquisition record module 50 may obtain game type information of the game live video data in advance, that is, obtain the type information of the game broadcasted in the live game of the game, for example, in the present
- the game video of the A game to be broadcasted in the live game event the type acquisition record module 50 may acquire the game type information of the A game from the operator before the game live event starts, and the game type information may include the A game.
- Game name, game type including sports games, board games, role-playing games, etc.).
- the type acquisition record module 50 may convert the acquired game type information into a corresponding type identifier, and record the type identifier, so that the corresponding default game video file may be selected in a targeted manner.
- the stop notification module 60 is configured to: when the video stream transmitted between the CDN and the CDN is the default game video file, and reacquire the game live video data sent by the headend stream device Stop sending the default game video file, and notifying the first acquisition sending module 10 to resend the game live video data acquired from the head-end streaming device to the CDN, so that the CDN Forwarding the game live video data to the plurality of clients;
- the second acquisition and transmission module 40 sends the default game video file to the CDN
- the first acquisition and transmission module 10 reacquires the game live video data sent by the headend stream device.
- the stop notification module 60 may stop sending the default game video file, and notify the first acquisition sending module 10 to resend the game live video data acquired from the headend stream device to the CDN for causing the CDN to forward the game live video data to the plurality of clients.
- the detection module 20 can continue to detect the video streaming status with the CDN in real time to facilitate transmitting the default game video file to the CDN before the client disconnects from the CDN.
- the first obtaining and sending module 10 is further configured to: when it is determined that the duration of the no-flow state does not reach the preset duration threshold, and re-acquire the game sent by the head-end stream device When the video data is broadcasted, the game live video data re-acquired from the head-end stream device is sent to the CDN, so that the CDN forwards the game live video data to the plurality of clients;
- the first acquisition sending module 10 may re-acquire the live video data of the game sent by the head-end stream device.
- the first acquisition sending module 10 may send the game live video data re-acquired from the head-end streaming device to the CDN, so that the CDN forwards the game live video data to the multiple Clients. Since the interruption duration of the game live video has not reached the preset duration threshold, the connection between the client and the CDN is not broken, and therefore, in this case, it is not necessary to acquire the default game video file.
- FIG. 6 is a schematic structural diagram of the second acquisition and transmission module 40 in FIG. 5 , and the second acquisition and transmission module 40 includes: an identifier acquisition unit 401 and a search and transmission unit 402;
- the identifier obtaining unit 401 is configured to: when it is determined that the duration of the no-flow state is continued Obtaining the recorded type identifier when the preset duration threshold is described;
- the search sending unit 402 is configured to search, in a preset game video set, a default game video file corresponding to the type identifier, and send the default game video file to the CDN;
- the identifier obtaining unit 401 may obtain the recorded type identifier, and the search is performed by the The sending unit 402 searches for a default game video file corresponding to the type identifier in a preset game video set, and sends the default game video file to the CDN, and then the default game video file is sent by the CDN. Forwarded to the multiple clients.
- the game video set includes a plurality of pre-stored default game video files, and each default game video file is mapped with a corresponding type identifier.
- All the default game video files in the game video set may be video files pre-stored in the video server, and parameters such as format, resolution, and the like of each default game video file are pushed by the video server.
- the various video parameters required for streaming are consistent to ensure that the default game video file can be successfully sent to each client.
- the game video set pre-stored by the video server includes a plurality of default game video files, and the plurality of default game video files are respectively game promotion videos of different games, when the game video being broadcasted is the A game,
- the search sending unit 402 may select a corresponding game promotion video (the game promotion video is one of the default game video files) to be sent to the CDN according to the type identifier corresponding to the game type information of the A game.
- the CDN may have video data transmitted to each client to ensure that each client does not disconnect from the CDN, and may also allow the user to view the default game video when the game live video captured in the scene is interrupted. File to avoid users being bored waiting.
- FIG. 7 is a schematic structural diagram of the detecting module 20 in FIG. 5 , and the detecting module 20 includes:
- the detecting unit 201 is configured to detect, in real time, whether the game live video data is transmitted to the CDN;
- the determining unit 202 is configured to: if the detecting unit 201 detects that there is no live video of the game Transmitting to the CDN, determining that the video streaming status between the CDN and the CDN is a no-flow state;
- the determining unit 202 is further configured to determine, if the detecting unit 201 detects that the game live video data is transmitted to the CDN, determine that the video stream transmission status with the CDN is a non-flowless state.
- the game live video data sent by the head-end stream device can be sent to the CDN, so that the CDN forwards the game live video data to multiple clients; and during the entire live broadcast of the game,
- the status of the video stream transmission between the CDN and the CDN can be detected in real time, and when it is detected that the video stream transmission state is the no-flow state, it is determined whether the duration of the continuous streamless state reaches the preset duration threshold, and the no-flow state refers to the no-game live broadcast.
- FIG. 8 is a schematic structural diagram of a video server according to an embodiment of the present invention.
- the video server 1000 may include at least one processor 1001, such as a CPU, at least one network interface 1004, a user interface 1003, a memory 1005, and at least one communication bus 1002.
- the communication bus 1002 is used to implement connection communication between these components.
- the user interface 1003 can include a display and a keyboard.
- the optional user interface 1003 can also include a standard wired interface and a wireless interface.
- the network interface 1004 can optionally include a standard wired interface, a wireless interface (such as a WI-FI interface).
- the memory 1005 may be a high speed RAM memory or a non-volatile memory such as at least one disk memory.
- the memory 1005 can also optionally be at least one storage device located remotely from the aforementioned processor 1001. As shown in FIG. 8, an operating system, a network communication module, a user interface module, and a device control application may be included in the memory 1005 as a computer storage medium.
- the network interface 1004 is mainly used to connect the head-end stream device and the CDN; and the user interface 1003 is mainly used to provide an input interface for the user to obtain the user output.
- the processor 1001 can be used to call the device control application stored in the memory 1005, and specifically performs the following steps:
- the end includes a game client with live video viewing function and/or a video client for playing live video;
- the video streaming state is a no-flow state
- determining whether the duration of the no-flow state reaches a preset duration threshold means that no live video data of the game is transmitted to the The status of the CDN;
- the processor 1001 performs the following steps before performing the game live video data sent by the headstream device and transmitting the game live video data to the content distribution network CDN:
- the processor 1001 acquires, corresponding to the game type information of the game live video data, when it is determined that the duration of the no-flow state reaches the preset duration threshold.
- the processor 1001 acquires, corresponding to the game type information of the game live video data, when it is determined that the duration of the no-flow state reaches the preset duration threshold.
- the game video set includes a plurality of pre-stored default game video files, and each default game video file is mapped with a corresponding type identifier.
- the processor 1001 when performing the real-time detection of the video streaming status between the CDN and the CDN, specifically performs the following steps:
- the processor 1001 performs the following steps when determining whether the duration of the no-flow state reaches a preset duration threshold when detecting that the video stream transmission state is a no-flow state. :
- the cumulative duration that lasts for the no-flow state is started, and the duration that continues to be the no-flow state is determined. Whether the preset duration threshold is reached.
- the processor 1001 after the processor 1001 performs the determination of whether the duration of the no-flow state reaches the preset duration threshold, the processor 1001 further performs the following steps:
- the head-end stream device When it is determined that the duration of the no-flow state does not reach the preset duration threshold, and the game live video data sent by the head-end stream device is re-acquired, the head-end stream device is re-recovered The obtained game live video data is sent to the CDN, so that the CDN forwards the game live video data to the plurality of clients.
- the processor 1001 performs a process of acquiring a default game video file corresponding to the game type information of the game live video data, and transmitting the default game video file to the CDN, The following steps:
- the game live video data sent by the head-end stream device can be sent to the CDN, so that the CDN forwards the game live video data to multiple clients; and during the entire live broadcast of the game, Real-time detection of video streaming status with CDN, And when it is detected that the video stream transmission state is a no-flow state, it is determined whether the duration of the continuous streamless state reaches a preset duration threshold, and the no-flow state refers to a state in which no game live video data is transmitted to the CDN; when it is determined that the duration is continuous When the duration of the no-flow state reaches the preset duration threshold, the default game video file corresponding to the game type information of the game live video data is acquired, and the default game video file is sent to the CDN, so that the CDN forwards the default game video file to at most
- the client can make the CDN still transmit data to the client by sending the default streaming file to the CDN before the client disconnects from the CDN when the game live video captured on the site is interrupted for a short
- the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种游戏直播视频的传输控制方法以及装置,其中方法包括:获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN,并实时检测与CDN之间的视频流传输状态;当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到CDN。采用本发明,可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
Description
本专利申请要求2015年12月4日提交的中国专利申请号为201510882553.9,发明名称为“一种游戏直播视频的传输控制方法以及装置”的优先权,该申请的全文以引用的方式并入本申请中。
本发明涉及互联网技术领域,尤其涉及一种游戏直播视频的传输控制方法以及装置。
目前,越来越多用户会选择通过游戏直播平台观看游戏直播视频,目前的游戏直播平台主要包括具有游戏直播观看功能的游戏应用以及用于播放游戏直播视频的视频播放应用。当用户通过客户端登入到游戏直播平台并选择开始观看游戏直播视频时,该客户端将会先连接到CDN(Content Delivery Network,内容分发网络),此时,由在直播现场的头端流设备将所采集到的游戏直播视频上传到视频服务器,再由视频服务器通过CDN的预快推技术将游戏直播视频下发给该客户端,使用户可以快速看到游戏直播视频。但是当在线观看游戏直播视频的用户比较多时,一旦现场所采集的游戏直播视频出现短时间的中断,所有在线观看游戏直播视频的用户的客户端都将需要重新连接CDN,以重新请求游戏直播视频的播放,而此时,视频服务器仍然会通过CDN的预快推技术将游戏直播视频下发给重新连接上CDN的客户端,从而会导致CDN在瞬间内出现出口带宽飙升的情况发生,增加了运营成本,且大量的客户端同时重连也会导致视频服务器瞬间负载上升,增加了系统崩溃的风险,而且客户端重连CDN的过程也降低了客户端播放游戏直播视频的流畅性。
发明内容
本发明实施例所要解决的技术问题在于,提供一种游戏直播视频的传输控制方法以及装置,可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
本发明实施例提供了一种游戏直播视频的传输控制方法,包括:
获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN,以使所述CDN将所述游戏直播视频数据转发至多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端;
实时检测与所述CDN之间的视频流传输状态;
当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态;
当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,以使所述CDN将所述默认游戏视频文件转发至所述多个客户端。
相应地,本发明实施例还提供了一种游戏直播视频的传输控制装置,包括:
第一获取发送模块,用于获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN,以使所述CDN将所述游戏直播视频数据转发至多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端;
检测模块,用于实时检测与所述CDN之间的视频流传输状态;
判断模块,用于当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态;
第二获取发送模块,用于当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,以使所述CDN将所述默认游戏视频文件转发至所述多个客户端。
本发明实施例通过获取头端流设备发送的游戏直播视频数据,可以将游戏直播视频数据发送至CDN,以使CDN将游戏直播视频数据转发至多个客户端;并且在整个游戏直播过程中,还可以实时检测与CDN之间的视频流传输状态,
并当检测到视频流传输状态为无流状态时,判断持续为无流状态的时长是否达到预设时长阈值,无流状态是指无游戏直播视频数据传输至CDN的状态;当判断出持续为无流状态的时长达到预设时长阈值时,获取与游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将默认游戏视频文件发送到CDN,以使CDN将默认游戏视频文件转发至多个客户端,使得当现场所采集的游戏直播视频出现短时间的中断时,可以在客户端断开与CDN的连接之前通过发送默认流媒体文件到CDN,以保证CDN仍有数据传输至客户端,以避免所有客户端重连CDN,从而可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种网络架构示意图;
图2是本发明实施例提供的一种游戏直播视频的传输控制方法的流程示意图;
图3是本发明实施例提供的另一种游戏直播视频的传输控制方法的流程示意图;
图4是本发明实施例提供的一种游戏直播视频的传输控制装置的结构示意图;
图5是本发明实施例提供的另一种游戏直播视频的传输控制装置的结构示意图;
图6是本发明实施例提供的一种第二获取发送模块的结构示意图;
图7是本发明实施例提供的一种检测模块的结构示意图;
图8是本发明实施例提供的一种视频服务器的结构示意图。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例提供的一种网络架构示意图。所述网络架构可以包括头端流设备,视频服务器,CDN以及多个客户端。其中,所述头端流设备可以通过外部网络与所述视频服务器连接,所述视频服务器通过内部网络与CDN连接,所述CDN再通过外部网络与多个客户端连接。在图1所示的网络构架中,所述视频服务器可以获取头端流设备在现场所采集的游戏直播视频数据,所述视频服务器再将获取到的游戏直播视频数据传输至所述CDN,以使所述CDN将缓冲后的游戏直播视频数据推送到各个客户端。所述网络架构是基于所述CDN的预快推技术实现游戏直播视频数据传输,可以使用户能够更快速的看到游戏直播视频。
基于图1所示的网络构架,本发明实施例提供了一种游戏直播视频的传输控制方法。请参见图2,是本发明实施例提供的一种游戏直播视频的传输控制方法的流程示意图,所述方法可以包括:
S201,获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN;
具体的,视频服务器可以获取所述头端流设备发送的游戏直播视频数据,所述游戏直播视频数据是由所述头端流设备在游戏直播现场所采集到的。所述视频服务器再将所述游戏直播视频数据发送至所述CDN,由所述CDN通过预快推技术将缓冲后的所述游戏直播视频数据转发至所述多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端。
进一步的,所述视频服务器还可以将获取到的所述游戏直播视频数据转换为多个不同码率/分辨率的游戏直播视频数据,并将所述多个不同码率/分辨率的游戏直播视频数据发送至所述CDN,由所述CDN根据各个客户端的网络流畅性发送对应的码率/分辨率的游戏直播视频数据到各个客户端,以提高各个客户端播放游戏直播视频的流畅性。
S202,实时检测与所述CDN之间的视频流传输状态;
具体的,在所整个游戏直播过程中,所述视频服务器不仅可以传输所述游戏直播视频数据,还可以实时检测与CDN之间的视频流传输状态,所述视频流传输状态可以包括无流状态和非无流状态,所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态。例如,当所述头端流设备与所述视频服务器之间的传输码率波动较大时,容易导致所述视频服务器在短时间内无法获取到所述头端流设备发送的所述游戏直播视频数据,即现场所采集的游戏直播视频出现短时间的中断,继而导致所述视频服务器没有所述游戏直播视频数据发送到CDN,此时,可以确定所述视频流传输状态为无流状态;当所述视频服务器重新获取到所述头端流设备发送的所述游戏直播视频数据时,所述视频服务器将继续发送所述游戏直播视频数据到所述CDN,此时,可以确定所述视频流传输状态切换回所述非无流状态。
S203,当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;
具体的,当检测到所述视频流传输状态从所述非无流状态切换至所述无流状态时,即检测到当前的所述视频流传输状态为所述无流状态,说明现场所采集的游戏直播视频出现中断,即所述视频服务器出现没有所述游戏直播视频数据传输到所述CDN的情况,此时,所述视频服务器可以开始累计持续为所述无流状态的时长,并实时判断所累计的时长是否达到预设时长阈值。
S204,当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN;
具体的,当S203判断出持续为所述无流状态的时长达到所述预设时长阈值时,所述视频服务器可以获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,再由所述CDN将所述默认游戏视频文件转发到所述多个客户端。所述默认游戏视频文件可以是预先存储于所述视频服务器中的视频文件,且所述默认游戏视频文件的格式、分辨率等参数与所述视频服务器进行推流时所需的各种视频参数一致,以保证所述默认游戏视频文件可以顺利发送至各客户端;而且所述默认
游戏视频文件可以为与当前正在直播的游戏视频的游戏类型相关联的视频文件,例如,所述视频服务器预先存储了多个默认游戏视频文件,分别为不同游戏的游戏宣传视频,当正在直播的游戏视频为A游戏时,所述视频服务器可以选择A游戏的游戏宣传视频(该游戏宣传视频为其中一个默认游戏视频文件)发送到所述CDN。由此可见,在客户端断开与所述CDN的连接之前,通过发送所述默认游戏视频文件到所述CDN,可以使所述视频服务器和所述CDN之间重新恢复数据传输,继而使得所述CDN可以有视频数据传输至各个客户端,以保证各个客户端不会断开与所述CDN的连接,也可以在现场所采集的游戏直播视频出现中断时让用户可以观看所述默认游戏视频文件,避免用户无聊等待。
进一步的,所述视频服务器还可以将获取到的所述默认游戏视频文件转换为多个不同码率/分辨率的默认游戏视频文件,并将所述多个不同码率/分辨率的默认游戏视频文件发送至所述CDN,由所述CDN根据各个客户端的网络流畅性发送对应的码率/分辨率的默认游戏视频文件到各个客户端,以提高各个客户端播放游戏直播视频的流畅性。
本发明实施例通过获取头端流设备发送的游戏直播视频数据,可以将游戏直播视频数据发送至CDN,以使CDN将游戏直播视频数据转发至多个客户端;并且在整个游戏直播过程中,还可以实时检测与CDN之间的视频流传输状态,并当检测到视频流传输状态为无流状态时,判断持续为无流状态的时长是否达到预设时长阈值,无流状态是指无游戏直播视频数据传输至CDN的状态;当判断出持续为无流状态的时长达到预设时长阈值时,获取与游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将默认游戏视频文件发送到CDN,以使CDN将默认游戏视频文件转发至多个客户端,使得当现场所采集的游戏直播视频出现短时间的中断时,可以在客户端断开与CDN的连接之前通过发送默认流媒体文件到CDN,以保证CDN仍有数据传输至客户端,以避免所有客户端重连CDN,从而可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
请参见图3,是本发明实施例提供的另一种游戏直播视频的传输控制方法的流程示意图,所述方法可以包括:
S301,获取游戏直播视频数据的游戏类型信息,并记录与所获取到的所述游戏类型信息对应的类型标识;
具体的,在一个游戏直播活动开始之前,视频服务器可以预先获取游戏直播视频数据的游戏类型信息,即获取本次游戏直播活动中所直播的游戏的类型信息,例如,在本次游戏直播活动中将直播的A游戏的比赛视频,则所述视频服务器可以在游戏直播活动开始之前向运营商获取A游戏的游戏类型信息,所述游戏类型信息可以包括A游戏的游戏名称、游戏类型(包括体育类游戏、棋盘类游戏、角色扮演类游戏等等)。
进一步的,所述视频服务器可以将获取到的所述游戏类型信息转化为对应的类型标识,并记录所述类型标识,以便于后续可以针对性选择对应的默认游戏视频文件。
S302,获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN;
具体的,所述视频服务器可以获取所述头端流设备发送的游戏直播视频数据,所述游戏直播视频数据是由所述头端流设备在游戏直播现场所采集到的。所述视频服务器再将所述游戏直播视频数据发送至所述CDN,由所述CDN通过预快推技术将缓冲后的所述游戏直播视频数据转发至所述多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端。
进一步的,所述视频服务器还可以将获取到的所述游戏直播视频数据转换为多个不同码率/分辨率的游戏直播视频数据,并将所述多个不同码率/分辨率的游戏直播视频数据发送至所述CDN,由所述CDN根据各个客户端的网络流畅性发送对应的码率/分辨率的游戏直播视频数据到各个客户端,以提高各个客户端播放游戏直播视频的流畅性。
S303,实时检测与所述CDN之间的视频流传输状态;
具体的,在所整个游戏直播过程中,所述视频服务器不仅可以传输所述游戏直播视频数据,还可以实时检测与CDN之间的视频流传输状态,所述视频流传输状态可以包括无流状态和非无流状态,所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态。例如,当所述头端流设备与所述视频服
务器之间的传输码率波动较大时,容易导致所述视频服务器在短时间内无法获取到所述头端流设备发送的所述游戏直播视频数据,即现场所采集的游戏直播视频出现短时间的中断,继而导致所述视频服务器没有所述游戏直播视频数据发送到CDN,此时,可以确定所述视频流传输状态为无流状态;当所述视频服务器重新获取到所述头端流设备发送的所述游戏直播视频数据时,所述视频服务器将继续发送所述游戏直播视频数据到所述CDN,此时,可以确定所述视频流传输状态切换回所述非无流状态。
S304,当检测到当前的所述视频流传输状态由所述非无流状态切换至所述无流状态时,开始累计持续为所述无流状态的时长,并判断持续为所述无流状态的时长是否达到预设时长阈值;
具体的,当检测到所述视频流传输状态从所述非无流状态切换至所述无流状态时,即检测到当前的所述视频流传输状态为所述无流状态,说明现场所采集的游戏直播视频出现中断,即所述视频服务器出现没有所述游戏直播视频数据传输到所述CDN的情况,此时,所述视频服务器可以开始累计持续为所述无流状态的时长,并实时判断所累计的时长是否达到预设时长阈值。
S305,当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取所记录的所述类型标识;
S306,在预设的游戏视频集合中,查找与所述类型标识相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN;
具体的,当S304判断出持续为所述无流状态的时长达到所述预设时长阈值时,所述视频服务器可以获取所记录的所述类型标识,并在预设的游戏视频集合中,查找与所述类型标识相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到CDN,再由所述CDN将所述默认游戏视频文件转发到所述多个客户端。其中,所述游戏视频集合包括多个预先存储的默认游戏视频文件,每个默认游戏视频文件均映射有对应的类型标识。其中,所述游戏视频集合中的所有默认游戏视频文件均可以是预先存储于所述视频服务器中的视频文件,且每个默认游戏视频文件的格式、分辨率等参数与所述视频服务器进行推流时所需的各种视频参数一致,以保证所述默认游戏视频文件可以顺利发送至各客户端。例如,所述视频服务器预先存储的所述游戏视频集合包括多个默认游戏
视频文件,所述多个默认游戏视频文件分别为不同游戏的游戏宣传视频,当正在直播的游戏视频为A游戏时,所述视频服务器可以根据A游戏的游戏类型信息对应的类型标识,选择对应的游戏宣传视频(该游戏宣传视频为其中一个默认游戏视频文件)发送到所述CDN。由此可见,在客户端断开与所述CDN的连接之前,通过发送所述默认游戏视频文件到所述CDN,可以使所述视频服务器和所述CDN之间重新恢复数据传输,继而使得所述CDN可以有视频数据传输至各个客户端,以保证各个客户端不会断开与所述CDN的连接,也可以在现场所采集的游戏直播视频出现中断时让用户可以观看所述默认游戏视频文件,避免用户无聊等待。
进一步的,所述视频服务器还可以将获取到的所述默认游戏视频文件转换为多个不同码率/分辨率的默认游戏视频文件,并将所述多个不同码率/分辨率的默认游戏视频文件发送至所述CDN,由所述CDN根据各个客户端的网络流畅性发送对应的码率/分辨率的默认游戏视频文件到各个客户端,以提高各个客户端播放游戏直播视频的流畅性。
S307,当重新获取到所述头端流设备发送的所述游戏直播视频数据时,停止发送所述默认游戏视频文件,并重新将从所述头端流设备获取到的所述游戏直播视频数据发送到所述CDN;
具体的,在S306步骤之后,即在将所述默认游戏视频文件发送到所述CDN之后,当所述视频服务器重新获取到所述头端流设备发送的所述游戏直播视频数据时,停止发送所述默认游戏视频文件,并重新将从所述头端流设备获取到的所述游戏直播视频数据发送到所述CDN,以使所述CDN再将所述游戏直播视频数据转发至所述多个客户端。此后,所述视频服务器可以继续实时检测与所述CDN之间的视频流传输状态,以便于在客户端断开与所述CDN的连接之前发送所述默认游戏视频文件到所述CDN。
S308,当判断出持续为所述无流状态的时长未达到所述预设时长阈值,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,将从所述头端流设备重新获取到的所述游戏直播视频数据发送至所述CDN;
具体的,当S304判断出持续为所述无流状态的时长未达到所述预设时长阈值,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,说明在
所述无流状态的持续时长达到所述预设时长阈值之前,所述视频服务器就可以重新获取到所述头端流设备发送的所述游戏直播视频数据,此时,所述视频服务器可以将从所述头端流设备重新获取到的所述游戏直播视频数据发送至所述CDN,以使所述CDN再将所述游戏直播视频数据转发至所述多个客户端。由于游戏直播视频的中断时长还未达到所述预设时长阈值,所以并不会造成客户端与所述CDN的连接断开,因此,在这种情况下无需获取所述默认游戏视频文件。
本发明实施例通过获取头端流设备发送的游戏直播视频数据,可以将游戏直播视频数据发送至CDN,以使CDN将游戏直播视频数据转发至多个客户端;并且在整个游戏直播过程中,还可以实时检测与CDN之间的视频流传输状态,并当检测到视频流传输状态为无流状态时,判断持续为无流状态的时长是否达到预设时长阈值,无流状态是指无游戏直播视频数据传输至CDN的状态;当判断出持续为无流状态的时长达到预设时长阈值时,获取与游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将默认游戏视频文件发送到CDN,以使CDN将默认游戏视频文件转发至多个客户端,使得当现场所采集的游戏直播视频出现短时间的中断时,可以在客户端断开与CDN的连接之前通过发送默认流媒体文件到CDN,以保证CDN仍有数据传输至客户端,以避免所有客户端重连CDN,从而可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
请参见图4,是本发明实施例提供的一种游戏直播视频的传输控制装置的结构示意图,所述游戏直播视频的传输控制装置1可以应用于视频服务器中,所述游戏直播视频的传输控制装置1可以包括:第一获取发送模块10、检测模块20、判断模块30、第二获取发送模块40;
所述第一获取发送模块10,用于获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN,以使所述CDN将所述游戏直播视频数据转发至多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端;
具体的,所述第一获取发送模块10可以获取所述头端流设备发送的游戏直播视频数据,所述游戏直播视频数据是由所述头端流设备在游戏直播现场所
采集到的。所述第一获取发送模块10再将所述游戏直播视频数据发送至所述CDN,由所述CDN通过预快推技术将缓冲后的所述游戏直播视频数据转发至所述多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端。
进一步的,所述第一获取发送模块10还可以将获取到的所述游戏直播视频数据转换为多个不同码率/分辨率的游戏直播视频数据,并将所述多个不同码率/分辨率的游戏直播视频数据发送至所述CDN,由所述CDN根据各个客户端的网络流畅性发送对应的码率/分辨率的游戏直播视频数据到各个客户端,以提高各个客户端播放游戏直播视频的流畅性。
所述检测模块20,用于实时检测与所述CDN之间的视频流传输状态;
具体的,在所整个游戏直播过程中,在所述第一获取发送模块10传输所述游戏直播视频数据的同时,所述检测模块20还可以实时检测与CDN之间的视频流传输状态,所述视频流传输状态可以包括无流状态和非无流状态,所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态。例如,当所述头端流设备与所述视频服务器之间的传输码率波动较大时,容易导致所述第一获取发送模块10在短时间内无法获取到所述头端流设备发送的所述游戏直播视频数据,即现场所采集的游戏直播视频出现短时间的中断,继而导致所述第一获取发送模块10没有所述游戏直播视频数据发送到CDN,此时,所述检测模块20可以确定所述视频流传输状态为无流状态;当所述第一获取发送模块10重新获取到所述头端流设备发送的所述游戏直播视频数据时,所述第一获取发送模块10将继续发送所述游戏直播视频数据到所述CDN,此时,所述检测模块20可以确定所述视频流传输状态切换回所述非无流状态。
所述判断模块30,用于当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态;
具体的,当检测到所述视频流传输状态从所述非无流状态切换至所述无流状态时,即检测到当前的所述视频流传输状态为所述无流状态,说明现场所采集的游戏直播视频出现中断,即所述视频服务器出现没有所述游戏直播视频数据传输到所述CDN的情况,此时,所述判断模块30可以开始累计持续为所述
无流状态的时长,并实时判断所累计的时长是否达到预设时长阈值。
所述第二获取发送模块40,用于当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,以使所述CDN将所述默认游戏视频文件转发至所述多个客户端;
具体的,当所述判断模块30判断出持续为所述无流状态的时长达到所述预设时长阈值时,所述第二获取发送模块40可以获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,再由所述CDN将所述默认游戏视频文件转发到所述多个客户端。所述默认游戏视频文件可以是预先存储于所述视频服务器中的视频文件,且所述默认游戏视频文件的格式、分辨率等参数与所述视频服务器进行推流时所需的各种视频参数一致,以保证所述默认游戏视频文件可以顺利发送至各客户端;而且所述默认游戏视频文件可以为与当前正在直播的游戏视频的游戏类型相关联的视频文件,例如,所述视频服务器预先存储了多个默认游戏视频文件,分别为不同游戏的游戏宣传视频,当正在直播的游戏视频为A游戏时,所述第二获取发送模块40可以选择A游戏的游戏宣传视频(该游戏宣传视频为其中一个默认游戏视频文件)发送到所述CDN。由此可见,在客户端断开与所述CDN的连接之前,通过发送所述默认游戏视频文件到所述CDN,可以使所述视频服务器和所述CDN之间重新恢复数据传输,继而使得所述CDN可以有视频数据传输至各个客户端,以保证各个客户端不会断开与所述CDN的连接,也可以在现场所采集的游戏直播视频出现中断时让用户可以观看所述默认游戏视频文件,避免用户无聊等待。
进一步的,所述第二获取发送模块40还可以将获取到的所述默认游戏视频文件转换为多个不同码率/分辨率的默认游戏视频文件,并将所述多个不同码率/分辨率的默认游戏视频文件发送至所述CDN,由所述CDN根据各个客户端的网络流畅性发送对应的码率/分辨率的默认游戏视频文件到各个客户端,以提高各个客户端播放游戏直播视频的流畅性。
本发明实施例通过获取头端流设备发送的游戏直播视频数据,可以将游戏直播视频数据发送至CDN,以使CDN将游戏直播视频数据转发至多个客户端;
并且在整个游戏直播过程中,还可以实时检测与CDN之间的视频流传输状态,并当检测到视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值,无流状态是指无游戏直播视频数据传输至CDN的状态;当判断出持续为所述无流状态的时长达到预设时长阈值时,获取与游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将默认游戏视频文件发送到CDN,以使CDN将默认游戏视频文件转发至多个客户端,使得当现场所采集的游戏直播视频出现短时间的中断时,可以在客户端断开与CDN的连接之前通过发送默认流媒体文件到CDN,以保证CDN仍有数据传输至客户端,以避免所有客户端重连CDN,从而可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
再请参见图5,是本发明实施例提供的另一种游戏直播视频的传输控制装置的结构示意图,所述游戏直播视频的传输控制装置1可以应用于视频服务器中,所述游戏直播视频的传输控制装置1可以包括上述图4对应实施例中的第一获取发送模块10、检测模块20、判断模块30、第二获取发送模块40,进一步的,所述游戏直播视频的传输控制装置1还可以包括:类型获取记录模块50、停止通知模块60;
所述类型获取记录模块50,用于获取游戏直播视频数据的游戏类型信息,并记录与所获取到的所述游戏类型信息对应的类型标识;
具体的,在一个游戏直播活动开始之前,所述类型获取记录模块50可以预先获取游戏直播视频数据的游戏类型信息,即获取本次游戏直播活动中所直播的游戏的类型信息,例如,在本次游戏直播活动中将直播的A游戏的比赛视频,则所述类型获取记录模块50可以在游戏直播活动开始之前向运营商获取A游戏的游戏类型信息,所述游戏类型信息可以包括A游戏的游戏名称、游戏类型(包括体育类游戏、棋盘类游戏、角色扮演类游戏等等)。
进一步的,所述类型获取记录模块50可以将获取到的所述游戏类型信息转化为对应的类型标识,并记录所述类型标识,以便于后续可以针对性选择对应的默认游戏视频文件。
所述停止通知模块60,用于当与所述CDN之间所传输的视频流为所述默认游戏视频文件,且重新获取到所述头端流设备发送的所述游戏直播视频数据
时,停止发送所述默认游戏视频文件,并通知所述第一获取发送模块10重新将从所述头端流设备获取到的所述游戏直播视频数据发送到所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端;
具体的,在所述第二获取发送模块40将所述默认游戏视频文件发送到CDN之后,当所述第一获取发送模块10重新获取到所述头端流设备发送的所述游戏直播视频数据时,所述停止通知模块60可以停止发送所述默认游戏视频文件,并通知所述第一获取发送模块10重新将从所述头端流设备获取到的所述游戏直播视频数据发送到所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端。此后,所述检测模块20可以继续实时检测与所述CDN之间的视频流传输状态,以便于在客户端断开与所述CDN的连接之前发送所述默认游戏视频文件到所述CDN。
其中,所述第一获取发送模块10,还用于当判断出持续为所述无流状态的时长未达到所述预设时长阈值,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,将从所述头端流设备重新获取到的所述游戏直播视频数据发送至所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端;
具体的,当所述判断模块30判断出持续为所述无流状态的时长未达到所述预设时长阈值,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,说明在所述无流状态的持续时长达到所述预设时长阈值之前,所述第一获取发送模块10就可以重新获取到所述头端流设备发送的所述游戏直播视频数据,此时,所述第一获取发送模块10可以将从所述头端流设备重新获取到的所述游戏直播视频数据发送至所述CDN,以使所述CDN再将所述游戏直播视频数据转发至所述多个客户端。由于游戏直播视频的中断时长还未达到所述预设时长阈值,所以并不会造成客户端与所述CDN的连接断开,因此,在这种情况下无需获取所述默认游戏视频文件。
进一步的,再请参见图6,是上述图5中的第二获取发送模块40的结构示意图,所述第二获取发送模块40包括:标识获取单元401、查找发送单元402;
所述标识获取单元401,用于当判断出持续为所述无流状态的时长达到所
述预设时长阈值时,获取所记录的所述类型标识;
所述查找发送单元402,用于在预设的游戏视频集合中,查找与所述类型标识相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN;
具体的,当所述判断模块30判断出持续为所述无流状态的时长达到所述预设时长阈值时,所述标识获取单元401可以获取所记录的所述类型标识,并由所述查找发送单元402在预设的游戏视频集合中,查找与所述类型标识相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到CDN,再由所述CDN将所述默认游戏视频文件转发到所述多个客户端。其中,所述游戏视频集合包括多个预先存储的默认游戏视频文件,每个默认游戏视频文件均映射有对应的类型标识。其中,所述游戏视频集合中的所有默认游戏视频文件均可以是预先存储于所述视频服务器中的视频文件,且每个默认游戏视频文件的格式、分辨率等参数与所述视频服务器进行推流时所需的各种视频参数一致,以保证所述默认游戏视频文件可以顺利发送至各客户端。例如,所述视频服务器预先存储的所述游戏视频集合包括多个默认游戏视频文件,所述多个默认游戏视频文件分别为不同游戏的游戏宣传视频,当正在直播的游戏视频为A游戏时,所述查找发送单元402可以根据A游戏的游戏类型信息对应的类型标识,选择对应的游戏宣传视频(该游戏宣传视频为其中一个默认游戏视频文件)发送到所述CDN。由此可见,在客户端断开与所述CDN的连接之前,通过发送所述默认游戏视频文件到所述CDN,可以使所述视频服务器和所述CDN之间重新恢复数据传输,继而使得所述CDN可以有视频数据传输至各个客户端,以保证各个客户端不会断开与所述CDN的连接,也可以在现场所采集的游戏直播视频出现中断时让用户可以观看所述默认游戏视频文件,避免用户无聊等待。
进一步的,再请参见图7,是上述图5中的检测模块20的结构示意图,所述检测模块20包括:
检测单元201,用于实时检测是否有所述游戏直播视频数据传输到所述CDN;
确定单元202,用于若所述检测单元201检测出没有所述游戏直播视频数
据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为无流状态;
所述确定单元202,还用于若所述检测单元201检测出有所述游戏直播视频数据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为非无流状态。
本发明实施例通过获取头端流设备发送的游戏直播视频数据,可以将游戏直播视频数据发送至CDN,以使CDN将游戏直播视频数据转发至多个客户端;并且在整个游戏直播过程中,还可以实时检测与CDN之间的视频流传输状态,并当检测到视频流传输状态为无流状态时,判断持续为无流状态的时长是否达到预设时长阈值,无流状态是指无游戏直播视频数据传输至CDN的状态;当判断出持续为无流状态的时长达到预设时长阈值时,获取与游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将默认游戏视频文件发送到CDN,以使CDN将默认游戏视频文件转发至多个客户端,使得当现场所采集的游戏直播视频出现短时间的中断时,可以在客户端断开与CDN的连接之前通过发送默认流媒体文件到CDN,以保证CDN仍有数据传输至客户端,以避免所有客户端重连CDN,从而可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
请参见图8,是本发明实施例提供的一种视频服务器的结构示意图。如图8所示,所述视频服务器1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图8所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图8所示的视频服务器1000中,网络接口1004主要用于连接头端流设备和CDN;而用户接口1003主要用于为用户提供输入的接口,获取用户输出
的数据;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,并具体执行以下步骤:
获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN,以使所述CDN将所述游戏直播视频数据转发至多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端;
实时检测与所述CDN之间的视频流传输状态;
当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态;
当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,以使所述CDN将所述默认游戏视频文件转发至所述多个客户端。
在一个实施例中,所述处理器1001在执行获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN之前,还执行以下步骤:
获取游戏直播视频数据的游戏类型信息,并记录与所获取到的所述游戏类型信息对应的类型标识;
则在一个实施例中,所述处理器1001在执行当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN时,具体执行以下步骤:
当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取所记录的所述类型标识;
在预设的游戏视频集合中,查找与所述类型标识相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN;
其中,所述游戏视频集合包括多个预先存储的默认游戏视频文件,每个默认游戏视频文件均映射有对应的类型标识。
在一个实施例中,所述处理器1001在执行实时检测与所述CDN之间的视频流传输状态时,具体执行以下步骤:
实时检测是否有所述游戏直播视频数据传输到所述CDN;
若检测出没有所述游戏直播视频数据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为无流状态;
若检测出有所述游戏直播视频数据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为非无流状态。
在一个实施例中,所述处理器1001在执行当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值时,具体执行以下步骤:
当检测到当前的所述视频流传输状态由所述非无流状态切换至所述无流状态时,开始累计持续为所述无流状态的时长,并判断持续为所述无流状态的时长是否达到预设时长阈值。
在一个实施例中,所述处理器1001在执行判断持续为所述无流状态的时长是否达到预设时长阈值之后,还执行以下步骤:
当判断出持续为所述无流状态的时长未达到所述预设时长阈值,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,将从所述头端流设备重新获取到的所述游戏直播视频数据发送至所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端。
在一个实施例中,所述处理器1001在执行获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN之后,还执行以下步骤:
当重新获取到所述头端流设备发送的所述游戏直播视频数据时,停止发送所述默认游戏视频文件,并重新将从所述头端流设备获取到的所述游戏直播视频数据发送到所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端。
本发明实施例通过获取头端流设备发送的游戏直播视频数据,可以将游戏直播视频数据发送至CDN,以使CDN将游戏直播视频数据转发至多个客户端;并且在整个游戏直播过程中,还可以实时检测与CDN之间的视频流传输状态,
并当检测到视频流传输状态为无流状态时,判断持续为无流状态的时长是否达到预设时长阈值,无流状态是指无游戏直播视频数据传输至CDN的状态;当判断出持续为无流状态的时长达到预设时长阈值时,获取与游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将默认游戏视频文件发送到CDN,以使CDN将默认游戏视频文件转发至多个客户端,使得当现场所采集的游戏直播视频出现短时间的中断时,可以在客户端断开与CDN的连接之前通过发送默认流媒体文件到CDN,以保证CDN仍有数据传输至客户端,以避免所有客户端重连CDN,从而可避免CDN出现带宽飙升和视频服务器负载飙升的情况发生,且提高了客户端播放游戏直播视频的流畅性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (12)
- 一种游戏直播视频的传输控制方法,其特征在于,包括:获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN,以使所述CDN将所述游戏直播视频数据转发至多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端;实时检测与所述CDN之间的视频流传输状态;当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态;当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,以使所述CDN将所述默认游戏视频文件转发至所述多个客户端。
- 如权利要求1所述的方法,其特征在于,在所述获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN的步骤之前,还包括:获取游戏直播视频数据的游戏类型信息,并记录与所获取到的所述游戏类型信息对应的类型标识;则所述当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,包括:当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取所记录的所述类型标识;在预设的游戏视频集合中,查找与所述类型标识相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN;其中,所述游戏视频集合包括多个预先存储的默认游戏视频文件,每个默认游戏视频文件均映射有对应的类型标识。
- 如权利要求1或2所述的方法,其特征在于,所述实时检测与所述CDN之间的视频流传输状态,包括:实时检测是否有所述游戏直播视频数据传输到所述CDN;若检测出没有所述游戏直播视频数据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为无流状态;若检测出有所述游戏直播视频数据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为非无流状态。
- 如权利要求3所述的方法,其特征在于,所述当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值,具体包括:当检测到当前的所述视频流传输状态由所述非无流状态切换至所述无流状态时,开始累计持续为所述无流状态的时长,并判断持续为所述无流状态的时长是否达到预设时长阈值。
- 如权利要求1或2所述的方法,其特征在于,在所述判断持续为所述无流状态的时长是否达到预设时长阈值的步骤之后,还包括:当判断出持续为所述无流状态的时长未达到所述预设时长阈值,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,将从所述头端流设备重新获取到的所述游戏直播视频数据发送至所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端。
- 如权利要求1或2所述的方法,其特征在于,在所述获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN的步骤之后,还包括:当重新获取到所述头端流设备发送的所述游戏直播视频数据时,停止发送所述默认游戏视频文件,并重新将从所述头端流设备获取到的所述游戏直播视 频数据发送到所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端。
- 一种游戏直播视频的传输控制装置,其特征在于,包括:第一获取发送模块,用于获取头端流设备发送的游戏直播视频数据,并将所述游戏直播视频数据发送至内容分发网络CDN,以使所述CDN将所述游戏直播视频数据转发至多个客户端;所述多个客户端包括具有直播视频收看功能的游戏客户端和/或用于播放直播视频的视频客户端;检测模块,用于实时检测与所述CDN之间的视频流传输状态;判断模块,用于当检测到所述视频流传输状态为无流状态时,判断持续为所述无流状态的时长是否达到预设时长阈值;所述无流状态是指无所述游戏直播视频数据传输至所述CDN的状态;第二获取发送模块,用于当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取与所述游戏直播视频数据的游戏类型信息相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN,以使所述CDN将所述默认游戏视频文件转发至所述多个客户端。
- 如权利要求7所述的装置,其特征在于,还包括:类型获取记录模块,用于获取游戏直播视频数据的游戏类型信息,并记录与所获取到的所述游戏类型信息对应的类型标识;则所述第二获取发送模块包括:标识获取单元,用于当判断出持续为所述无流状态的时长达到所述预设时长阈值时,获取所记录的所述类型标识;查找发送单元,用于在预设的游戏视频集合中,查找与所述类型标识相对应的默认游戏视频文件,并将所述默认游戏视频文件发送到所述CDN;其中,所述游戏视频集合包括多个预先存储的默认游戏视频文件,每个默认游戏视频文件均映射有对应的类型标识。
- 如权利要求7或8所述的装置,其特征在于,所述检测模块包括:检测单元,用于实时检测是否有所述游戏直播视频数据传输到所述CDN;确定单元,用于若所述检测单元检测出没有所述游戏直播视频数据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为无流状态;所述确定单元,还用于若所述检测单元检测出有所述游戏直播视频数据传输到所述CDN,则确定与所述CDN之间的视频流传输状态为非无流状态。
- 如权利要求9所述的装置,其特征在于,所述判断模块,具体用于当检测到当前的所述视频流传输状态由所述非无流状态切换至所述无流状态时,开始累计持续为所述无流状态的时长,并判断持续为所述无流状态的时长是否达到预设时长阈值。
- 如权利要求7或8所述的装置,其特征在于,所述第一获取发送模块,还用于当判断出持续为所述无流状态的时长未达到所述预设时长阈值,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,将从所述头端流设备重新获取到的所述游戏直播视频数据发送至所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端。
- 如权利要求7或8所述的装置,其特征在于,还包括:停止通知模块,用于当与所述CDN之间所传输的视频流为所述默认游戏视频文件,且重新获取到所述头端流设备发送的所述游戏直播视频数据时,停止发送所述默认游戏视频文件,并通知所述第一获取发送模块重新将从所述头端流设备获取到的所述游戏直播视频数据发送到所述CDN,以使所述CDN将所述游戏直播视频数据转发至所述多个客户端。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510882553.9A CN106851427B (zh) | 2015-12-04 | 2015-12-04 | 一种游戏直播视频的传输控制方法以及装置 |
CN201510882553.9 | 2015-12-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017092259A1 true WO2017092259A1 (zh) | 2017-06-08 |
Family
ID=58796035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2016/083649 WO2017092259A1 (zh) | 2015-12-04 | 2016-05-27 | 一种游戏直播视频的传输控制方法以及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106851427B (zh) |
WO (1) | WO2017092259A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110475155A (zh) * | 2019-08-19 | 2019-11-19 | 北京字节跳动网络技术有限公司 | 直播视频热度状态识别方法、装置、设备及可读介质 |
CN113055693A (zh) * | 2021-04-20 | 2021-06-29 | 上海哔哩哔哩科技有限公司 | 数据处理方法及装置 |
CN113068075A (zh) * | 2021-03-23 | 2021-07-02 | 北京有竹居网络技术有限公司 | 一种直播推流方法、装置、计算机设备及存储介质 |
CN113297065A (zh) * | 2020-11-16 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 数据处理方法、基于游戏的处理方法、装置和电子设备 |
CN114760485A (zh) * | 2021-01-08 | 2022-07-15 | 武汉斗鱼网络科技有限公司 | 视频轮播方法、系统及相关设备 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107277160B (zh) * | 2017-07-12 | 2020-03-17 | 北京潘达互娱科技有限公司 | 一种内容分发网络节点切换方法与装置 |
CN108012119B (zh) * | 2017-12-13 | 2021-06-25 | 苏州华兴源创科技股份有限公司 | 一种实时视频的传输方法、传输系统和一种可读存储介质 |
CN109600642B (zh) * | 2018-12-17 | 2020-10-30 | 广州华多网络科技有限公司 | 一种cdn资源调度方法及装置 |
CN109547469B (zh) * | 2018-12-20 | 2020-06-23 | Oppo广东移动通信有限公司 | 数据传输方法及相关装置 |
CN110149527A (zh) * | 2019-06-10 | 2019-08-20 | 武汉鲨鱼网络直播技术有限公司 | 线下赛的直播方法、后台服务器及合流服务器 |
CN112511783A (zh) * | 2019-09-16 | 2021-03-16 | 武汉斗鱼网络科技有限公司 | 音视频流的混合显示方法、装置、服务器和存储介质 |
CN110856020A (zh) * | 2019-11-04 | 2020-02-28 | 深圳海翼智新科技有限公司 | 一种用于控制终端设备接入摄像装置推流的方法和系统 |
CN111182355B (zh) * | 2020-01-06 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 一种互动方法、特效展示方法和相关装置 |
CN111479125A (zh) * | 2020-05-22 | 2020-07-31 | 上海港聚信息科技有限公司 | 基于云管理平台的直播编码推流接收和分发系统及方法 |
CN112055227B (zh) * | 2020-09-17 | 2022-05-31 | 深圳市欢太科技有限公司 | 云游戏交互方法、系统、装置、存储介质与电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060195523A1 (en) * | 2005-02-25 | 2006-08-31 | Ya-Shu Juang | System and method of broadcasting full-screen video |
CN102421034A (zh) * | 2011-12-19 | 2012-04-18 | 中山爱科数字科技股份有限公司 | 一种视频直播或视频监控所形成的视频播放方法 |
CN103096134A (zh) * | 2013-02-08 | 2013-05-08 | 广州博冠信息科技有限公司 | 一种基于视频直播和游戏的数据处理方法和设备 |
CN104079955A (zh) * | 2013-03-26 | 2014-10-01 | 华为技术有限公司 | 越顶ott直播的方法、装置及系统 |
-
2015
- 2015-12-04 CN CN201510882553.9A patent/CN106851427B/zh active Active
-
2016
- 2016-05-27 WO PCT/CN2016/083649 patent/WO2017092259A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060195523A1 (en) * | 2005-02-25 | 2006-08-31 | Ya-Shu Juang | System and method of broadcasting full-screen video |
CN102421034A (zh) * | 2011-12-19 | 2012-04-18 | 中山爱科数字科技股份有限公司 | 一种视频直播或视频监控所形成的视频播放方法 |
CN103096134A (zh) * | 2013-02-08 | 2013-05-08 | 广州博冠信息科技有限公司 | 一种基于视频直播和游戏的数据处理方法和设备 |
CN104079955A (zh) * | 2013-03-26 | 2014-10-01 | 华为技术有限公司 | 越顶ott直播的方法、装置及系统 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110475155A (zh) * | 2019-08-19 | 2019-11-19 | 北京字节跳动网络技术有限公司 | 直播视频热度状态识别方法、装置、设备及可读介质 |
CN113297065A (zh) * | 2020-11-16 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 数据处理方法、基于游戏的处理方法、装置和电子设备 |
CN114760485A (zh) * | 2021-01-08 | 2022-07-15 | 武汉斗鱼网络科技有限公司 | 视频轮播方法、系统及相关设备 |
CN114760485B (zh) * | 2021-01-08 | 2023-09-26 | 深圳市酷看文化传播有限公司 | 视频轮播方法、系统及相关设备 |
CN113068075A (zh) * | 2021-03-23 | 2021-07-02 | 北京有竹居网络技术有限公司 | 一种直播推流方法、装置、计算机设备及存储介质 |
CN113055693A (zh) * | 2021-04-20 | 2021-06-29 | 上海哔哩哔哩科技有限公司 | 数据处理方法及装置 |
CN113055693B (zh) * | 2021-04-20 | 2023-01-24 | 上海哔哩哔哩科技有限公司 | 数据处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106851427A (zh) | 2017-06-13 |
CN106851427B (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017092259A1 (zh) | 一种游戏直播视频的传输控制方法以及装置 | |
US20240040178A1 (en) | Facilitating WATCH PARTIES | |
US9774922B2 (en) | Method and apparatus for synchronizing paused playback across platforms | |
KR102540459B1 (ko) | Rtp/rtsp 표준을 따르는 서버와 클라이언트에서 실시간 영상 스트리밍 방법 | |
CN103561279B (zh) | 一种多媒体文件播放的方法、系统及云转码服务设备 | |
JP4273165B2 (ja) | コンテンツのストリーミングに使用するための改善された起動方法および装置 | |
EP2391086B1 (en) | Method and apparatus for playing live content | |
WO2017101369A1 (zh) | 直播视频的转码方法及装置 | |
US20140082683A1 (en) | Channel switching processing method, system, and related devices | |
US20170238040A1 (en) | Method, computer program product and server for streaming media content from a server to a client | |
CN112399190B (zh) | 音视频数据获取方法及其装置 | |
JP2011055286A (ja) | 映像配信装置および映像配信方法 | |
US11012725B2 (en) | Live video replay method, replay server and system | |
CN108881931B (zh) | 一种数据缓冲方法及网络设备 | |
CN111866526B (zh) | 一种直播业务处理方法和装置 | |
WO2014154102A1 (zh) | 越顶ott直播的方法、装置及系统 | |
US20160006830A1 (en) | Method for operating a cache arranged along a transmission path between client terminals and at least one server, and corresponding cache | |
WO2017181867A1 (zh) | 视频信息描述文件获取方法及内容分发服务器、机顶盒、系统 | |
US9247315B2 (en) | Disabling of multiple bitrate algorithm for media programs while playing advertisements | |
CN111479122B (zh) | 视频播放方法、装置、设备及存储介质 | |
CN113242437A (zh) | 一种rtsp协议视频无插件播放方法、系统、装置及存储介质 | |
WO2010057391A1 (zh) | 一种流媒体播放控制方法、设备及系统 | |
US20150049208A1 (en) | Method, device and system for video monitoring based on universal plug and play (UPnP) | |
US20110154415A1 (en) | Multicasting video on demand (vod) service system and method using channel merging | |
CN105791223B (zh) | 一种媒体流数据的处理方法及系统、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16869573 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 31.10.2018) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16869573 Country of ref document: EP Kind code of ref document: A1 |