CN111405373B - Method and device for acquiring video stream - Google Patents

Method and device for acquiring video stream Download PDF

Info

Publication number
CN111405373B
CN111405373B CN202010258279.9A CN202010258279A CN111405373B CN 111405373 B CN111405373 B CN 111405373B CN 202010258279 A CN202010258279 A CN 202010258279A CN 111405373 B CN111405373 B CN 111405373B
Authority
CN
China
Prior art keywords
program
information
advertisement
target
identifier
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
CN202010258279.9A
Other languages
Chinese (zh)
Other versions
CN111405373A (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.)
Juhaokan Technology Co Ltd
Original Assignee
Juhaokan Technology 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 Juhaokan Technology Co Ltd filed Critical Juhaokan Technology Co Ltd
Priority to CN202010258279.9A priority Critical patent/CN111405373B/en
Publication of CN111405373A publication Critical patent/CN111405373A/en
Application granted granted Critical
Publication of CN111405373B publication Critical patent/CN111405373B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23109Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion by placing content in organized collections, e.g. EPG data repository
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26241Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the time of distribution, e.g. the best time of the day for inserting an advertisement or airing a children program
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists

Abstract

The application discloses a method and a device for acquiring a video stream, and belongs to the field of data processing. In the application, a revised program list can be sent to the terminal, and the revised program list is obtained by revising the review program list according to the actual live program information. And then, receiving a review request sent by the terminal, and acquiring the start-stop time of the target program identified by the target program identifier from the modified program list according to the target program identifier carried by the review request. And then, acquiring a target video stream according to the start-stop time of the target program and the target program identifier, and sending the target video stream to the terminal so that the terminal plays the target video stream. Therefore, the problem that the program list is not accurately watched due to the change of the program in the live broadcasting process can be solved. Therefore, the accurate target video stream of the target program can be obtained according to the starting and ending time of the corrected target program obtained from the corrected program list, and the watching experience of a user is improved.

Description

