CN110198456B - Live broadcast-based video pushing method and device and computer-readable storage medium - Google Patents

Live broadcast-based video pushing method and device and computer-readable storage medium Download PDF

Info

Publication number
CN110198456B
CN110198456B CN201910341639.9A CN201910341639A CN110198456B CN 110198456 B CN110198456 B CN 110198456B CN 201910341639 A CN201910341639 A CN 201910341639A CN 110198456 B CN110198456 B CN 110198456B
Authority
CN
China
Prior art keywords
video
video frame
live
candidate
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910341639.9A
Other languages
Chinese (zh)
Other versions
CN110198456A (en
Inventor
蔡晓川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910341639.9A priority Critical patent/CN110198456B/en
Publication of CN110198456A publication Critical patent/CN110198456A/en
Application granted granted Critical
Publication of CN110198456B publication Critical patent/CN110198456B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8549Creating video summaries, e.g. movie trailer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Abstract

The invention discloses a live broadcast-based video pushing method, a live broadcast-based video pushing device and a computer-readable storage medium, wherein in the process of pushing a second live broadcast video stream to a live broadcast client, a video frame in the second live broadcast video stream is identified; if the identified first video frame meets the short video pushing condition, a target short video is pushed from a timestamp of the first video frame, wherein the target short video is generated based on the pushed first direct-playing video stream. Through in-process to the live video stream of propelling movement second, broadcast splendid album brocade short video, not only avoided prior art to broadcast the condition emergence of target short video through the mode of looking back, also solved the problem that needs specific rebroadcasting personnel to broadcast the cost of labor height that splendid album video caused among the prior art moreover.

Description

Live broadcast-based video pushing method and device and computer-readable storage medium
Technical Field
The present invention relates to the field of video processing technologies, and in particular, to a live broadcast-based video push method and apparatus, and a computer-readable storage medium.
Background
The game live broadcast of the current network platform is more and more, and the game wonderful highlights on the current live broadcast platform are that after the live broadcast is finished, the live broadcast video which is played is edited and arranged and uploaded to the live broadcast platform by the main broadcast or the platform operation later stage, and then is presented to the user in a review mode, as shown in reference to fig. 1a, the user needs to order the edited video in fig. 1a to see the game wonderful highlights back and forth. However, in practical applications, users rarely watch on-demand content on a live broadcast platform, and the user needs to review the highlight of the game strongly, and the conventional method is similar to the television event rebroadcast, and requires a specific rebroadcast person to sort and play the content in real time, which results in high labor cost.
Therefore, how to play the highlight video in the live broadcast process is one of the considerable technical problems to solve the problem of high labor cost caused by the need of a specific rebroadcast person to play the highlight video in the prior art.
Disclosure of Invention
The embodiment of the invention provides a live broadcast-based video pushing method and device and a computer-readable storage medium, which are used for playing a highlight video in a live broadcast process, and solving the problem of high labor cost caused by the fact that a specific rebroadcasting person is required to play the highlight video in the prior art.
In one aspect, an embodiment of the present invention provides a live broadcast-based video push method, including:
in the process of pushing a second live video stream to a live client, identifying video frames in the second live video stream;
if the identified first video frame meets a short video pushing condition, starting from a timestamp of the first video frame, pushing a target short video, wherein the target short video is generated based on a pushed first direct-playing video stream.
On the other hand, an embodiment of the present invention provides a live broadcast-based video pushing apparatus, including:
the identification module is used for identifying video frames in the second live video stream in the process of pushing the second live video stream to the live client;
the video pushing module is configured to push a target short video from a timestamp of a first video frame if the identified first video frame meets a short video pushing condition, where the target short video is generated based on a pushed first live video stream.
In another aspect, an embodiment of the present invention provides a computer device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor executes the computer program to implement the live broadcast-based video push method provided by the present invention.
In still another aspect, an embodiment of the present invention provides a computer-readable medium storing processor-executable instructions for performing a live broadcast-based video push method provided by the present invention.
In the live broadcast-based video pushing method, device and computer-readable storage medium provided by the embodiment of the invention, in the process of pushing the second live broadcast video stream to the live broadcast client, video frames in the second live broadcast video stream are identified; if the identified first video frame meets a short video pushing condition, starting from a timestamp of the first video frame, pushing a target short video, wherein the target short video is generated based on a pushed first direct-playing video stream. Through to the in-process of propelling movement live broadcast video stream, broadcast splendid album of brocade short video, not only avoided prior art to broadcast the condition emergence of the short video of target through the mode of looking back, also solved the problem that the cost of labor that needs specific rebroadcast personnel to broadcast splendid album of brocade video among the prior art to cause is high moreover.
In addition, after the target short video is generated, the invention provides that the target short video is pushed in the process of pushing the second live video stream to the live client, so that the situation that the target short video is played in a review mode in the prior art is avoided.
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 the practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the invention and not to limit the invention. In the drawings:
FIG. 1a is a schematic diagram illustrating a highlight video playing in the prior art;
FIG. 1b is a diagram illustrating the effectiveness of placing an advertisement at a manually specified location in the prior art;
fig. 2 is a schematic view of an application scenario of a live broadcast-based video push method according to an embodiment of the present invention;
fig. 3 is a flowchart illustrating a live broadcast-based video push method according to an embodiment of the present invention;
fig. 4 is a schematic flowchart of determining that a candidate video frame satisfies a short video capture condition according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of a candidate video frame according to an embodiment of the present invention;
fig. 6 is a schematic diagram of candidate video frames obtained based on a hero alliance live video stream according to an embodiment of the present invention;
fig. 7a is a second flowchart of a live broadcast-based video push method according to an embodiment of the present invention;
FIG. 7b is a diagram illustrating an embodiment of pushing a target short video;
FIG. 8 is a second schematic diagram of pushing a target short video according to the second embodiment of the present invention;
fig. 9 is a schematic diagram of a target short video-highlight video played during a main broadcast in accordance with an embodiment of the present invention;
FIG. 10 is a third schematic diagram illustrating a push target short video according to an embodiment of the present invention;
fig. 11a is a schematic diagram of an area of an anchor frame according to an embodiment of the present invention;
FIG. 11b is a diagram illustrating an advertisement loadable area according to an embodiment of the present invention;
FIG. 12 is a schematic diagram of event monitoring provided by an embodiment of the present invention;
fig. 13 is a schematic structural diagram of a live broadcast-based video pushing apparatus according to an embodiment of the present invention;
fig. 14 is a diagram of an execution logic structure of a live broadcast-based video push method according to an embodiment of the present invention;
fig. 15 is a schematic structural diagram of a video processing module 134 according to an embodiment of the present invention;
fig. 16 is a schematic structural diagram of a computing device implementing a live broadcast-based video push method according to an embodiment of the present invention.
Detailed Description
The live broadcast-based video pushing method, the live broadcast-based video pushing device and the computer-readable storage medium are used for playing the highlight video in the live broadcast process, so that the problem of high labor cost caused by the fact that a specific rebroadcasting person is required to play the highlight video in the prior art is solved.
The preferred embodiments of the present invention will be described below with reference to the accompanying drawings of the specification, it being understood that the preferred embodiments described herein are merely for illustrating and explaining the present invention, and are not intended to limit the present invention, and that the embodiments and features of the embodiments in the present invention may be combined with each other without conflict.
To facilitate understanding of the invention, the present invention relates to technical terms in which:
1. optical Character Recognition (OCR) is a computer input technology that converts characters of various bills, newspapers, books, manuscripts, and other printed matters into image information by scanning and other Optical input methods, and then converts the image information into usable computer information by using a Character Recognition technology.
2. A Content Delivery Network (CDN), which is a Content Delivery Network constructed on a Network, and depends on edge servers deployed in various regions, through functional modules of load balancing, content Delivery, scheduling and the like of a central platform, a user can obtain required Content nearby, network congestion is reduced, and the access response speed and hit rate of the user are improved.
3. Software Development Kit (SDK), which is generally a collection of Development tools used to build application Software for a particular Software package, software framework, hardware platform, operating system, etc.
4. Pushing flow: refers to the process of transmitting the content packaged in the acquisition stage to the server. It is the process of transmitting the video signal of the scene to the network. The 'push streaming' has higher requirement on a network, if the network is unstable, the live broadcasting effect is poor, and the phenomenon of blocking and the like occurs when a viewer watches live broadcasting, so that the live broadcasting experience of the user is influenced.
5. Transcoding is a technique that converts audio/video signals from one format to another. Such as transcoding an audio-video real-time messaging protocol (RTMP) stream format into an FLV file format.
The inventor finds that the prior art needs to manually clip live broadcast content to generate wonderful highlights, but the method needs to consume higher labor cost and time; in addition, prior art when putting in the advertisement at live broadcasting in-process, the position of putting in the advertisement is generally set for in advance by the manual work, refer to the advertisement information put in the position that fig. 1b shows, then carry information such as show advertisement in live broadcasting stream, information such as advertisement will demonstrate in set position department during live broadcasting, will produce the problem of information such as not putting in the advertisement on occasion like this, not only have the condition that information such as the advertisement of putting sheltered from live broadcast content, can influence the user and watch live broadcast experience moreover.
If the problems need to be solved, the existing live broadcast platform needs to be changed, and the wonderful highlight video is expected to be generated in the live broadcast process and does not need to be obtained manually through post-editing processing. In view of this, the present invention designs a live broadcast-based video push scheme, and specifically, in the process of pushing a second live broadcast video stream to a live broadcast client, video frames in the second live broadcast video stream may be identified; if the identified first video frame meets the short video pushing condition, a target short video is pushed from the timestamp of the first video frame, and the target short video is generated based on the pushed first live video stream, so that the target short video is pushed in the live broadcasting process, and the problem of high labor cost caused by the fact that a specific rebroadcasting person is required to play a highlight video in the prior art is solved; further, the target short video in the present invention is generated based on the following method: the method comprises the steps of obtaining candidate video frames in a pushed first live-action video stream, when the candidate video frames belong to the highlight video, intercepting video segments containing the candidate video frames from the first live-action stream, and then generating a short video based on the video segments, namely the highlight video, so that the effect of automatically generating the highlight video is achieved, manual post-editing processing is not needed, and labor cost and time are saved.
After the design idea of the embodiment of the present invention is introduced, some simple descriptions are provided below for application scenarios to which the technical solution of the embodiment of the present invention can be applied, and it should be noted that the application scenarios described below are only used for illustrating the embodiment of the present invention and are not limited. In specific implementation, the technical scheme provided by the embodiment of the invention can be flexibly applied according to actual needs.
Referring to an application scenario shown in fig. 2, the application scenario includes a terminal device 101, a terminal device 102, a terminal device 103, and a server 104, where the terminal device 101, the terminal device 102, and the terminal device 103 correspond to a user 1, a user 2, and a user 3, respectively. The same live client can be installed in the terminal device 101, the terminal device 102 and the terminal device 103. Taking the example that the user 1 initiates the live broadcast, and the users 2 and 3 watch the live broadcast initiated by the user 1 as an example, when the user 1 initiates the live broadcast through the live broadcast client, the terminal device 101 pushes the live video stream to the server 104, and then the server 104 pushes the live stream to the terminal device 102 and the terminal device 103, so that the users 2 and 3 can watch the live broadcast initiated by the user 1, and after the live stream is pushed to the users 2 and 3, in order to realize the push of the target short video, the server 104 can push the target short video in the process of pushing the second live video stream to the live broadcast client in the terminal device 102 and the terminal device 103 by implementing the live broadcast-based video push method provided by the invention, so that the effect of pushing the target short video in the live broadcast process is realized, a function of looking back the highlight is not required to be specially opened, and the problem of high labor cost caused by the fact that a specific rebroadcast person is required to play the highlight video in the prior art is solved.
The aforementioned terminal device 101, terminal device 102, and terminal device 103 may be a mobile phone, a tablet computer, a Personal Digital Assistant (PDA), a notebook computer, an intelligent wearable device (e.g., a smart watch and a smart bracelet), a Personal computer, and so on, and no matter which type of terminal device is, a client corresponding to the same social platform may be installed in the terminal device, and a corresponding social account may be logged in through each terminal device. Also, the aforementioned server 104 may be a personal computer, a large or medium sized computer, a cluster of computers, or the like. The live broadcast client can be a live broadcast client provided by a web, an Android system or an iOS system.
It should be noted that the live video stream in the present invention may be a game live video stream, and for convenience of description, the game live video stream is described as an example in the following.
Of course, the method provided in the embodiment of the present invention is not limited to be used in the application scenario shown in fig. 2, and may also be used in other possible application scenarios, and the embodiment of the present invention is not limited thereto. The functions that can be implemented by each device in the application scenario shown in fig. 2 will be described in the following method embodiments, and will not be described in detail herein.
In the following, with reference to the following drawings, a live broadcast-based video push method provided according to an exemplary embodiment of the present invention is described in conjunction with an application scenario illustrated in fig. 2. It should be noted that the above application scenarios are merely illustrated for the convenience of understanding the spirit and principles of the present invention, and the embodiments of the present invention are not limited in this respect. Rather, embodiments of the present invention may be applied to any scenario where applicable.
Referring to fig. 3, a schematic flow chart of a live broadcast-based video push method according to an embodiment of the present invention is shown, and is described by taking an example of applying the method to the server in fig. 2, where the method implemented by the server may include the following steps:
and S31, acquiring candidate video frames from the pushed first live video stream.
In this step, in order to generate the highlight highlights for the live broadcast user to watch again, it is necessary to intercept the candidate video frames from the first live broadcast video stream. Alternatively, the candidate video frames may be periodically obtained from the first live video stream, such as by intercepting one candidate video frame from the first live video stream every second.
Optionally, before obtaining the candidate video frame from the first live video stream, the method further includes:
and confirming that the first live video stream carries a video identification mark.
Specifically, the live broadcast platform has thousands of live broadcast rooms in which live broadcast is performed, and the live broadcast content of some rooms is relatively boring and not enough to arouse the interest of users, so that the live broadcast rooms of the live broadcast platform can be configured, and meanwhile, a server of the live broadcast platform distributes some wonderful live broadcasts to the live broadcast rooms configured with the video identification identifications. Based on this, when the live video stream is pushed based on the live broadcast room, the video identification identifier configured for the live broadcast room is carried in the live video stream, and when the live video stream is obtained, if the live video stream carries the video identification identifier, the candidate video frame is obtained from the pushed live video stream.
And S32, when the candidate video frame meets the short video interception condition, intercepting a video segment containing the candidate video frame from the first direct-playing video stream.
In the step, the short video interception conditions set by different live video streams are different, and the purpose is to intercept some wonderful short videos with higher popularity. For example, when the first live video stream is a game live video stream, a video segment which is very wonderful and worth watching again is generally intercepted, so a short video interception condition is set for this purpose, so that when a candidate video frame satisfies the short video interception condition, the content of the candidate video frame is wonderful, and therefore the interception of the video segment containing the candidate video frame is: and taking the candidate video frame as a reference, and intercepting a plurality of video frames with the timestamps later than that of the candidate video frame and a plurality of video frames with the timestamps earlier than that of the candidate video frame.
And S33, generating a target short video based on the intercepted video segment.
In the step, after a video segment is intercepted, the video segment is a wonderful highlight video; in order to enable a live broadcast watching user to know whether a live broadcast watched is a highlight video or a live broadcast video, the intercepted video segment can be processed, for example, a highlight is added to the first video frame of the video segment to identify the currently played video as a highlight; in addition, a starting short video for showing that the highlight video is about to be played and an ending short video for showing that the highlight video is played are further configured, and the starting short video, the intercepted video segment and the ending short video form a target short video. Based on the method, the wonderful highlight video can be automatically generated without manually and later editing the live video stream, so that not only is the labor cost saved, but also the generation time of the wonderful highlight video is saved.
It should be noted that the number of video frames included in the starting short video, the truncated short video, and the ending short video is not limited in the present invention, and may be determined according to the actual situation.
Based on any of the above embodiments, it may be determined that the candidate video frame satisfies the short video truncation condition according to the method shown in fig. 4:
and S41, identifying the content type of the candidate video frame.
In particular, a trained content type recognition model may be utilized to identify content types of candidate video frames. In specific implementation, the content type recognition models can be trained by using pictures of various content types in an off-line manner, when candidate video frames are acquired on line, the trained content type recognition models are called, the candidate video frames are used as the input of the content type recognition models, the content type recognition models can output the matching probability between the candidate video frames and each content type, and the content types of the candidate video frames can be determined according to the matching probability.
Optionally, the content type recognition model may be a classification model based on a convolutional neural network, the live broadcast scene is classified into a plurality of content types and content states, and because a large number of live broadcast rooms need to be subjected to type recognition every second and the highlight video has a high requirement on the recognition speed, the present invention may obtain the content type recognition model by training the VGG16 classification model based on these considerations.
When the candidate video frame is a game video frame, the content type is a game type, the content type identification model is correspondingly a game type identification model, and when the game type identification model is used for identifying that the game type of the candidate video frame is the maximum matching probability with the absolute position, the game type of the candidate video frame is determined to be the absolute position.
And S42, if the content type is the set content type, performing event detection on the candidate video frame, and when determining that an event exists in the candidate video frame, determining the event type of the existing event.
Specifically, some set content types may be preset and stored in the set list, when the content type of the candidate video frame is identified, if the identified content type is in the set list, it is preliminarily determined that the candidate video frame may be a highlight video frame, in order to further determine whether the candidate video frame is a highlight video frame, event detection may be performed on the candidate video frame, and when it is determined that an event exists in the candidate video frame, an event type of the existing event is determined.
The events in the invention are used for representing the content in the candidate video frames, and when the live broadcast is the game live broadcast, the events in the sniping scene can comprise the killing event and the like.
When the identified content type is not the set content type, the subsequent process need not be executed.
When event detection is performed on candidate video frames, the invention provides three methods, certainly not limited to the three algorithms, specifically, a suitable algorithm can be selected according to different application scenes for event detection, and then each event detection algorithm is introduced:
the first method is as follows: event detection based on optical character recognition algorithms.
Alternatively, event monitoring may be performed using an optical character recognition algorithm according to the following process: intercepting a key area from a candidate video frame, performing character recognition on the key area, and determining whether an event exists in the candidate video frame based on a character recognition result.
Specifically, since OCR recognition of an excessively large video frame may cause OCR service delay and accuracy to be affected, in order to improve OCR recognition speed and accuracy, a key region may be cut out from a candidate video frame, so that OCR recognition is performed only on the key region instead of performing OCR recognition on the entire candidate video frame, thereby improving a character recognition speed of the candidate video frame. It should be noted that, in practical applications, the position information of the key areas in different candidate video frames may be roughly determined, for example, the position information is determined based on experience, and then the key areas are cut out based on the position information, as shown in fig. 5, a schematic diagram of the right 5 key areas is cut out from the candidate video frame on the left side of fig. 5.
In specific implementation, images of some events may contain specific characters, and characters corresponding to different events are different, so based on the principle, after key areas are intercepted, the characters in the key areas can be identified by using an optical character identification algorithm, and whether the events exist in the candidate video frames or not is judged by using rules between the events and the characters according to character identification results.
The second method comprises the following steps: event detection based on a convolutional neural network classification algorithm.
Event monitoring can be performed on the candidate video frame based on the convolutional neural network according to the following process: determining whether the candidate video frame has an event or not according to the candidate video frame and a trained event detection model, wherein a training sample of the event detection model is as follows: there are event image samples of the event and image samples other than the event image samples.
Specifically, the event detection model in the invention is a trained convolutional neural network, and is obtained by performing iterative training on the convolutional neural network by using event image samples corresponding to various events and image samples without events.
On the basis, the candidate video frame is input into a trained event detection model, the event detection model outputs an event detection result of the candidate video frame, if an event exists in the candidate video frame, the output result outputs an existing event type identifier, and if the event does not exist in the candidate video frame, an identifier used for representing the absence of the event is output to be different from the event type identifier. Alternatively, the event type identifier may be represented by a number, and the event corresponding to different event type identifiers is different. For example, a number "1" identifies a kill event, a number "1" identifies an open sniper lens event, and a number "0" identifies an absence of an event.
The third method comprises the following steps: event detection based on feature template matching.
Optionally, the following process implementation mode two may be followed, including: performing feature matching on the candidate video frames and the feature template of each event; and determining whether the candidate video frame has an event or not according to the matching result.
Specifically, the candidate video frame and the feature template of each event are input into a feature template matching algorithm, and the template matching algorithm can output the result of whether the event exists in the candidate video frame.
When the method is specifically implemented, feature templates corresponding to multiple events are configured in advance, then a feature template matching algorithm is used for quickly matching the candidate video frame and the feature templates corresponding to the multiple events, the number of pixel points of the candidate video frame matched with the feature templates of the events is determined respectively, and if the number of the matched pixel points is determined to be larger than a set number threshold value based on the feature template of one event, the event is determined to exist in the candidate video frame. For example, if it is determined that the number of matched pixel points is greater than the set number threshold based on the feature template of the killing event, it is determined that an event exists in the candidate video frame, and the existing event is the killing event, so that the event type corresponding to the killing event can be determined.
Specifically, the plurality of events may correspond to an event type, and the event type may include a killing type, a gunshot type, a group battle type, and the like, which may be determined according to actual conditions.
And S43, if the event type is the set event type, determining that the candidate video frame meets the short video interception condition.
Specifically, a set event type list is configured in advance, and when it is determined that the event type identified in step S43 matches the set event type in the set event type list, it is determined that the candidate video frame satisfies the short video capture condition.
To better understand the flow shown in fig. 4, the following two examples are described below:
with reference to fig. 5, fig. 5 is a candidate video frame obtained from the first live video stream, if the content type (game type) of the candidate video frame is absolutely required and absolutely required is a set content type based on step S41, a key area is captured from the candidate video frame, and character recognition is performed on the key area based on the OCR recognition method, and the recognized character is "3 times 25802ichthy" to determine that there is a killing event in the candidate video frame, and the event type of the killing event is a killing type, and the killing type is a set event type, it is determined that the candidate video frame shown in fig. 5 satisfies the short video capture condition, a video segment including the candidate video frame is captured from the first live video stream, then a collection video identifier is added to the video segment, and a start short video and an end short video are configured, so as to form a target short video and a highlight game collection video.
With reference to fig. 6, fig. 6 shows a candidate video frame obtained from a first live video stream (hero alliance live video stream), when the content type of the candidate video frame is identified as hero alliance by using a VGG16 classification model, and the hero alliance belongs to a set content type, a key region is intercepted from the candidate video frame, and character recognition is performed on the intercepted key region based on an OCR recognition algorithm, for example, characters such as "enemy is killed" are identified, it is determined that an event exists in the candidate video frame and the event type is a killing type, and the killing type is a set event type, a video segment containing the candidate video frame shown in fig. 6 can be intercepted from the hero alliance live video stream, and then a target short video is generated based on the video segment, that is, a hero alliance highlight video.
Alternatively, candidate video frames of characters such as "double kill", "super god", etc. may also exist in the hero union game, and if such candidate video frames are acquired and the characters are recognized, it may be determined whether the type of the group war event is present, while for the hero union game, one large-scale group battle is the key for selecting the highlight video, and when candidate video frames containing characters such as 'double kill', 'super god' and the like are obtained, the intercepted video segment containing the candidate video frames can be determined as the highlight video. In addition, the number of the remaining game people, the number of the remaining enemies, the number of the remaining my people, the killing event and the like can be determined based on object detection, whether the type of the event is a group of battle event or not is further determined by combining the character recognition result, and then the wonderful highlight video is generated according to the method provided by the invention. Based on the method, the wonderful highlight video is pushed to the user to watch in the live broadcast process, and the excitement of watching the live broadcast by the user can be improved instead of the objectionability of the user.
After the generation flow of the target short video is introduced, the playing flow of the target short video is introduced next, when the server pushes the second live broadcast video stream to the live broadcast client, the target short video can be mixed into the second live broadcast video stream in the pushing process and pushed to the live broadcast client, and therefore the wonderful highlight video can be played in the live broadcast process, a review page is not required to be specially arranged on a live broadcast platform, the operation cost of the live broadcast platform is reduced, meanwhile, special rebroadcast personnel are not required to play the wonderful highlight video, and the problem that in the prior art, the labor cost is high due to the fact that the special rebroadcast personnel are required to play the wonderful highlight video is solved. Specifically, referring to the target short video push process shown in fig. 7a, the method includes the following steps:
s71, in the process of pushing the second live video stream to the live client, identifying video frames in the second live video stream.
And S72, if the identified first video frame meets the short video pushing condition, pushing the target short video from the timestamp of the first video frame.
Optionally, the first live video stream and the second live video stream may be live video streams in the same live room and satisfy an association relationship in terms of time, that is, the push time of the first live video stream and the push time of the second live video stream satisfy the association relationship, for example, when the live video stream is a live broadcast of an absolute survival game, if the second live video stream is a live video stream of a fifth game which absolutely generates, the first live video stream may be a live video stream of a fourth game which absolutely generates, or a live video stream of any one of the first four games which absolutely generates a game.
Optionally, the first live video stream and the second live video stream may not be live video streams of the same live room, or the first live video stream and the second live video stream may not satisfy a temporal association in terms of time. For example, when the live broadcast is a shopping live broadcast, the first live broadcast video stream is a shopping live broadcast video stream, and then after a shopping target short video with a large number of bright spots is generated by implementing the flow shown in fig. 3 based on the first live broadcast video stream, the shopping target short video can be pushed when the second live broadcast video stream is pushed in other live broadcast rooms and/or at a time point without a time association relationship, so that more users can watch the shopping target short video, and then the live broadcast users can know the items in the shopping short video, thereby improving the diffusivity of the items.
Optionally, when the target short video is pushed from the timestamp of the first video frame, the video frames with timestamps later than the timestamp of the first video frame in the first video frame and the second live video stream may not be pushed, and after the target short video is pushed, the video frames matched with the pushed timestamps in the second live video stream are pushed from the pushed timestamps.
Optionally, when the first video frame meets the short video push condition and the target short video starts to be pushed at the timestamp of the first video frame, the second live video stream may be continuously pushed, so as to achieve an effect of displaying the target short video in a small window on the first video frame and the subsequent video frames.
In steps S71 and S72, in the process of pushing the second live video stream, the target short video cannot be pushed at any time, and the content in the second live video stream also needs to be identified, so that the video frames in the second live video stream can be identified in real time, when it is identified that the first video frame in the second live video stream meets the short video pushing condition, the target short video is pushed from the timestamp of the first video frame, then in the process of pushing the target short video, a plurality of video frames in the second live video stream whose timestamps are later than the timestamp of the first video frame cannot be pushed, and the number of the video frames that cannot be pushed specifically may be determined according to the playing duration of the target short video. If the target short video is played for 2 minutes, the video frames in the second live video stream within 2 minutes are not pushed from the timestamp of the first video frame.
Specifically, when the above process is implemented, the second live video stream is decoded in advance, and then the decoded second live video stream is transmitted to a Filter Chain encoder for special effect processing, for example, a time window is added to the encoder to ensure the fluency of video stream push. When the fact that a first video frame in a second live video stream meets a video playing condition is recognized, an encoder outputs the first video frame and then really starts to switch and push a first video frame in a target short video, then sequentially pushes subsequent video frames in the target short video, the video frame in the second live video stream is not pushed directly after the target short video is pushed, but continues to read the frame from the encoder, and when the video frame in the second live video stream is encountered, the encoder is refreshed, a timestamp of the frame is filled according to the timestamp of the encountered video frame, then the video frame in the second live video stream starts to be pushed, so that the target short video is pushed in the process of pushing the second live video stream, and meanwhile, the video frame in the second live video stream continues to be pushed after the target short video is pushed.
In order to better understand the process of pushing a target short video in a second live video stream, which is described with reference to fig. 7b, T1 to T7 in fig. 7b are all continuous video frames in the second live video stream, the format of the second live video stream is an RTMP format, the target short video includes two video frames T1 and T2, and when it is recognized that a T3 video frame meets a short video pushing condition, the T3 and T4 video frames are replaced by the T1 and T2 video frames, so that the replaced second live video stream is: t1, T2, T5, T6 and T7, thus not only completing the playing of the target short video, but also continuing to play the video in the second live video stream after the playing of the target short video is completed.
Optionally, when the target short video is pushed, some video frames of the second live video stream inevitably exist and cannot be pushed to the live client, so that in order to avoid that important and/or wonderful video frames in the second live video stream are not pushed to the live client, the present invention further includes the following processes:
when the target short video is pushed, continuously identifying the video frame of the second live video stream, if the second video frame is identified to meet the short video pushing stopping condition, starting from the timestamp of the second video frame, stopping pushing the target short video, and starting from the second video frame to push the second live video stream.
Specifically, when the second live broadcast video stream is a game live broadcast video stream, some more wonderful video frames may exist in the game live broadcast video stream, and the pushed target short video may cause that the more wonderful video frames are not pushed to the live broadcast client, so that a user of the live broadcast client cannot see the wonderful live broadcast video stream, and further, the interest level of the user in the second live broadcast video stream is not high; in order to avoid this problem, an embodiment of the present invention provides that, when a video frame meeting a short video push condition is an ith video frame, in a process of pushing a target short video in a second live video stream, a video frame with a timestamp later than a timestamp of the video frame in the second live video stream is continuously identified, if an i +1 video frame and an i +2 video frame are continuously identified, \8230, when it is identified that an i +5 video frame (a second video frame) meets a short video stop condition, that is, content of the i +5 video frame is highlight content, the pushing of the target short video may be stopped, and then the i +5 video frame and the i +6 video frame begin to be pushed, the \823082, so that a user neither misses the highlight video in the second live video stream nor watches the target short video. With reference to fig. 8, T1 to T7 in fig. 8 are all continuous video frames in the second live video stream, the target short video includes T1 to T8 video frames, when it is recognized that the T3 video frame satisfies the short video push condition, the T1 video frame, the T2 video frame, and the like of the target short video are pushed from the timestamp of the T3 video frame, at this time, the video frames such as T4 and T5 are not pushed, but the video frames such as T4 and T5 are continuously recognized, when it is recognized that the T5 video frame (the second video frame) satisfies the short video stop condition, the T3 video frame is not pushed at this time (the same interval time of the video frames is taken as an example), and the T5 video frame, the T6 video frame, and the like in the second live video stream are continuously pushed.
It should be noted that the short video push condition and the short video push stop condition in the embodiment of the present invention may be set according to an actual situation, so as not to affect the live broadcast of the highlight content in the second live broadcast video stream. Optionally, when identifying the video frame in the second live video stream, the existing method may be used for identifying, or determining an event existing in the video frame, and then determining whether the existing event meets a short video push condition, or the like. Or some video frames meeting the short video pushing condition are configured in advance, then the video frames in the second live video stream are matched with the video frames meeting the short video pushing condition one by one, and if the matching is successful, the video frames meeting the second live video stream are determined to meet the short video pushing condition.
Optionally, if the second live video stream is a game live video stream, the first video frame that satisfies the short video push condition at least includes one of the following items: the target object does not exist in the video frame and the set area in the video frame between two adjacent games.
Specifically, when the second live video stream is a game live video stream, the target short video can be pushed between two games (game offices) or under a main broadcast, and based on the purpose, if a video frame in the game live video stream is identified to belong to a video frame between two games, it is indicated that the video frame currently enters the game offices, the target short video can be pushed; if it is identified that no target object exists in the area (set area) where the anchor frame is located in the video frame in the live game video stream, it indicates that the anchor is playing down, and at this time, the target short video may be pushed, as shown in fig. 9, where fig. 9 is a schematic diagram of a highlight video, which is the target short video played during the anchor is playing down.
Optionally, when the second live video stream is a game live video stream, based on any of the above embodiments, when obtaining the target short video, the following process may be further implemented: and confirming that the target short video meets the pushing condition between game offices.
Specifically, the game scenario push conditions of different game settings in the present invention may be different or the same, and may be specifically set according to actual situations. Since the inter-game-office time is short, if the generated target short video is too long or the wonderness is insufficient, the target short video is not played among the game offices. And the anchor shows that the content of the current live video is not wonderful and does not need to be explained by the anchor, and the target short video can be pushed randomly at the moment.
Specifically, when the candidate video frame meets the short video capture condition, the game state information in the candidate video frame can be further identified, if the game state information meets the game interoffice push condition, when it is detected that the video frame in the game live video stream belongs to a video frame between two games, the target short video generated based on the candidate video frame is allowed to be pushed between the game interoffices, otherwise, the target short video generated based on the candidate video frame is not allowed to be pushed between the game offices. The game state information corresponding to different games is different, and may be determined according to actual conditions.
Referring to fig. 5, the game state information of the absolute survival game in fig. 5 may be, but is not limited to: the number of the game remainders and the number of the killing head, and the like, and then the set game interbank push condition of the absolute survival game can be as follows: if the number of remaining game people is not higher than the first remaining number threshold and/or the total number of killing people is not lower than the first threshold, it can be determined whether the number of remaining game people and the total number of killing people satisfy the inter-game-office pushing condition of the above-mentioned dead-place game after the number of remaining game people and the total number of killing people are identified based on fig. 5, and if so, when the entry into the inter-game-office is determined based on the above-mentioned embodiment, the target short video including the candidate video frame of fig. 5 is pushed according to the pushing method provided by any of the above-mentioned embodiments.
Referring to fig. 6, the game state information of the hero alliance game in fig. 6 may be, but is not limited to: the number of the remaining players of the game, the number of the remaining enemies, the number of the remaining my players, the number of attack assisting times, the number of killing players and the like, and the game interoffice push condition of the hero union game based on the setting can be, but is not limited to: the number of the game remaining persons is not higher than a second remaining number threshold, the number of the enemies is not higher than a third remaining number threshold, the number of the my remaining persons is not lower than a fourth remaining number threshold, the number of the attack-assisting persons is not lower than a preset number threshold, and/or the number of the killing persons is not lower than a second killing number threshold, and the like. After identifying the game state information of the hero alliance game based on fig. 6, the upper right corner "5/5/10" in fig. 6 respectively represents the number of killers/the number of deaths/the number of attacks, it can be determined whether the game state information satisfies the game office push condition of the hero alliance game, and if so, when it is determined to enter the game office based on the above embodiments, the target short video including the candidate video frame of fig. 6 is pushed according to the push method provided in any of the above embodiments.
It should be noted that the number of the remaining players, the number of the remaining enemies, the number of the remaining my, the number of the attack-assisting players, and the number of the killing players can be identified based on a digital matching model, and a training process of the model is similar to a training process of the content type identification model and will not be described here.
Referring to fig. 10, the live game video stream in fig. 10 includes T1 to T8 video frames, and after the hero alliance target short video is generated according to any of the above embodiments of the present invention, the hero alliance target short video includes T1 to T5 video frames, if it is determined that the hero alliance target short video meets the game inter-game play condition, it is identified that a T3 video frame (a first video frame) in the live game video stream belongs to a video frame between two adjacent games, that is, the short video push condition is met, a T1 video frame and a T2 video frame start to be pushed at a timestamp corresponding to the T3 video frame; when the T5 video frame (a second video frame) is identified to be a highlight video frame, namely the pushing stopping condition of the short video is met, the T3 video frame is not pushed, and the T5 video frame, the T6 video frame and the T7 video frame are started to be pushed; when it is recognized that no target object exists in the set area in the T8 video frame (the first video frame), that is, the video is broadcast in the anchor, the T1-T5 video frames included in the hero alliance target short video can be continuously pushed at this time, and other target short videos can also be pushed. Specifically, when the hero alliance target short video does not meet the game inter-game play condition, when it is detected that the t3 video frame is the game inter-game video frame, the hero alliance target short video cannot be pushed, and only when it is detected that the t8 video frame is the anchor download video frame, the hero alliance target short video is pushed.
Based on any embodiment, after the target short video is generated based on the intercepted video segment, the following process is further included:
and determining the launching area information of the target short video, wherein the launching area information comprises area information of the video frames in the target short video, and launching data can be loaded.
On the basis, when the target short video is pushed, the launching area information is pushed to the live broadcast client, so that after the live broadcast client receives the launching area information, the data to be launched are obtained, and the data to be launched are launched based on the area information of the loadable launching data.
Specifically, the delivery area information in the present invention may include area information that can load delivery data; the information of the release area may further include a release duration, a release form, and the like. Specifically, the determined region information where the delivery data can be loaded may be represented as: and the coordinate of the central point can load the length and the width of the release data area. Of course, other representation methods can be provided, and the concrete conditions can be determined according to actual conditions.
Specifically, after the target short video is obtained, when it is identified whether the candidate video frame meets the short video capture condition, the region information in which the release data can be loaded in the candidate video frame can be identified, and similarly, the region information in which the release data can be loaded in other video frames in the target short video can be identified, so that the number of video frames with the same region information can be screened out, and then the release duration of the release data can be determined based on the number of the video frames. The above-mentioned launching mode can be dynamic data launching, and can also be static data launching.
Specifically, the loadable delivery data in the present invention may be, but is not limited to, an advertisement, a text, and the like, and if the delivery data is an advertisement, the loadable delivery data area is a loadable advertisement area. For convenience of description, the following description will take the advertisement of the placement data embedded in the live broadcast as an example.
Specifically, the area information where the delivery data can be loaded can be determined according to the content of the video frame in the target short video and the position of the anchor in the video frame. And regional information and the like capable of loading the release data can be set according to the requirements of the live broadcast platform.
Optionally, the determining of the region information where the delivered data can be loaded in the video frame in the target short video may be implemented according to the following process, and the determining of the region information where the delivered data can be loaded in the candidate video frame in the target short video is described as an example, and the process includes the following steps: determining the region information and the confidence coefficient of the non-shelterable candidate region in the candidate video frame according to the candidate video frame and the trained region positioning model; determining the non-shelterable region according to the confidence coefficient of the non-shelterable candidate region; and then determining the area information capable of loading the release data in the candidate video frame according to the area information of the non-shelterable area.
By implementing the process of the area information of the loadable launch data, if the anchor frame area in fig. 11a is an un-shelterable area, based on the area information of the un-shelterable area, an edge area close to the un-shelterable area and not belonging to the un-shelterable area is selected and determined as the launch data loadable area, and then the area information of the launch data loadable area is output. Referring to fig. 11b, fig. 11b shows a loadable data area determined based on the main frame area, and when the embedded data is an advertisement, the loadable data area in fig. 11b is an loadable advertisement area.
Optionally, when determining the region information in which the delivery data can be loaded in the candidate video frame, the following process may be further performed: and determining the change degree between the candidate video frame and the previous video frame, and if the change degree is greater than a preset degree threshold value, determining the regional information which can load the release data in the candidate video frame based on the process. And if the change degree is smaller than the preset degree threshold value, directly taking the area information which can be loaded with the release data in the previous video frame as the area information which can be loaded with the release data in the candidate video frame. The position of the loadable data area sent to the live broadcast client is relatively fixed, so that the live broadcast client puts advertisements in the fixed position and important contents in the live broadcast video cannot be shielded.
Optionally, in the same application scenario, the area information of the areas capable of placing advertisements on some video frames is fixed, for example, fixed positions right above or left of the area where the anchor frame is located in some game scenarios are generally available for placing advertisements, so that each game interface in a game may be analyzed in advance, and then some video frames capable of placing advertisements at fixed positions are screened out, and the area information of the advertisement-placeable areas in these video frames is recorded and stored in a format as follows: (video frame image, and area information of the release data can be loaded in the video frame image). In this way, after a candidate video frame is obtained from the target short video, the candidate video frame can be matched with the screened video frame, and if the matching is successful, the region information of the successfully matched video frame, which can be loaded with the release data, is determined as the region information of the candidate video frame, which can be loaded with the release data; and if the matching is unsuccessful, determining the area information which can load the release data in the candidate video frame according to the process.
After determining the area information in which the delivery data can be loaded in the video frame in the target short video according to any method, the area information can be carried in the delivery area information along with the pushed target short video and sent to the live broadcast client, so that when the live broadcast client watches the live broadcast, if the watched live broadcast is identified to be the target short video, the advertisement which is not higher than the delivery duration and is matched with the form in the delivery area information is obtained from the advertisement system based on the delivery duration and the form in the delivery area information, then the obtained advertisement is delivered in the delivery data loadable area indicated by the area information based on the area information in which the delivery data can be loaded in the video frame in the delivery area information, as shown in fig. 11b, and fig. 11b shows an effect schematic diagram of advertisement delivery in the delivery data loadable area. Therefore, the purpose that the live client puts advertisements in a proper area can be achieved, and important contents in the video frame cannot be shielded.
Optionally, before the live client puts the advertisement to be put, the following process may be further implemented: and determining that the current playing time is not in the data frequency control range.
Specifically, the data frequency control range is taken as an advertisement frequency control range for explanation, in order to avoid the occurrence of a situation of frequently delivering advertisements, before the advertisements to be delivered are acquired, if the current playing time is not within the advertisement frequency control range, the advertisements to be delivered can be delivered in the video frame of the target short video currently being played, otherwise, the advertisements to be delivered are abandoned.
Optionally, the frequency of advertisement delivery may also be controlled on the server side, for example, when the target short video is pushed to the live broadcast client, the time of last sending the delivery area information may be determined, and if it is determined that the difference between the time and the time of pushing the target short video is less than the time interval threshold, the delivery area information of the target short video is not sent when the target short video is pushed this time, specifically, the time interval threshold may be, but is not limited to, 30 minutes, and the like.
Based on any of the above embodiments, after implementing the flow shown in fig. 4, the method further includes: the candidate video frames and the recognition results, such as the recognized content types, event types, etc., may be stored, and then event monitoring may be performed, referring to the event monitoring schematic diagram shown in fig. 12, by monitoring the events in the target short video (highlight video), it may be determined whether the target short video (highlight video) meets the expected effect, so as to obtain a better target short video (highlight video).
The method provided by the invention captures the candidate video frame in the pushed first direct broadcasting video stream in the direct broadcasting process, intercepts the video segment containing the candidate short video from the first direct broadcasting video stream if the candidate video frame meets the short video interception condition, further generates the target short video based on the video segment, when the short video interception condition is the highlight capture condition, the effect of automatically generating the highlight video in the live broadcast process is realized, and the problem of high labor cost caused by manually editing the highlight in the prior art is avoided; in addition, after the target short video is generated, the target short video is pushed in the process of pushing the second live video stream to the live broadcast client, the effect of playing the wonderful highlight video in the live broadcast process is achieved, the situation that the target short video is played in a review mode in the prior art is avoided, and the problem that in the prior art, the labor cost is high due to the fact that a specific rebroadcast person is required to play the wonderful highlight video is solved.
Based on the same inventive concept, the embodiment of the present invention further provides a live broadcast-based video push apparatus, which may be disposed in the server 104 in fig. 2, and as the principle of solving the problem of the apparatus is similar to that of the live broadcast-based video push method, the implementation of the apparatus may refer to the implementation of the method, and repeated parts are not described again.
As shown in fig. 13, a schematic structural diagram of a live broadcast-based video pushing apparatus according to an embodiment of the present invention includes: a recognition module 131 and a video push module 132, wherein:
the identifying module 131 is configured to identify a video frame in a second live video stream in a process of pushing the second live video stream to a live client;
the video pushing module 132 is configured to, if the identified first video frame meets a short video pushing condition, push a target short video from a timestamp of the first video frame, where the target short video is generated based on a pushed first live video stream.
Optionally, the identifying module 131 is further configured to continue to identify the video frame of the second live video stream when the target short video is pushed;
the video pushing module 132 is further configured to stop pushing the target short video from the timestamp of the second video frame if the identified second video frame meets the short video pushing stop condition, and push the second live video stream from the second video frame.
Optionally, the live broadcast-based video pushing apparatus provided by the present invention further includes:
an obtaining module 133, configured to obtain a candidate video frame from the pushed first live video stream;
a video processing module 134, configured to intercept, when the candidate video frame meets a short video interception condition, a video segment containing the candidate video frame from the first live video stream;
a short video generation module 135 for generating a target short video based on the intercepted video segment.
Optionally, the live broadcast-based video pushing apparatus provided by the present invention further includes:
a determining module 136, configured to determine delivery area information of the target short video, where the delivery area information includes area information in which delivery data can be loaded in a video frame in the target short video;
on this basis, the video pushing module 132 is further configured to push the launch area information to the live broadcast client when the target short video is pushed, so that after the live broadcast client receives the launch area information, the data to be launched is acquired, and the data to be launched is launched based on the area information where the launch data can be loaded.
Optionally, the video processing module 134 is specifically configured to identify a content type of the candidate video frame; if the content type is a set content type, performing event detection on the candidate video frame, and when determining that an event exists in the candidate video frame, determining the event type of the existing event; and if the event type is a set event type, determining that the candidate video frame meets a short video interception condition.
Optionally, the video processing module 134 is specifically configured to intercept a key region from the candidate video frame; and performing character recognition on the key area, and determining whether an event exists in the candidate video frame based on a character recognition result.
Optionally, the video processing module 134 is specifically configured to determine whether an event exists in the candidate video frame according to the candidate video frame and a trained event detection model, where a training sample of the event detection model is: there are event image samples of the event and image samples other than the event image samples.
Optionally, the live broadcast-based video pushing apparatus provided by the present invention further includes:
the confirming module 137 is configured to confirm that the video identification identifier is carried in the first live video stream before the obtaining module 133 obtains the candidate video frame from the first live video stream.
Optionally, if the second live video stream is a game live video stream, the first video frame meeting the short video push condition at least includes one of: the target object does not exist in the video frame and the set area in the video frame between two adjacent games.
For convenience of description, the above parts are described separately as modules (or units) according to functions. Of course, the functionality of the various modules (or units) may be implemented in the same or in multiple pieces of software or hardware in practicing the invention.
Specifically, after the live broadcast-based video push apparatus provided by the embodiment of the present invention is introduced, as shown in fig. 2 and fig. 14, the live broadcast-based video push apparatus further includes a control module, a transcoding module, and a content delivery CDN module, and the video processing module 134 and the determining module 136 are disposed in the video understanding engine, and the live broadcast-based video push method provided by the embodiment of the present invention is described based on the above apparatus, and the general process is as follows: when the anchor user 1 performs live broadcasting based on a live broadcasting room provided by a live broadcasting client in the terminal device 101, the video push module 132 in the server obtains a pushed first live broadcasting video stream, and then sends the first live broadcasting video stream to the control module, since the number of live broadcasting rooms in which the live broadcasting platform needs to generate highlight video is large, a plurality of short video generation modules 135 in fig. 13 may be configured, and the control module is used for performing load balancing and sending the received first live broadcasting video stream to the short video generation module 135 with relatively reduced load; the short video generation module 135 sends a video identification request to the video processing module 134, so that the video processing module 134 sends a video frame acquisition request to the acquisition module 133 after receiving the request, so that the acquisition module 133 acquires a candidate video frame from the first live video stream after receiving the request, and then sends the candidate video frame to the video processing module 134 in the video understanding engine, when the video processing module 134 identifies that the candidate video frame meets the short video interception condition, a video segment containing the candidate video frame is intercepted from the first live video stream and sent to the video generation module 135, and the video generation module 135 generates a target short video based on the intercepted video segment. When a user 2 enters a live broadcast room which is the same as that of the user 1 based on a live broadcast client, a notification is sent to a video processing module 134 in a video understanding engine, so that the video processing module 134 knows that the user 2 watches the live broadcast of the user 1, and at the moment, after a target short video is generated, a second live broadcast video stream is generated because the anchor user 1 still carries out the live broadcast, so that a target short video is sent to a video pushing module 132 by a short video generating module 135, and the target short video is pushed by the video pushing module 132 in the process of pushing the second live broadcast video stream to the live broadcast client; specifically, in the pushing process, the video stream needs to be sent to the transcoding module for transcoding, then the transcoded video stream is sent to the CDN module, and the CDN module pushes the video stream to the live broadcast client in the terminal device 102 in fig. 2, so that the user 2 of the terminal device 102 can view the video stream of the second live broadcast video stream or the target short video stream when opening the corresponding live broadcast room when entering the live broadcast client. In addition, the determination module 136 in the video understanding engine may determine delivery area information of the target short video, and then send the delivery area information to the CDN module, when the live broadcast is played at the live client of the user 2, if it is determined that the currently played video frame belongs to the target short video, the delivery area information is regularly acquired from the CDN every second, then an advertisement that matches the delivery area information is acquired from the advertisement system, and then the acquired advertisement is delivered at a position indicated by the position information included in the delivery area information.
Optionally, the CDN module in fig. 14 may be replaced by a long connection control module, that is, the long connection control module sends a command to the live broadcast client in a websocket long connection manner, and delivers delivery area information based on the command, which may also be in other manners, which is not limited in this embodiment of the present invention.
Further, referring to fig. 15, which is a schematic structural diagram of the video processing module 134, the video processing module 134 includes a content type identification module 1341, a picture preprocessing module 1342, and an event type identification module 1343, when the acquisition module 133 acquires a candidate video frame in the first live video stream, the candidate video frame is sent to the content type identification module 1341, the content type identification module 1341 identifies the content type of the candidate video frame, when the content type is identified as a set content type, the candidate video frame is sent to the picture preprocessing module 1342, the picture preprocessing module 1342 intercepts a key region from the candidate video frame and sends the key region to the event type identification module 1343, when the event type identification module 1343 receives the key region, an OCR service may be invoked to identify a text in the key region, then identifies an event type of an event existing in the candidate video frame based on the identified text, and when the identified event type is the set event type, a video segment including the candidate video frame in the first live video stream is intercepted and then sent to the video generation module 135; in addition, when the content type recognition module 1341 recognizes that the content type of the candidate video frame is not the set content type, the process ends.
Having described the live-based video push method, apparatus, and computer-readable storage medium of exemplary embodiments of the present invention, a computing device according to another exemplary embodiment of the present invention is next described.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or program product. Thus, various aspects of the invention may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.) or an embodiment combining hardware and software aspects that may all generally be referred to herein as a "circuit," module "or" system.
In some possible embodiments, a computing device according to the present invention may include at least one processor, and at least one memory. Wherein the memory stores program code which, when executed by the processor, causes the processor to perform the steps of the live broadcast based video push method according to various exemplary embodiments of the present invention described above in this specification. For example, the processor may execute a live-based video push flow in steps S31 to S33 shown in fig. 3.
Computing device 160 according to this embodiment of the invention is described below with reference to FIG. 16. The computing device 160 shown in FIG. 16 is only one example and should not be taken to limit the scope of use and functionality of embodiments of the present invention.
As shown in fig. 16, computing device 160 is in the form of a general purpose computing device. Components of computing device 160 may include, but are not limited to: the at least one processor 161, the at least one memory 162, and a bus 163 connecting the various system components including the memory 162 and the processor 161.
Bus 163 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a processor, or a local bus using any of a variety of bus architectures.
The memory 162 may include readable media in the form of volatile memory, such as Random Access Memory (RAM) 1621 and/or cache memory 1622, and may further include Read Only Memory (ROM) 1623.
Memory 162 may also include programs/utilities 1625 having a set (at least one) of program modules 1624, such program modules 1624 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination thereof may comprise an implementation of a network environment.
Computing device 160 may also communicate with one or more external devices 164 (e.g., keyboard, pointing device, etc.), with one or more devices that enable a user to interact with computing device 160, and/or with any devices (e.g., router, modem, etc.) that enable computing device 160 to communicate with one or more other computing devices. Such communication may be through input/output (I/O) interfaces 165. Also, computing device 160 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the internet) through network adapter 166. As shown, the network adapter 166 communicates with the other modules for the computing device 16 over a bus 163. It should be understood that although not shown in the figures, other hardware and/or software modules may be used in conjunction with computing device 160, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, to name a few.
Based on the same inventive concept, an embodiment of the present invention further provides a storage medium, where the storage medium stores computer instructions, and when the computer instructions are executed on a computer, the computer executes the steps of the live-broadcast-based video push method as described above.
Based on the same inventive concept, embodiments of the present invention further provide a video processing apparatus, which includes at least one processor and a readable storage medium, and when instructions included in the readable storage medium are executed by the at least one processor, the steps of the live broadcast-based video push method as described above may be performed.
Based on the same inventive concept, an embodiment of the present invention further provides a chip system, where the chip system includes a processor and may further include a memory, and is used to implement the steps of the live broadcast-based video push method. The chip system may be formed by a chip, and may also include a chip and other discrete devices.
In some possible embodiments, the aspects of the live video push method according to the embodiments of the present invention may also be implemented in a form of a program product, which includes program code for causing a computer to perform the steps in the live video push method according to the various exemplary embodiments of the present invention described in the foregoing when the program product runs on the computer.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (7)