Method and device for acquiring video stream
Technical Field
The present application relates to the field of data processing, and in particular, to a method and an apparatus for acquiring a video stream.
Background
At present, people are busy in work and study, and cannot be guaranteed to watch programs on time when the programs to be watched are live, so that the demand of people for watching the programs is gradually increased. Based on this, when the program is live, the live video stream can be recorded and stored in the distributed storage system. Wherein each video frame included in the video stream carries a time stamp. Then, when the user wants to review the target program, the server may obtain a target video stream corresponding to the target program according to the start-stop time of the target program and the timestamp carried by each stored video frame, so that the user can review the target program.
In the related art, before the program live broadcast, the server may generate a review program table according to the program scheduled to be broadcast, store the review program table, and issue the review program table to the terminal. The review program list comprises a plurality of program identifiers and the starting and ending time of the program identified by each program identifier. Then, the server may receive a review request sent by the terminal, where the review request carries a target program identifier selected by the user from the program identifiers included in the review program table. Then, the server may obtain the start-stop time of the target program identified by the target program identifier from the stored review program list according to the target program identifier, obtain a corresponding video stream from the distributed storage system according to the start-stop time, and send the obtained video stream to the terminal, so that the terminal plays the video stream.
However, if the program changes during the live broadcast, the actual live program may be different from the scheduled live program. On the basis, the review program table is generated according to the programs scheduled to be broadcast, so that the video stream of the program that the user wants to review cannot be acquired according to the starting and ending time of the programs in the review program table, and the viewing experience of the user is influenced.
Disclosure of Invention
The embodiment of the application provides a method, a device and a storage medium for acquiring video streams. The technical scheme is as follows:
in a first aspect, a method for acquiring a video stream is provided, the method including:
sending a corrected program list to a terminal, wherein the corrected program list is obtained by correcting a review program list according to actual live program information and comprises a plurality of program identifiers and the starting and ending time of a program identified by each program identifier;
receiving a review request sent by a terminal, wherein the review request carries a target program identifier selected from the corrected program list;
according to the target program identification, the starting and ending time of the target program identified by the target program identification is obtained from the corrected program list;
and acquiring a target video stream according to the start-stop time of the target program and the target program identifier, and sending the target video stream to the terminal so that the terminal plays the target video stream.
In a second aspect, a server is provided, the server comprising:
the system comprises a sending module, a receiving module and a processing module, wherein the sending module is used for sending a corrected program list to a terminal, the corrected program list is obtained by correcting a review program list according to actual live program information, and the corrected program list comprises a plurality of program identifiers and the starting and ending time of a program identified by each program identifier;
a receiving module, configured to receive a review request sent by a terminal, where the review request carries a target program identifier selected from the modified program list;
the first obtaining module is used for obtaining the starting and ending time of the target program identified by the target program identification from the corrected program list according to the target program identification;
and the second acquisition module is used for acquiring a target video stream according to the start-stop time of the target program and the target program identifier and sending the target video stream to the terminal so as to enable the terminal to play the target video stream.
In a third aspect, a terminal is provided, the terminal comprising a display and a processor;
the processor is configured to:
receiving the selection of a user on a target program in a corrected program list displayed by a display;
sending a review request to a server, wherein the review request carries the program identifier of the target program; the review request is used for acquiring the start-stop time of the target program identified by the target program identifier from the corrected program list according to the target program identifier; acquiring a target video stream from a recorded live video stream according to the start-stop time of the target program and the target program identifier;
and receiving and analyzing the target video stream, and controlling a display to display a target program obtained by analyzing the video stream.
In a fourth aspect, a computer-readable storage medium is provided, in which a computer program is stored, which, when being executed by a processor, carries out the steps of the method for acquiring a video stream as provided above.
The beneficial effects brought by the technical scheme provided by the embodiment of the application at least comprise:
in the embodiment of the application, the plurality of program identifiers included in the corrected program list and the starting and ending time of the program identified by each program identifier are obtained by correcting according to the actual live program information, so that the corrected program list is completely the same as the actual live program, and the problem of inaccuracy in reviewing the program list due to change of the program in the live program process is avoided. Therefore, when a review request is received, the starting and ending time of the modified target program can be obtained from the modified program list according to the target program identifier carried in the review request, and then the accurate target video stream of the target program can be obtained according to the starting and ending time, so that the viewing experience of a user is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a system architecture diagram according to a method for acquiring a video stream provided by an embodiment of the present application;
fig. 2 is a system architecture diagram according to another method for acquiring a video stream provided by an embodiment of the present application;
fig. 3 is a flowchart of a method for acquiring a video stream according to an embodiment of the present application;
FIG. 4 is a flowchart of obtaining a modified program list according to an embodiment of the present application;
FIG. 5 is a schematic diagram of a review interface displayed by a terminal according to an embodiment of the present application;
fig. 6 is a flowchart of another method for acquiring a video stream according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of a server provided in an embodiment of the present application;
fig. 8 is a schematic structural diagram of another server provided in the embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the exemplary embodiments of the present application clearer, the technical solutions in the exemplary embodiments of the present application will be clearly and completely described below with reference to the drawings in the exemplary embodiments of the present application, and it is obvious that the described exemplary embodiments are only a part of the embodiments of the present application, but not all the embodiments.
All other embodiments, which can be derived by a person skilled in the art from the exemplary embodiments shown in the present application without inventive effort, shall fall within the scope of protection of the present application. Moreover, while the disclosure herein has been presented in terms of exemplary one or more examples, it is to be understood that each aspect of the disclosure can be utilized independently and separately from other aspects of the disclosure to provide a complete disclosure.
It should be understood that the terms "first," "second," "third," and the like in the description and in the claims of the present application and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used are interchangeable under appropriate circumstances and can be implemented in sequences other than those illustrated or otherwise described herein with respect to the embodiments of the application, for example.
Furthermore, the terms "comprises" and "comprising," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a product or device that comprises a list of elements is not necessarily limited to those elements explicitly listed, but may include other elements not expressly listed or inherent to such product or device.
The term "module," as used herein, refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and/or software code that is capable of performing the functionality associated with that element.
Before explaining the embodiments of the present application in detail, an application scenario related to the embodiments of the present application will be described.
At present, because people's work is comparatively busy with study, can't guarantee can punctual watch when the program that wants to watch live, consequently, the server can be when the broadcast source carries out the program live broadcast, records live program to supply the user to carry out the program and watch back. In addition, the server may provide the user with a program schedule of the programs that can be reviewed. Then, according to the target program identifier that the user wants to review, the start-stop time of the target program identified by the target program identifier is obtained from the review program list, and further, a target video stream corresponding to the target program is obtained, so that the user can review the target program. The method for acquiring the video stream provided by the embodiment of the application can be used for acquiring the target video stream corresponding to the target program from the recorded program video stream according to the target program identifier selected by the user in the scene, so that the user can review the target program.
In some embodiments, the server and the broadcast source are different.
In some embodiments, the broadcast source refers to a server that performs pushing of live program signals to a terminal display device. For example, a broadcast server of a radio and television system.
Next, a system architecture related to the method for acquiring a video stream provided by the embodiment of the present application is described.
Fig. 1 is a system architecture diagram according to a method for acquiring a video stream according to an embodiment of the present application. As shown in fig. 1, the system 100 includes a terminal 101, a server 102, and a broadcast source 103. The terminal 101 and the server 102 are connected in a wireless or wired manner for communication, the server 102 and the broadcast source 103 are connected in a wireless or wired manner for communication, and the terminal 101 and the broadcast source 103 are connected in a wireless or wired manner for communication.
The terminal 101 may receive a live video stream sent by the broadcast source 103 during live broadcasting, and play the received live video stream. The terminal 101 may further receive a modified program list sent by the server 102, and display the modified program list, where the displayed modified program list includes a plurality of program identifiers. After that, the terminal 101 may detect a selection operation of the user for a plurality of program identifications included in the displayed modified program table. When the selection operation is detected, the program identifier selected by the selection operation may be used as a target program identifier, a review request is generated according to the target program identifier, and the review request is sent to the server 102.
In addition, the terminal 101 may also receive a target video stream sent by the server 102, where the target video stream is a video stream corresponding to a target program acquired by the server 102 for a target program identifier carried in a review request sent by the terminal 101. After that, the terminal 101 may play the target video stream.
The server 102 may receive a review program table transmitted by the broadcast source 103, the review program table being program information of a plurality of first programs scheduled to be played before the start of the live broadcast. Then, when the live broadcast is started, the server 102 may record a video stream of a program live from the broadcast source 103, and store the recorded video, and at the same time, the server 102 may also receive an accurate program table sent by the live broadcast source 103, where the accurate program table includes program information of a plurality of second programs in actual live broadcast.
Then, the server 102 may correct, according to the program information of the plurality of second programs included in the received accurate program list, the program information of the plurality of first programs included in the review program list by using the method provided in the embodiment of the present application, so as to obtain a corrected program list. Next, the server 102 may store the modified program table and transmit the modified program table to the terminal 101.
The server 102 may further receive a review request sent by the terminal 101, where the review request carries a target program identifier selected from the modified program list, and the server 102 may obtain, according to the target program identifier, the start-stop time of the target program identified by the target program identifier from the stored modified program list, further obtain, according to the start-stop time of the target program and the target program identifier, a target video stream from the stored video stream, and send the target video stream to the terminal 101, so that the terminal 101 plays the target video stream.
Optionally, in one possible implementation, the server 102 may send the recorded video to a distributed storage system, so that the distributed storage system stores the recorded video. Subsequently, when the server 102 acquires the target video stream according to the start-stop time of the target program, the start-stop time of the target program and the target program identifier may be sent to the distributed storage system, so as to acquire the target video stream, and the target video stream is sent to the terminal 101, so that the terminal 101 plays the target video stream.
Broadcast source 103 may generate a review program table prior to the live program and send the review program table to server 102. Thereafter, the broadcast source 103 may transmit the live video stream to a plurality of terminals, including the terminal 101, to enable the plurality of terminals to play the live video stream. It should be noted that, when the broadcast source 103 broadcasts a program live, the live program may change, that is, the program actually broadcast is different from the program included in the review program table currently generated in the live program, so that the broadcast source 103 may generate an accurate program table according to the live condition and send the accurate program table to the server 102.
In this embodiment, the terminal 101 may be a smart television, a computer, or other devices, the server 102 may be a server or a server cluster for acquiring the video stream, and the broadcast source 103 may be a server or a server cluster, which is not limited in this embodiment.
Illustratively, as shown in fig. 2, the server 102 may include a decoder, a review program recording module, an accurate program guide importing module, a modifying module, an advertisement operation module, a review program video stream pushing module, and a program guide issuing module.
The decoder may receive a live video stream sent by the broadcast source 103, decode the live video stream, and send the live video stream to the review program recording module, so that the review program recording module stores the live video stream in the database of the server 102, and optionally, the review program recording module may send the live video stream to the distributed storage system, so that the distributed storage system stores the live video stream.
The advertisement operation module stores a first corresponding relation between a plurality of program identifications and advertisement information of advertisements to be delivered, and also stores a second corresponding relation between a plurality of program identifications and advertisement information of advertisements to be delivered.
The accurate program table importing module can receive and store an accurate program table sent by a broadcast source, and then obtain advertisement information of advertisements launched corresponding to a plurality of programs from a first corresponding relation of the advertisement operation module according to program identifications of the programs included in the accurate program table, and send the accurate program table and the advertisement information to the correction module.
The correction module can receive the review program list sent by the broadcast source and store the review program list. After receiving the accurate program list and the plurality of advertisement information sent by the accurate program list importing module, the stored review program list can be modified according to the accurate program list and the plurality of advertisement information to obtain a modified program list, and the modified program list is stored.
The program issuing module may receive a modified program list acquisition request sent by the terminal 101, where the modified program list acquisition request carries a channel identifier, and then the program issuing module may acquire a modified program list from the modification module according to the channel identifier and send the modified program list to the terminal 101.
The review program stream pushing module may receive a review request sent by the terminal 101, and obtain the start-stop time of the target program from the modified program table stored in the modification module according to the target program identifier carried in the review request. And then, acquiring the advertisement information of the advertisement to be delivered from the second corresponding relation of the advertisement operation module according to the target program identifier. The review program stream pushing module may obtain the target video stream according to the start-stop time of the target program and the advertisement information of the advertisement to be delivered, and send the video stream to the terminal 101, so that the terminal 101 plays the target video stream.
Next, a method for acquiring a video stream provided in an embodiment of the present application is described.
Fig. 3 is a flowchart of a method for acquiring a video stream according to an embodiment of the present application, where the method may be applied to a server, which may be referred to as the server 102 in fig. 1 or fig. 2. As shown in fig. 3, the method comprises the steps of:
step 301: the server sends the revised program schedule to the terminal.
The revised program list is obtained by revising the review program list according to the actual live program information, and comprises a plurality of program identifications and the starting and ending time of the program identified by each program identification.
In the embodiment of the present application, referring to fig. 4, before the server sends the modified program list to the terminal, the modified program list may be obtained through the following steps (1) to (10).
(1): the server obtains a review program table and at least one accurate program table.
The review program list comprises program information of a plurality of first programs scheduled to be played before live broadcast starts, and each accurate program list comprises program information of a plurality of second programs in actual live broadcast.
It should be noted that, the broadcast source may plan a plurality of first programs live in a period of time in advance, and generate a theoretical program table according to the plurality of first programs. The theoretical program table includes a correspondence between program identifiers of the plurality of first programs and start time of each first program. The broadcast source may then send the theoretical program schedule to the server. After receiving the theoretical program table, the server may use the start time of each first program included in the theoretical program table as the end time of the previous program located in the corresponding first program in the theoretical program table, so as to obtain a review program table.
Illustratively, the broadcast source may plan a plurality of first programs to be live broadcast in the next week in advance, and generate a theoretical program table of live broadcast programs in the week according to the plurality of first programs, and part of the content of the theoretical program table is shown in table 1 below. The broadcast source may then send the theoretical program schedule to the server. After receiving the theoretical program table, the server may use the start time of each program included in the theoretical program table as the end time of the program located before the program in the theoretical program table, so as to obtain a review program table, where a part of the contents of the review program table is shown in table 2 below.
TABLE 1
Program identification Starting time
Program 1 7:00
Program 2 7:50
Program 3 8:30
Program 4 9:25
Program 5 10:05
TABLE 2
Program identification Start and end time
Program 1 7:00、7:50
Program 2 7:50、8:30
Program 3 8:30、9:25
Program 4 9:25、10:05
Program 5 10:05、11:00
In the embodiment of the application, after the broadcast source starts to broadcast the program, the broadcast source can generate the accurate program list in real time and send the accurate program list to the server. Likewise, the server may receive the precise program schedule transmitted by the broadcast source.
Illustratively, the precise program table may include at least one of program information of a program currently being live, program information of a preset number of programs that have been live before the program currently being live, and program information of a preset number of programs to be live after the program currently being live. For example, the program information of the program currently being live, the program information of the first two already played programs of the program currently being live, and the program information of the program to be played next after the current program is played.
Assume that the preset number is 2, and the programs of two programs to be sequentially played after the program currently being played are identified as program 3 and program 4. Wherein, the starting time of the program 3 is 10:00, and the starting time of the program 4 is 10: 55. In this way, the broadcast source may generate an accurate program table as shown in table 3 below and transmit the accurate program table to the server while playing the program currently being played.
TABLE 3
Program identification Starting time
Program 3 10:00
Program 4 10:55
It should be noted that, in the process of broadcasting a live program in a broadcast source, a server may obtain a video stream of the live program sent by the broadcast source, and store the video stream. The server may store the acquired video stream in its own database, and optionally, the server may also send the acquired video stream to a distributed storage system, so that the distributed storage system stores the data stream.
(2): and the server searches second program information matched with the first program information from the review program list according to the starting and ending time included by the first program information, wherein the first program information is the program information of any second program in the first precise program list.
In the embodiment of the present application, the program information includes a program identifier of the corresponding program and a start-stop time of the corresponding program. In this way, for the first program information in the first accurate program table, the server may search, according to the start-stop time included in the first program information, the second program information that matches the first program information from the program information of the plurality of first programs included in the review program table, and correct the second program information according to the first program information.
After the server acquires the first accurate program table, first program information included in the first accurate program table may be acquired. The first accurate program list is any one accurate program list received by the server, the first accurate program list comprises program information of a plurality of second programs which are actually live next, and the first program information is program information of any one second program in the program information of the plurality of second programs.
After the server acquires the first program information, it may search for the program information of the plurality of first programs included in the review program list according to the start-stop time included in the first program information, and if the program information of the first program whose start-stop time is the same as the start-stop time included in the first program information is found, it may use the program information of the first program as the second program information, and perform step (4).
Alternatively, if the server does not find the program information of the first program including the same start-stop time as the start-stop time included in the first program information, step (3) may be performed.
(3): and searching the second program information with the minimum time difference with the start-stop time included in the first program information in the review program table.
In some possible cases, the program information of the plurality of first programs may include a start-stop time that is not the same as the start-stop time included in the first program information. At this time, a time difference between a start time of the start and end times included in the program information of the plurality of first programs and a start time of the start and end times included in the first program information may be calculated, and the program information of the first program corresponding to the start time having the smallest time difference may be taken as the second program information.
After the server determines the second program information in the review schedule, since the start-stop time included in the second program information is different from the start-stop time included in the first program information in this case, the start-stop time included in the second program information may be replaced with the start-stop time included in the first program information.
It should be noted that, after replacing the start-stop time included in the second program information with the start-stop time included in the first program information, the end time included in the program information located before the second program information in the review program table may be modified to be the start time included in the modified second program information, and similarly, the start time included in the program information located after the second program information may be modified to be the end time included in the modified second program information.
Illustratively, it is assumed that the first program information includes a program identifier of program 1 and start-stop times of 7:10 and 8:00, and the determined second program information includes a program identifier of program 1 and start-stop times of 7:00 and 7: 50. In this case, the start-stop time included in the second program information may be replaced with the start-stop time included in the first program information, thereby obtaining modified second program information, and the start-stop time of the modified second program information may be 7:10 or 8: 00. Thereafter, the end time included in the program information located one before the second program information in the review program table may be modified to 7:10, and the start time included in the program information located one after the second program information may be modified to 8: 00.
After the server replaces the start-stop time included in the second program information with the start-stop time included in the first program information, step (4) may be performed.
(4): and judging whether the first program identifier included in the first program information is the same as the second program identifier included in the second program information.
In this embodiment of the application, since the first program identifier included in the first program information may be the same as or different from the second program identifier included in the second program information, the first program identifier may be compared with the second program identifier, when the first program identifier is different from the second program identifier, step (5) may be performed, and when the first program identifier is the same as the second program identifier, step (6) may be performed.
(5): the server may replace the second program identification with the first program identification.
In this case, if the first program identifier included in the first program information is different from the second program identifier included in the second program information, the second program identifier may be replaced with the first program identifier, so as to obtain the modified initial program table.
Illustratively, the first program information includes a program identifier of program 1, and the second program information includes a program identifier of program 2. At this time, it may be determined that the second program identification included in the second program information is different from the first program identification included in the first program information. In this way, the second program identifier included in the second program information may be replaced by the first program identifier, so as to obtain the modified second program information, where the program identifier included in the modified second program information is program 1.
After the server replaces the second program identification with the first program identification, step (6) may be performed.
(6): the server searches advertisement information corresponding to each piece of program information in the initial program list.
After the server obtains the initial program list, the server may search for advertisement information corresponding to each piece of program information in the initial program list, and for at least one piece of third program information corresponding to the found advertisement information, the server may correct the corresponding third program information according to the advertisement information corresponding to each piece of third program information, thereby obtaining the corrected program list.
As an example, the server may obtain advertisement information corresponding to a plurality of programs identified by a plurality of program identifiers according to the plurality of program identifiers included in the initial program table. Among the programs identified by the program identifiers, there may be a program for which corresponding advertisement information cannot be acquired according to the program identifiers, that is, there is a program for which no advertisement is delivered.
The step (8) may be performed when at least one piece of third program information corresponding to the advertisement information is found, and the step (7) may be performed when at least one piece of third program information corresponding to the advertisement information is not found.
(7): the server may use the initial program table as the revised program table.
In this case, the server does not find at least one piece of third program information corresponding to the advertisement information, which indicates that no advertisement is inserted in any of the programs included in the initial program table, so that the start-stop time included in the initial program table does not need to be modified, and the initial program table can be directly used as a modified program table.
(8): the server determines the type of advertisement based on the advertisement information.
In some embodiments, the advertisement information includes an advertisement duration and an advertisement insertion point. In this way, for any piece of advertisement information in the at least one piece of advertisement information found according to the program identifier included in the initial program table, for convenience of description, it is referred to as first advertisement information, and the server may determine the type of the first advertisement corresponding to the first advertisement information according to the advertisement insertion point included in the first advertisement information. Wherein the type of the first advertisement comprises a pre-film advertisement and a film trailer advertisement.
As an example, the ad insertion point may be a time difference between the start time of the ad play relative to the start time of the program, or the end time of the program. In this way, the server may determine whether the type of the first advertisement corresponding to the first advertisement information is a pre-film advertisement or a post-film advertisement according to the advertisement insertion point included in the first advertisement information.
Optionally, the advertisement information may further include an advertisement duration and a type, so that it is possible to determine whether the first advertisement is a pre-trailer advertisement or a post-trailer advertisement directly according to the type included in the advertisement information.
If the type of the first advertisement is a pre-film advertisement, step (9) may be performed, and the start time in the start-stop time included in the third program information corresponding to the first advertisement information is corrected according to the advertisement duration included in the first advertisement information. If the type of the first advertisement is a trailer advertisement, step (10) may be performed to correct the end time in the start-stop time included in the third program information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information.
(9): the server may correct the start time in the start-stop time included in the third program information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information.
When the type of the first advertisement is a pre-film advertisement, the advertisement duration included in the first advertisement information may be obtained, and the start-stop time included in the third program information corresponding to the first advertisement information may be obtained. Thereafter, the start time of the start-stop time may be added to the advertisement time duration to obtain a corrected start time.
Illustratively, the first advertisement information includes an advertisement duration of 2min, and the third program information includes a start-stop time of 7:00, 7: 50. In this way, the server may add the start time 7:00 included in the start-stop time to the advertisement time duration 2min to obtain the corrected start time of 7:02, that is, the corrected start-stop time included in the third program information is 7:02, 7: 50.
(10): the server may correct the end time in the start-stop time included in the third section information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information.
When the type of the first advertisement is a trailer advertisement, the advertisement duration included in the first advertisement information may be obtained, and the start-stop time included in the third program information corresponding to the first advertisement information may be obtained. The advertisement duration may then be subtracted from the end time included in the start-stop time to obtain a corrected end time.
Illustratively, the first advertisement information includes an advertisement duration of 2min, and the third program information includes a start-stop time of 7:00, 7: 50. In this way, the server may subtract the advertisement duration from the ending time 7:50 included in the starting and ending time by 2min to obtain the corrected ending time of 7:48, that is, the corrected starting and ending time included in the third program information is 7:00, 7: 48.
For the multiple searched advertisement information, the server may refer to the above steps (9) and (10) to modify the start-stop time of the program information corresponding to each advertisement information, so as to obtain a modified program list. The server may then store the revised program table and send the revised program table to the terminal.
Step 302: and the server receives a review request sent by the terminal, wherein the review request carries the target program identifier selected from the corrected program list.
The terminal may receive the modified program table transmitted by the server, and store the modified program table. Then, when detecting a review operation of the user, the terminal may display the modified program list, and detect a selection operation of the user for a plurality of program identifiers included in the displayed modified program list, and when detecting the selection operation, the terminal may take a program identifier corresponding to the selection operation as a target program identifier, and send the target program identifier carried in the review request to the server.
Illustratively, after the terminal receives the revised program list, as shown in fig. 5, a review interface may be displayed, where the review interface includes the revised program list 501 and a play window 502, and the play window 502 may display a program identifier, a start-stop time, a play progress, and a program preview of a review program currently being played by the terminal. The play window 502 may also display a fast forward option, a rewind option, and a pause option for the review program currently being played.
Accordingly, the server may receive a review request sent by the terminal, and obtain the target operation identifier carried in the review request.
Step 303: and the server acquires the start-stop time of the target program identified by the target program identification from the corrected program list according to the target program identification.
In this embodiment of the application, after the server obtains the target program identifier, the server may search the target program identifier from a plurality of program identifiers included in the stored modified program list, and obtain the start-stop time of the target program identified by the target program identifier.
Step 304: and the server acquires a target video stream according to the start-stop time of the target program and the target program identifier, and sends the target video stream to the terminal so that the terminal plays the target video stream.
In the embodiment of the application, after the server acquires the start-stop time of the target program, the advertisement information of the advertisement to be delivered can be acquired according to the target program identifier, and the advertisement information of the advertisement to be delivered includes the identifier of the advertisement to be delivered. And then, acquiring a program video stream according to the starting and ending time of the target program, acquiring an advertisement video stream according to the identifier of the advertisement to be launched, and determining the program video stream and the advertisement video stream as target video streams.
In some embodiments, in the process of acquiring the advertisement, the server selects the advertisement to be played according to the starting and ending time points of the advertisement playing in the live program, so that the viewing experience of the user can simulate the viewing experience in the live program as much as possible.
In some embodiments, the start-stop time point of the advertisement playing in the live program can be further obtained according to the review program table, after a review request of a user is received, the server queries the advertisement to be played, the playing time of which is in accordance with the start-stop time point of the advertisement playing, and then issues the advertisement to be played to the television together with the review target video stream.
In some embodiments, the server further needs to acquire a time point of playing the advertisement and a relative time position of the live program stream during the live broadcast process, so as to insert the advertisement in the reviewed target video stream according to the determined relative time position.
It should be noted that the server stores the corresponding relationship between the program identifier and the advertisement information of the advertisement to be delivered. In this case, the server may search for the target program identifier in the corresponding relationship, and obtain advertisement information of the advertisement to be delivered corresponding to the target program identifier.
After the server acquires the advertisement information of the advertisement to be launched according to the target program identifier, the server can acquire the program video stream corresponding to the target program from the stored video stream according to the start-stop time of the target program, and can acquire the advertisement video stream according to the identifier of the advertisement to be launched, which is included in the advertisement information of the advertisement to be launched.
It should be noted that the stored video stream includes a plurality of video data packets. Wherein each video data packet in the plurality of video data packets comprises a time stamp for indicating a transmission time of the corresponding video data packet when live. The server may search, according to the start time and the end time included in the start-stop time of the target program, two video data packets having the same time stamps as the start time and the end time, respectively, from among a plurality of video data packets included in the stored video stream, and use the two video data packets and all video data packets between the two video data packets as the program video stream.
Optionally, when the video stream is stored in the distributed storage system, the server may send an acquisition request to a management node of the distributed storage system, where the acquisition request carries the start-stop time of the target program. After receiving the acquisition request, the management node may acquire the start-stop time of the target program carried in the acquisition request, and acquire a program video stream corresponding to the target program from the stored video stream according to the start-stop time of the target program. The method for acquiring the program video stream is the same as the method described above, and is not described herein again.
After acquiring the program video stream and the advertisement video stream, the server can determine whether the advertisement video stream is a pre-film advertisement or a post-film advertisement, combine the program video stream and the advertisement video stream to obtain a target video stream, and then send the target video stream to the terminal so that the terminal plays the target video stream.
As an example, the advertisement information of the advertisement to be delivered may further include a type of the advertisement to be delivered, wherein the type may be a pre-film advertisement or a post-film advertisement. Based on the above, the server can obtain the type of the advertisement to be delivered, and determine whether the advertisement video stream should be positioned before or after the program video stream according to the type, so as to obtain the target video stream.
Optionally, when the server cannot find the target program identifier in the correspondence between the stored program identifier and the advertisement information of the advertisement to be delivered, it indicates that the program identified by the target program identifier does not have the advertisement to be delivered when the program is viewed again. In this case, the server may directly acquire the program video stream according to the start-stop time of the target program, and use the program video stream as the target video stream. Thereafter, the server may transmit the target video stream to the terminal to cause the terminal to display the target video stream.
In other embodiments, after the server acquires the advertisement information of the advertisement to be delivered according to the target program identifier, it may determine whether the advertisement to be delivered is a pre-segment advertisement or a post-segment advertisement according to the type of the advertisement to be delivered included in the advertisement information, and determine the order of the advertisement video stream and the program video stream when playing according to the type of the advertisement to be delivered. Then, the server can send the advertisement video stream and the program video stream to the terminal in sequence according to the sequence, so that the terminal plays the advertisement video stream and the program video stream in sequence.
If the advertisement to be launched is a pre-film advertisement, the server can acquire an advertisement video stream according to the identifier of the advertisement to be launched and send the advertisement video stream to the terminal so that the terminal plays the advertisement video stream. After the advertisement video stream is played, the server can acquire a program video according to the start-stop time of the target program and send the program video stream to the terminal, so that the terminal plays the program video stream.
If the advertisement to be launched is a tail-end advertisement, the server can acquire a program video according to the starting and ending time of the target program and send the program video stream to the terminal so that the terminal plays the program video stream. After the program video stream is played, the server can acquire the advertisement video stream according to the identifier of the advertisement to be launched, and send the advertisement video stream to the terminal, so that the terminal plays the advertisement video stream.
In the embodiment of the application, the plurality of program identifiers included in the corrected program list and the starting and ending time of the program identified by each program identifier are obtained by correcting according to the actual live program information, so that the corrected program list is completely the same as the actual live program, and the problem of inaccuracy in reviewing the program list due to change of the program in the live program process is avoided. Therefore, when a review request is received, the starting and ending time of the modified target program can be obtained from the modified program list according to the target program identifier carried in the review request, and then the accurate target video stream of the target program can be obtained according to the starting and ending time, so that the viewing experience of a user is improved.
Illustratively, as shown in fig. 6, the method for acquiring a video stream introduced in the above embodiment is fully described herein. Assume that the review program recording module sends the program video stream to the distributed storage system to cause the distributed storage system to store the live video stream.
It should be noted that the distributed storage system further stores an advertisement video stream, and the modification module stores a modified program table.
And the terminal sends a request for acquiring the corrected program list to the program issuing module, wherein the request carries the channel identifier. After receiving the request for obtaining the corrected program list, the program issuing module can obtain the corrected program list from the correction module according to the channel identifier and send the corrected program list to the terminal. The terminal can display the corrected program list after receiving the corrected program list, and can send a review request to a review program video stream pushing module when detecting a selection operation for a target program in a plurality of programs included in the corrected program list, wherein the review request carries a target program identifier. After receiving the review request, the review program video stream pushing module may obtain the start-stop time of the target program from the revised program table stored in the revising module according to the target program identifier, and obtain the advertisement information of the advertisement to be delivered from the advertisement operation module according to the start-stop time of the target program. And then, the review program video stream pushing module can acquire the program video stream of the target program from the distributed storage system according to the starting and ending time of the target program, acquire the advertisement video stream of the advertisement to be launched from the distributed storage system according to the advertisement information of the advertisement to be launched, generate the target video stream according to the program video stream and the advertisement video stream, and further push the target video stream to the terminal so that the terminal plays the target video stream.
Referring to fig. 7, an embodiment of the present application provides a server 700, where the server 700 includes:
a sending module 701, configured to send a modified program list to a terminal, where the modified program list is obtained by modifying a review program list according to actual live program information, and the modified program list includes multiple program identifiers and start-stop time of a program identified by each program identifier;
a receiving module 702, configured to receive a review request sent by a terminal, where the review request carries a target program identifier selected from the modified program list;
a first obtaining module 703, configured to obtain, according to the target program identifier, the start-stop time of the target program identified by the target program identifier from the modified program list;
the second obtaining module 704 is configured to obtain a target video stream according to the start-stop time of the target program and the target program identifier, and send the target video stream to the terminal, so that the terminal plays the target video stream.
Optionally, the server further comprises:
the third acquisition module is used for acquiring a review program list and at least one accurate program list, wherein the review program list comprises program information of a plurality of first programs scheduled to be played before live broadcast starts, and each accurate program list comprises program information of a plurality of second programs in actual live broadcast;
the correcting module is used for correcting the program information of a plurality of first programs included in the review program list according to the program information of each second program included in each accurate program list;
and the generating module is used for generating a corrected program list according to the initial program list after the program information is corrected.
Optionally, the program information includes a program identifier of the corresponding program and a start-stop time of the corresponding program;
the correction module comprises:
the first searching sub-module is used for searching the first program information in the first accurate program list for second program information matched with the first program information from the program information of a plurality of first programs included in the review program list according to the starting and ending time included in the first program information;
and the first correction submodule is used for correcting the second program information according to the first program information.
Optionally, the first modification submodule is specifically configured to:
if the start-stop time included by the first program information is the same as the start-stop time included by the second program information, and the first program identifier included by the first program information is different from the second program identifier included by the second program information, replacing the second program identifier with the first program identifier;
if the start-stop time included by the first program information is different from the start-stop time included by the second program information, and the first program identifier is the same as the second program identifier, replacing the start-stop time included by the second program information with the start-stop time included by the first program information;
and if the start-stop time included in the first program information is different from the start-stop time included in the second program information, and the first program identifier is different from the second program identifier, replacing the second program information with the first program information.
Optionally, the generating module includes:
the second searching submodule is used for searching the advertisement information corresponding to each piece of program information in the initial program list;
and the second correction submodule is used for correcting the corresponding third program information according to the advertisement information corresponding to each piece of third program information for at least one piece of third program information corresponding to the found advertisement information to obtain a corrected program list.
Optionally, the advertisement information includes an advertisement duration and an advertisement insertion point;
the second modification submodule is specifically configured to:
determining the type of a first advertisement corresponding to the first advertisement information according to the advertisement insertion point included by the first advertisement information, wherein the type of the first advertisement includes a front advertisement and a tail advertisement, and the first advertisement information is any piece of searched advertisement information;
if the type of the first advertisement is a pre-film advertisement, correcting the starting time in the starting and stopping time included in the third program information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information;
and if the type of the first advertisement is the trailer advertisement, correcting the ending time in the starting and ending time included by the third program information corresponding to the first advertisement information according to the advertisement duration included by the first advertisement information.
Optionally, the second obtaining module is specifically configured to:
acquiring advertisement information of the advertisement to be launched according to the target program identifier, wherein the advertisement information of the advertisement to be launched comprises the identifier of the advertisement to be launched;
acquiring a program video stream according to the starting and stopping time of the target program;
acquiring an advertisement video stream according to the identifier of the advertisement to be launched;
and determining the program video stream and the advertisement video stream as target video streams.
In summary, in the embodiment of the present application, since the plurality of program identifiers included in the modified program list and the start-stop time of the program identified by each program identifier are obtained by modifying according to the actual live program information, the modified program list is identical to the actual live program, and the problem that the review of the program list is inaccurate due to the change of the program in the live program process is avoided. Therefore, when a review request is received, the starting and ending time of the modified target program can be obtained from the modified program list according to the target program identifier carried in the review request, and then the accurate target video stream of the target program can be obtained according to the starting and ending time, so that the viewing experience of a user is improved.
It should be noted that: in the above embodiment, when the apparatus for acquiring a video stream acquires a video stream, only the division of the functional modules is illustrated, and in practical applications, the functions may be distributed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the embodiments of the method for acquiring a video stream provided by the above embodiments belong to the same concept, and specific implementation processes thereof are described in the embodiments of the methods for the embodiments and are not described herein again.
Fig. 8 shows a schematic structural diagram of a server 800 for acquiring a video stream according to an exemplary embodiment of the present application. The functions of the server in the embodiment shown in fig. 3 can be implemented by the server shown in fig. 8. The server may be a server in a cluster of background servers. Specifically, the method comprises the following steps:
the server 800 includes a Central Processing Unit (CPU)801, a system memory 804 including a Random Access Memory (RAM)802 and a Read Only Memory (ROM)803, and a system bus 805 connecting the system memory 804 and the central processing unit 801. The server 800 also includes a basic input/output system (I/O system) 806, which facilitates transfer of information between various devices within the computer, and a mass storage device 807 for storing an operating system 83, application programs 814, and other program modules 815.
The basic input/output system 806 includes a display 808 for displaying information and an input device 809 such as a mouse, keyboard, etc. for user input of information. Wherein a display 808 and an input device 409 are connected to the central processing unit 801 through an input output controller 810 connected to the system bus 805. The basic input/output system 406 may also include an input/output controller 810 for receiving and processing input from a number of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, input-output controller 810 also provides output to a display screen, a printer, or other type of output device.
The mass storage device 807 is connected to the central processing unit 801 through a mass storage controller (not shown) connected to the system bus 805. The mass storage device 807 and its associated computer-readable media provide non-volatile storage for the server 800. That is, the mass storage device 807 may include a computer-readable medium (not shown) such as a hard disk or CD-ROM drive.
Without loss of generality, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that computer storage media is not limited to the foregoing. The system memory 804 and mass storage 807 described above may be collectively referred to as memory.
According to various embodiments of the present application, server 800 may also operate as a remote computer connected to a network through a network, such as the Internet. That is, the server 800 may be connected to the network 812 through the network interface unit 811 coupled to the system bus 805, or may be connected to other types of networks or remote computer systems (not shown) using the network interface unit 811.
The memory further includes one or more programs, and the one or more programs are stored in the memory and configured to be executed by the CPU. The one or more programs include instructions for performing the method of acquiring a video stream provided by the embodiments of the present application.
Embodiments of the present application further provide a non-transitory computer-readable storage medium, where instructions in the storage medium, when executed by a processor of a server, enable the server to perform the method for acquiring a video stream provided in the embodiment shown in fig. 3.
Embodiments of the present application further provide a computer program product containing instructions, which when run on a computer, cause the computer to execute the method for acquiring a video stream provided in the embodiment shown in fig. 3.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only exemplary of the present application and should not be taken as limiting, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (10)