1. A live broadcast-based video push method is characterized by comprising the following steps:
acquiring candidate video frames from the pushed first live video stream, and identifying the content types of the candidate video frames;
if the content type is a set content type, intercepting a key area from the candidate video frame, and performing character recognition on the key area;
determining whether an event exists in the candidate video frame based on a character recognition result;
when determining that an event exists in the candidate video frame, determining an event type of the existing event;
if the event type is a set event type, determining that the candidate video frame meets a short video capturing condition, capturing a video segment containing the candidate video frame from the first direct-playing video stream, and generating a target short video based on the captured video segment;
determining delivery area information of the target short video, wherein the delivery area information comprises area information capable of loading delivery data in each video frame of the target short video, delivery duration capable of delivering data and delivery form, and the delivery duration is determined based on the number of video frames with the same area information in each video frame; for each video frame, when the change degree between the video frame and the previous video frame is smaller than a preset degree threshold value, taking the area information of the previous video frame, which can be loaded with the release data, as the area information of the video frame, which can be loaded with the release data; otherwise, determining the area information which can load the release data in the video frame according to the area information of the non-shelterable area in the video frame;
in the process of pushing a first direct-broadcast video stream to a live-broadcast client, identifying whether a video frame in the first direct-broadcast video stream meets a short video pushing condition;
if the identified first video frame in the first direct-playing video stream meets a short video pushing condition, the target short video and the releasing area information are pushed from a timestamp of the first video frame, so that the direct-playing client plays the target short video, obtains data to be released and releases the data to be released based on the releasing area information.
2. The method of claim 1, further comprising:
when the target short video is pushed, continuously identifying the video frame of the first live video stream;
and if the identified first video frame meets the short video push stopping condition, stopping pushing the target short video from the timestamp of the first video frame, and pushing the first direct-playing video stream from the first video frame.
3. The method of claim 1, prior to obtaining the candidate video frames from the first live video stream, further comprising:
and confirming that the first direct-playing video stream carries a video identification mark.
4. The method according to claim 1 or 2, wherein if the first live video stream is a game live video stream, the first video frames satisfying the short video push condition include at least one of: the target object does not exist in the video frame and the set area in the video frame between two adjacent games.
5. A video pusher based on live broadcast, comprising:
the video pushing module is used for acquiring a candidate video frame from a pushed first live video stream and identifying the content type of the candidate video frame; if the content type is a set content type, intercepting a key area from the candidate video frame, and performing character recognition on the key area; determining whether an event exists in the candidate video frame based on a character recognition result; when determining that an event exists in the candidate video frame, determining an event type of the existing event; if the event type is a set event type, determining that the candidate video frame meets a short video capturing condition, capturing a video segment containing the candidate video frame from the first direct-playing video stream, and generating a target short video based on the captured video segment;
the determining module is used for determining the release region information of the target short video, wherein the release region information comprises region information capable of loading release data, release duration capable of releasing data and release form in each video frame of the target short video, and the release duration is determined based on the number of video frames with the same region information in each video frame; for each video frame, when the change degree between the video frame and the previous video frame is smaller than a preset degree threshold value, taking the area information which can be loaded with the release data in the previous video frame as the area information which can be loaded with the release data in the video frame; otherwise, determining the area information which can load the release data in the video frame according to the area information of the non-shelterable area in the video frame;
the system comprises an identification module, a short video pushing module and a short video pushing module, wherein the identification module is used for identifying whether a video frame in a first direct video stream meets a short video pushing condition or not in the process of pushing the first direct video stream to a direct broadcast client;
the video pushing module is used for pushing the target short video and the release region information from a timestamp of the first video frame if the identified first video frame in the first direct-playing video stream meets a short video pushing condition, so that the live broadcast client plays the target short video, acquires data to be released and releases the data to be released based on the release region information.
6. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 1 to 4 when executing the program.
7. A computer readable medium storing processor executable instructions for performing the method of any one of claims 1 to 4.
CN201910341639.9A 2019-04-26 2019-04-26 Live broadcast-based video pushing method and device and computer-readable storage medium Active CN110198456B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910341639.9A CN110198456B (en) 2019-04-26 2019-04-26 Live broadcast-based video pushing method and device and computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910341639.9A CN110198456B (en) 2019-04-26 2019-04-26 Live broadcast-based video pushing method and device and computer-readable storage medium