1. A method for acquiring a video stream, the method comprising:
the method comprises the steps of obtaining a review program list and at least one accurate program list, wherein the review program list comprises program information of a plurality of first programs scheduled to be played before live broadcast starts, and each accurate program list comprises program information of a plurality of second programs in actual live broadcast; according to the program information of each second program included in each accurate program list, correcting the program information of a plurality of first programs included in the review program list;
searching advertisement information corresponding to each piece of program information in the initial program list after the program information is corrected; for at least one piece of third program information corresponding to the found advertisement information, correcting the corresponding third program information according to the advertisement information corresponding to each piece of third program information to obtain a corrected program list;
sending the corrected program list to a terminal, wherein the corrected program list comprises a plurality of program identifiers and the starting and ending time of the program identified by each program identifier; receiving a review request sent by a terminal, wherein the review request carries a target program identifier selected from the corrected program list;
according to the target program identification, the starting and ending time of the target program identified by the target program identification is obtained from the corrected program list; and acquiring a target video stream according to the start-stop time of the target program and the target program identifier, and sending the target video stream to the terminal so that the terminal plays the target video stream.
2. The method of claim 1, wherein the program information comprises a program identifier of the corresponding program and a start-stop time of the corresponding program;
the modifying, according to the program information of each second program included in each accurate program table, the program information of the plurality of first programs included in the review program table includes:
for first program information in a first accurate program list, according to the start-stop time included in the first program information, searching second program information matched with the first program information from the program information of a plurality of first programs included in the review program list;
and correcting the second program information according to the first program information.
3. The method of claim 2, wherein modifying the second program information based on the first program information comprises:
if the start-stop time included by the first program information is the same as the start-stop time included by the second program information, and the first program identifier included by the first program information is different from the second program identifier included by the second program information, replacing the second program identifier with the first program identifier;
if the start-stop time included by the first program information is different from the start-stop time included by the second program information, and the first program identifier is the same as the second program identifier, replacing the start-stop time included by the second program information with the start-stop time included by the first program information;
and if the start-stop time included in the first program information is different from the start-stop time included in the second program information, and the first program identifier is different from the second program identifier, replacing the second program information with the first program information.
4. The method of claim 1, wherein the advertisement information comprises an advertisement duration and an advertisement insertion point;
the modifying the corresponding third program information according to the advertisement information corresponding to each piece of third program information includes:
determining the type of a first advertisement corresponding to first advertisement information according to an advertisement insertion point included by the first advertisement information, wherein the type of the first advertisement includes a pre-film advertisement and a post-film advertisement, and the first advertisement information is any piece of searched advertisement information;
if the type of the first advertisement is a pre-film advertisement, correcting the starting time in the starting and ending time included in the third program information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information;
and if the type of the first advertisement is a trailer advertisement, correcting the end time in the start-stop time included in the third program information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information.
5. The method according to any one of claims 1-4, wherein said obtaining the target video stream according to the start-stop time of the target program and the target program identifier comprises:
acquiring advertisement information of the advertisement to be launched according to the target program identifier, wherein the advertisement information of the advertisement to be launched comprises the identifier of the advertisement to be launched;
acquiring a program video stream according to the starting and stopping time of the target program;
acquiring an advertisement video stream according to the identifier of the advertisement to be launched;
determining the program video stream and the advertisement video stream as the target video stream.
6. A server, characterized in that the server comprises:
the third acquisition module is used for acquiring a review program list and at least one accurate program list, wherein the review program list comprises program information of a plurality of first programs scheduled to be played before live broadcast starts, and each accurate program list comprises program information of a plurality of second programs in actual live broadcast;
the correcting module is used for correcting the program information of the plurality of first programs included in the review program list according to the program information of each second program included in each accurate program list;
the generating module is used for searching advertisement information corresponding to each piece of program information in the initial program list after the program information is corrected; for at least one piece of third program information corresponding to the found advertisement information, correcting the corresponding third program information according to the advertisement information corresponding to each piece of third program information to obtain a corrected program list;
the sending module is used for sending the corrected program list to a terminal, and the corrected program list comprises a plurality of program identifiers and the starting and ending time of the program identified by each program identifier;
a receiving module, configured to receive a review request sent by a terminal, where the review request carries a target program identifier selected from the modified program list;
the first obtaining module is used for obtaining the starting and ending time of the target program identified by the target program identification from the corrected program list according to the target program identification;
and the second acquisition module is used for acquiring a target video stream according to the start-stop time of the target program and the target program identifier and sending the target video stream to the terminal so as to enable the terminal to play the target video stream.
7. The server according to claim 6, wherein the program information includes a program identifier of the corresponding program and a start-stop time of the corresponding program;
the correction module comprises:
the first searching sub-module is used for searching first program information in a first accurate program list for second program information matched with the first program information from the program information of a plurality of first programs included in the review program list according to the starting and ending time included in the first program information;
and the first correction submodule is used for correcting the second program information according to the first program information.
8. The server according to claim 7, wherein the first modification submodule is specifically configured to:
if the start-stop time included by the first program information is the same as the start-stop time included by the second program information, and the first program identifier included by the first program information is different from the second program identifier included by the second program information, replacing the second program identifier with the first program identifier;
if the start-stop time included by the first program information is different from the start-stop time included by the second program information, and the first program identifier is the same as the second program identifier, replacing the start-stop time included by the second program information with the start-stop time included by the first program information;
and if the start-stop time included in the first program information is different from the start-stop time included in the second program information, and the first program identifier is different from the second program identifier, replacing the second program information with the first program information.
9. The server according to claim 6, wherein the advertisement information includes an advertisement duration and an advertisement insertion point;
the second modification submodule is specifically configured to:
determining the type of a first advertisement corresponding to first advertisement information according to an advertisement insertion point included by the first advertisement information, wherein the type of the first advertisement includes a pre-film advertisement and a post-film advertisement, and the first advertisement information is any piece of searched advertisement information;
if the type of the first advertisement is a pre-film advertisement, correcting the starting time in the starting and ending time included in the third program information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information;
and if the type of the first advertisement is a trailer advertisement, correcting the end time in the start-stop time included in the third program information corresponding to the first advertisement information according to the advertisement duration included in the first advertisement information.
10. A terminal comprising a display and a processor, characterized in that:
the processor is configured to:
receiving a selection of a user on a target program in a corrected program list displayed by a display, wherein the corrected program list is obtained by a server, a review program list and at least one accurate program list are obtained, according to program information of each second program included by each accurate program list, program information of a plurality of first programs included by the review program list is corrected, advertisement information corresponding to each piece of program information in an initial program list after the program information is corrected is searched, and for at least one piece of third program information corresponding to the searched advertisement information, according to the advertisement information corresponding to each piece of third program information, the corresponding third program information is corrected and sent to a terminal; the review program list comprises program information of a plurality of first programs scheduled to be played before live broadcast starts, and each accurate program list comprises program information of a plurality of second programs in actual live broadcast;
sending a review request to the server, wherein the review request carries the program identifier of the target program; the review request is used for acquiring the start-stop time of the target program identified by the target program identifier from the corrected program list according to the target program identifier; acquiring a target video stream from a recorded live video stream according to the start-stop time of the target program and the target program identifier;
and receiving and analyzing the target video stream, and controlling a display to display a target program obtained by analyzing the video stream.
CN202010258279.9A 2020-04-03 2020-04-03 Method and device for acquiring video stream Active CN111405373B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010258279.9A CN111405373B (en) 2020-04-03 2020-04-03 Method and device for acquiring video stream

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010258279.9A CN111405373B (en) 2020-04-03 2020-04-03 Method and device for acquiring video stream