Publications (2)

Publication Number Publication Date
CN110198456A CN110198456A (en) 2019-09-03
CN110198456B true CN110198456B (en) 2023-02-07

Family

ID=67752178

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910341639.9A Active CN110198456B (en) 2019-04-26 2019-04-26 Live broadcast-based video pushing method and device and computer-readable storage medium

Country Status (1)

Country Link
CN (1) CN110198456B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110688498B (en) * 2019-09-27 2022-07-22 北京奇艺世纪科技有限公司 Information processing method and device, electronic equipment and storage medium
CN111083515B (en) * 2019-12-31 2021-07-23 广州华多网络科技有限公司 Method, device and system for processing live broadcast content
CN111405302B (en) * 2020-03-06 2022-06-10 北京达佳互联信息技术有限公司 Live broadcast room attention reminding method and device, electronic equipment and storage medium
CN111428660B (en) * 2020-03-27 2023-04-07 腾讯科技(深圳)有限公司 Video editing method and device, storage medium and electronic device
CN111814640A (en) * 2020-06-30 2020-10-23 北京玩在一起科技有限公司 Method and system for detecting live event of electric competition and extracting information
CN112235587B (en) * 2020-10-12 2022-11-15 北京字节跳动网络技术有限公司 Live broadcast method and equipment
CN112348649B (en) * 2020-12-07 2022-07-29 福州灵和晞科技有限公司 Live broadcast category recommendation method
CN113542803A (en) * 2021-07-09 2021-10-22 上海哔哩哔哩科技有限公司 Live content processing method and device
CN115022654B (en) * 2022-05-18 2024-01-19 北京达佳互联信息技术有限公司 Video editing method and device in live broadcast scene
CN115022663A (en) * 2022-06-15 2022-09-06 北京奇艺世纪科技有限公司 Live stream processing method and device, electronic equipment and medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103618950A (en) * 2013-11-11 2014-03-05 李达航 Inter-cut method of content of smart television
CN104065982A (en) * 2014-06-19 2014-09-24 腾讯科技(深圳)有限公司 Streaming media live broadcast method and device
WO2016000429A1 (en) * 2014-06-30 2016-01-07 中兴通讯股份有限公司 Method and device for detecting video conference hotspot scenario
CN107682717A (en) * 2017-08-29 2018-02-09 百度在线网络技术(北京)有限公司 Service recommendation method, device, equipment and storage medium
CN108833936A (en) * 2018-05-25 2018-11-16 广州虎牙信息科技有限公司 Direct broadcasting room information-pushing method, device, server and medium
CN109155136A (en) * 2016-04-01 2019-01-04 奥誓公司 The computerized system and method for highlight are detected and rendered automatically from video

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10104445B2 (en) * 2016-04-01 2018-10-16 Rovi Guides, Inc. Systems and methods for providing a playlist of user-relevant content for playback in place of advertisement content
CN108810615A (en) * 2017-04-28 2018-11-13 阿里巴巴集团控股有限公司 The method and apparatus for determining spot break in audio and video

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103618950A (en) * 2013-11-11 2014-03-05 李达航 Inter-cut method of content of smart television
CN104065982A (en) * 2014-06-19 2014-09-24 腾讯科技(深圳)有限公司 Streaming media live broadcast method and device
WO2016000429A1 (en) * 2014-06-30 2016-01-07 中兴通讯股份有限公司 Method and device for detecting video conference hotspot scenario
CN109155136A (en) * 2016-04-01 2019-01-04 奥誓公司 The computerized system and method for highlight are detected and rendered automatically from video
CN107682717A (en) * 2017-08-29 2018-02-09 百度在线网络技术(北京)有限公司 Service recommendation method, device, equipment and storage medium
CN108833936A (en) * 2018-05-25 2018-11-16 广州虎牙信息科技有限公司 Direct broadcasting room information-pushing method, device, server and medium