Publications (2)

Publication Number Publication Date
CN111405373A CN111405373A (en) 2020-07-10
CN111405373B true CN111405373B (en) 2022-02-08

Family

ID=71429492

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010258279.9A Active CN111405373B (en) 2020-04-03 2020-04-03 Method and device for acquiring video stream

Country Status (1)

Country Link
CN (1) CN111405373B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113542784A (en) * 2021-07-13 2021-10-22 Vidaa美国公司 Display equipment, server and playing control method of television live program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101677394A (en) * 2008-09-16 2010-03-24 中兴通讯股份有限公司 Method and apparatus for commercial break based on IPTV
CN104702979A (en) * 2013-12-05 2015-06-10 中兴通讯股份有限公司 IPTV (Internet Protocol Television)-based replay method and system and relevant equipment
CN104902296A (en) * 2015-05-20 2015-09-09 无锡天脉聚源传媒科技有限公司 Method and device for updating program list
CN105451068A (en) * 2015-11-24 2016-03-30 华数传媒网络有限公司 Electronic program list generation method and device
CN106210837A (en) * 2016-06-30 2016-12-07 中国联合网络通信集团有限公司 Multimedia coding method and system, method for recording, operational approach, media server
CN110430449A (en) * 2019-08-14 2019-11-08 山东海看新媒体研究院有限公司 A kind of TV big data processing method and system based on electronic program guides

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69812701T2 (en) * 1997-07-21 2004-02-05 E Guide, Inc., Pasadena METHOD FOR NAVIGATING A TV PROGRAM GUIDE WITH ADVERTISING
WO2004072761A2 (en) * 2003-02-12 2004-08-26 Video Networks Ltd System and method for identification and insertion of advertising in broadcast programmes
EP2490443B1 (en) * 2011-02-15 2017-08-16 EchoStar Technologies L.L.C. Controlling recording of programs
CN105828091B (en) * 2016-03-28 2018-11-09 广州华多网络科技有限公司 The playback method and system of video frequency program in network direct broadcasting
US9948966B1 (en) * 2017-04-19 2018-04-17 Rovi Guides, Inc. Systems and methods for modifying playback of a media asset based on an event that will interrupt playback of the media asset

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101677394A (en) * 2008-09-16 2010-03-24 中兴通讯股份有限公司 Method and apparatus for commercial break based on IPTV
CN104702979A (en) * 2013-12-05 2015-06-10 中兴通讯股份有限公司 IPTV (Internet Protocol Television)-based replay method and system and relevant equipment
CN104902296A (en) * 2015-05-20 2015-09-09 无锡天脉聚源传媒科技有限公司 Method and device for updating program list
CN105451068A (en) * 2015-11-24 2016-03-30 华数传媒网络有限公司 Electronic program list generation method and device
CN106210837A (en) * 2016-06-30 2016-12-07 中国联合网络通信集团有限公司 Multimedia coding method and system, method for recording, operational approach, media server
CN110430449A (en) * 2019-08-14 2019-11-08 山东海看新媒体研究院有限公司 A kind of TV big data processing method and system based on electronic program guides

Also Published As

Publication number Publication date
CN111405373A (en) 2020-07-10

Similar Documents

Publication Publication Date Title
US11665378B2 (en) Establishment and use of time mapping based on interpolation using low-rate fingerprinting, to help facilitate frame-accurate content revision
CN108702531B (en) Method and system for performing actions based on channel identification
US10616630B2 (en) Method for querying information of a currently broadcasted TV program and smart TV
US11012743B2 (en) Media channel identification with multi-match detection and disambiguation based on single-match
US11831930B2 (en) Content-modification system with advertisement reconciliation feature
US11962839B2 (en) Content-modification system with testing and reporting feature
CN111405373B (en) Method and device for acquiring video stream
US20220036399A1 (en) Increasing Advertisement Revenue by Repeated Re-Evaluation of Value of Advertisement Spot
US11843813B2 (en) Content-modification system with probability-based selection feature
US20230010310A1 (en) Content modification system with viewer behavior-based content delivery selection feature
US20220036408A1 (en) Replacement advertisement selection after channel changes
US11722729B2 (en) Method and system for use of earlier and/or later single-match as basis to disambiguate channel multi-match with non-matching programs
US11109088B2 (en) Content-modification system with unscheduling feature
US11418826B2 (en) Content-modification system with supplemental content stitching feature
US20220264171A1 (en) Use of In-Band Data to Facilitate Ad Harvesting for Dynamic Ad Replacement
US11800170B2 (en) Content-modification system with feature for prioritizing channels used in channel identification

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