Also Published As

Publication number Publication date
CN110198456A (en) 2019-09-03

Similar Documents

Publication Publication Date Title
CN110198456B (en) Live broadcast-based video pushing method and device and computer-readable storage medium
CN109089154B (en) Video extraction method, device, equipment and medium
US10841667B2 (en) Producing video data
CN109089127B (en) Video splicing method, device, equipment and medium
US8918832B2 (en) Method and system for outcome prediction utilizing automatic content recognition
US20140289754A1 (en) Platform-independent interactivity with media broadcasts
KR102583180B1 (en) Detection of common media segments
CN110166788B (en) Information synchronous playing method, device and storage medium
WO2015078199A1 (en) Live interaction method and device, client, server and system
CN108989883B (en) Live broadcast advertisement method, device, equipment and medium
CN111757148B (en) Method, device and system for processing sports event video
US11095944B2 (en) Content-modification system with broadcast schedule utilization feature
CN111698521A (en) Network live broadcast method and device
WO2017101401A1 (en) Video playback method, device and system
CN111586432B (en) Method and device for determining air-broadcast live broadcast room, server and storage medium
US20150089527A1 (en) Viewing program identification system, method, and program
US20210377585A1 (en) Content-Modification System with Overlay Handling Feature
CN108616763B (en) Multimedia data pushing method, device and system
US11450110B2 (en) Content-modification system with use of multiple fingerprint data types feature
CN110300118B (en) Streaming media processing method, device and storage medium
US20230156172A1 (en) Synchronizing secondary audiovisual content based on frame transitions in streaming content
CN109999490B (en) Method and system for reducing networking cloud application delay
CN113938617A (en) Multi-channel video display method and equipment, network camera and storage medium
CN110691256B (en) Video associated information processing method and device, server and storage medium
US20170142181A1 (en) Webcasting method, device and system

Legal Events

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