CN112788353B - Live broadcast time shifting processing method and device, electronic equipment and readable storage medium - Google Patents
Live broadcast time shifting processing method and device, electronic equipment and readable storage medium Download PDFInfo
- Publication number
- CN112788353B CN112788353B CN202011583977.2A CN202011583977A CN112788353B CN 112788353 B CN112788353 B CN 112788353B CN 202011583977 A CN202011583977 A CN 202011583977A CN 112788353 B CN112788353 B CN 112788353B
- Authority
- CN
- China
- Prior art keywords
- playing
- list
- address information
- play
- playback
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-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/47202—End-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 requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
After a playing request initiated by a terminal device is obtained, a corresponding playback list is obtained according to the starting time of playing content which is carried in the playing request and is requested to be played back, and the playback list contains address information of all generated playing data starting from the starting playing data corresponding to the starting time. And sequentially extracting a preset amount of address information from the address information of all the playing data contained in the playback list to generate a corresponding playing list, and feeding back the corresponding playing list to the terminal equipment so that the terminal equipment can acquire corresponding playing contents according to the playing list for playback. Therefore, when the playing list is refreshed each time, less processing resources are occupied, the time is spent, and the influence on the playing process is avoided.
Description
Technical Field
The present application relates to the field of live broadcast technologies, and in particular, to a live broadcast time shift processing method and apparatus, an electronic device, and a readable storage medium.
Background
The Internet streaming media live broadcast platform provides high-quality, individual, interactive and intelligent user experience for users, subverts the traditional listening and watching mode, and brings brand-new viewing experience for audiences. The user can play back the live program at any time in real time, and the program stream is automatically generated by the background according to the time stamp during playback. The user can realize the functions of forward movement, backward movement and the like when watching television programs and listening to broadcast programs, thereby subverting the original mode of watching television. In the existing time-shifting television service, a user can watch programs several hours before the current time through channel selection and time-shifting requirements, and the user is given the autonomy of freely selecting the programs.
In the existing time-shift processing mode, when corresponding playback content is acquired based on user requirements, all subsequent playing content is often acquired from a timestamp that the user needs to play back, and a manifest file is generated and fed back to the user, so that the user acquires the playing content based on the fed-back manifest file to play. In this way, the live process is often executed continuously, and the live content is generated continuously, so that the obtained manifest file is larger and larger. When the manifest file needs to be refreshed, the refresh action occupies more processing resources and takes longer time, thereby affecting the playing process.
Disclosure of Invention
The application aims to provide a live broadcast time shifting processing method, a live broadcast time shifting processing device, an electronic device and a readable storage medium, which can reduce processing resources required by refreshing and time consumption, and avoid influence on a playing process.
The embodiment of the application can be realized as follows:
in a first aspect, the present application provides a live time shift processing method, where the method includes:
acquiring a playing request initiated by a terminal device, wherein the playing request carries the starting time of playing content requested to be played back;
obtaining a corresponding playback list according to the starting time, wherein the playback list comprises address information of all generated play data starting from the starting play data corresponding to the starting time;
and sequentially extracting a preset number of address information from the address information of all the playing data contained in the playback list to generate a corresponding playing list, and sending the playing list to the terminal equipment so that the terminal equipment acquires corresponding playing contents according to the playing list for playback.
In an optional embodiment, the step of sequentially extracting a preset number of address information from the address information of all the play data included in the playback list to generate a corresponding playlist includes:
starting to extract a preset number of address information from the address information corresponding to the initial playing data from all the playing data contained in the playback list to generate a corresponding playing list, and sending the playing list to the terminal equipment;
detecting whether the playing progress of the terminal equipment meets a preset condition or not;
and when the playing progress of the terminal equipment meets a preset condition, continuously extracting address information of playing data from the playback list to update the playing list, and sending the updated playing list to the terminal equipment, so that the terminal equipment acquires corresponding playing content according to the updated playing list to play back.
In an optional implementation manner, the step of detecting whether the play progress of the terminal device meets a preset condition includes:
detecting whether the number of the playing data which are not played back by the terminal equipment in the playing data contained in the current playing list is lower than a set number, and if the number of the playing data which are not played back by the terminal equipment is lower than the set number, judging that the playing progress of the terminal equipment meets a preset condition.
In an optional embodiment, the step of continuing to extract address information of the play data from the playback list to update the playlist includes:
continuously extracting a preset number of address information from the address information of all the playing data contained in the playback list;
adding the address information of the newly extracted play data to the play list to update the play list.
In an optional embodiment, the step of continuing to extract address information of the play data from the playback list to update the playlist further includes:
and deleting the address information of the playing data of which the terminal equipment has completed the playback currently from the playing list.
In an alternative embodiment, the step of continuously extracting a preset number of address information from the address information of all the play data included in the playback list includes:
determining play data generated from the reception of the play request to a current time point;
updating the playback list according to the determined address information of the playing data;
a preset number of address information are extracted from the address information of all the play data included in the updated playback list.
In an alternative embodiment, the playing data includes a plurality of video segments, each of the video segments having a corresponding sequence number;
the step of obtaining a corresponding playback list according to the start time includes:
acquiring respective sequence numbers and address information of a plurality of video clips which are generated and stored currently;
obtaining a starting video segment corresponding to the starting time in the plurality of video segments, and obtaining a sequence number of the starting video segment;
determining all subsequent video segments generated from the starting video segment from the plurality of video segments according to the sequence number of the starting video segment;
and generating a playback list according to the address information of the starting video segment and all the video segments.
In a second aspect, the present application provides a live time shift processing apparatus, applied to a time shift server, the apparatus including:
the system comprises an acquisition module, a playback module and a processing module, wherein the acquisition module is used for acquiring a play request initiated by terminal equipment, and the play request carries the starting time of play content requested to be played back;
an obtaining module, configured to obtain a corresponding playback list according to the start time, where the playback list includes address information of all generated play data starting from start play data corresponding to the start time;
and the generating module is used for sequentially extracting a preset number of address information from the address information of all the playing data contained in the playback list to generate a corresponding play list, and sending the play list to the terminal equipment so that the terminal equipment acquires corresponding playing contents according to the play list to play back.
In a third aspect, the present application provides an electronic device, including one or more storage media and one or more processors in communication with the storage media, where the one or more storage media store machine-executable instructions executable by the processors, and when the electronic device runs, the processors execute the machine-executable instructions to perform the live time-shift processing method described in any one of the foregoing embodiments.
In a fourth aspect, the present application provides a computer-readable storage medium storing machine-executable instructions, which when executed, implement the live time shift processing method of any one of the foregoing embodiments.
The beneficial effects of the embodiment of the application include, for example:
after a playing request initiated by a terminal device is obtained, a corresponding playback list is obtained according to the starting time of playing content which is carried in the playing request and is requested to be played back, and the playback list contains address information of all generated playing data starting from the starting playing data corresponding to the starting time. On the basis, a preset number of address information is sequentially extracted from the address information of all the playing data contained in the playback list to generate a corresponding playing list, and the corresponding playing list is fed back to the terminal equipment, so that the terminal equipment obtains corresponding playing contents according to the playing list to play back. In the scheme, the playback list obtained by the acquired starting time needing to be played back is extracted for multiple times in sequence, so that the play list with small data volume can be generated. Therefore, when the playing list is refreshed each time, less processing resources are occupied, the time is spent, and the influence on the playing process is avoided.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are required to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present application and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained from the drawings without inventive effort.
Fig. 1 is an application architecture diagram of a live time shift processing method in the prior art;
fig. 2 is an application architecture diagram of a live time shift processing method according to an embodiment of the present application;
fig. 3 is a flowchart of a live time shift processing method according to an embodiment of the present application;
FIG. 4 is a flowchart of the substeps of step S120 in FIG. 3;
FIG. 5 is a flowchart of sub-steps of step S130 in FIG. 3;
fig. 6 is a flowchart of sub-steps of step S133 in fig. 5;
FIG. 7 is a flowchart of the substeps of step S1331 of FIG. 6;
fig. 8 is an interaction diagram of a live time shift processing method according to an embodiment of the present application;
fig. 9 is a block diagram of an electronic device according to an embodiment of the present application;
fig. 10 is a functional block diagram of a live time shift processing apparatus according to an embodiment of the present application.
Icon: 100-a timeslip server; 110-a storage medium; 120-a processor; 130-live time shift processing means; 131-an acquisition module; 132-an obtaining module; 133-a generating module; 140-a communication interface; 200-video source end; 300-an acquisition server; 400-a storage server; 500-a live server; 600-on-demand server; 700-WEB server; 800-terminal equipment.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments. The components of the embodiments of the present application, generally described and illustrated in the figures herein, can be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the present application, as presented in the figures, is not intended to limit the scope of the claimed application, but is merely representative of selected embodiments of the application. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined or explained in subsequent figures.
In the description of the present application, it should be noted that the features in the embodiments of the present application may be combined with each other without conflict.
The existing method for realizing live broadcast time shifting is mainly realized by using Event PlayList provided by HLS officer, and by designating TAG of EXT-X-PlayList-TYPE as Event, the stream is identified as time-shifted stream. The stream design is a supplement to the usage scenario of the live stream, and the main usage scenario is that a certain program is not generated in a live mode at the beginning, but a user can enter at any time in the stream and can watch the program from any time in the live stream.
In the existing processing mode, because the mode is specified by the HLS specification, almost all systems, such as default system players of IOS, Android and the like, support the mode, and terminal equipment is not required to be adapted. However, this approach has the drawback of being not universal, and is technically unsuitable for long live streaming and time shifting across programs. Because the manifest file contains all program information from the playback point, and the content of the manifest file is continuously added along with the live broadcasting process, the manifest file becomes larger and larger, and the manifest file occupies more processing resources and takes longer time when needing to be refreshed, thereby affecting the playing experience.
Please refer to fig. 1, which is a schematic diagram of an application scenario of a conventional live time shift processing scheme. The scene includes a video source 200, a capture server 300, a storage server 400, a live broadcast server 500, an on-demand server 600, a WEB server 700, and a terminal device 800. The collection server 300, the storage server 400, the live broadcast server 500, the on-demand broadcast server 600, and the like may be a server cluster. The capture server 300 may retrieve video data from the video source 200 and store the retrieved video data in the storage server 400. In addition, the live broadcast server 500 may also obtain a small amount of video data from the capture server 300 for live broadcast. The on-demand server 600 may obtain video data from the storage server 400 for use by video-on-demand.
The terminal device 800 may initiate a viewing request, and the content distribution network may obtain corresponding video data from the live server 500 or the on-demand server 600 according to the client's requirement, so as to feed back the video data to the terminal device 800.
In this embodiment, a time shift server 100 is added to the application scenario architecture of the above-mentioned live time shift processing, please refer to fig. 2, wherein a terminal device 800 may initiate a watching request to the time shift server 100, and implement the live time shift requirement of a client through analysis and processing by the time shift server 100. In this embodiment, timeslip server 100 may be a server cluster that includes multiple servers, and may be a WEB server type.
In this embodiment, based on the existing on-demand and live system architecture, the live time-shift processing method of this embodiment is implemented by extending the live time-shift server 100, and the terminal device 800 in the extended system architecture does not need to be adapted again. Moreover, the live time shift processing scheme implemented based on the time shift server 100 according to this embodiment only needs to occupy less processing resources and spend less time when refreshing the play request each time, and can avoid the influence on the play process.
Referring to fig. 3, fig. 3 is a flowchart illustrating a live time shift processing method according to an embodiment of the present application, which can be executed by the time shift server 100 shown in fig. 2. It should be understood that, in other embodiments, the order of some steps in the live time shift processing method of this embodiment may be interchanged according to actual needs, or some steps may be omitted or deleted. The detailed steps of the live time shift processing method are described as follows.
Step S110, a play request initiated by the terminal device 800 is obtained, where the play request carries a start time of a play content requested to be played back.
Step S120, obtaining a corresponding playback list according to the start time, where the playback list includes address information of all generated play data starting from the start play data corresponding to the start time.
Step S130, sequentially extracting a preset number of address information from the address information of all the play data included in the playback list to generate a corresponding play list, and sending the play list to the terminal device 800, so that the terminal device 800 obtains corresponding play content according to the play list for playback.
In the streaming media platform provided in this embodiment, the video source 200 may be a terminal device 800 that generates audio and video data, and the capture server 300 may obtain original audio and video stream data from the video source 200, and encode the captured audio data in real time to obtain a ts (transport stream) format. And then, the encoded audio/video data is sent to the storage server 400 through a tcp (transmission Control protocol) protocol.
After receiving the audio and video data, the storage server 400 may construct an index based on the order of the audio and video data, and store the index information in the database. In addition, the storage server 400 may be a server cluster including a plurality of storage nodes, and after receiving the audio and video data to be stored, a storage node for storing the audio and video data may be determined from the plurality of storage nodes. For example, detecting how busy each storage node is to determine the storage node may be employed. In the storage node, a storage array mode can be adopted to realize storage of audio and video data. Meanwhile, the storage server 400 may also record storage address information of each audio/video data.
With the streaming media platform provided in this embodiment, a user can play back a live program according to his own needs, for example, the user can play back video data from the hour before the current time point or two hours before the current time point. The terminal device 800 may be a device held by a user, and may be, for example, a smart phone, a personal computer, a notebook computer, a smart television, or the like.
In this embodiment, the start time carried in the play request may be a relative time or an absolute time. For example, if a live program starts playing from 17:00 until the current time point is 19: 00. The start time may be one hour before the current time point, i.e. the start time is a relative time with respect to the current time point. In addition, the starting time may be 18:00, that is, the playback is started from the video data at 18:00, and is not referred to the current time point.
After obtaining the play request initiated by the terminal device 800, the time shift server 100 may obtain relevant information of the corresponding play data from the storage server 400, and optionally, may be address information of the play data to be played back, so as to feed back the address information to the terminal device 800, so that the terminal device 800 may request to obtain the corresponding play data for playing based on the address information of the play data.
In this embodiment, the timeslip server 100 may be a cluster including a plurality of servers, and when processing the request of the terminal device 800, clients in various regions can access the network link and the server closest to the client first by using a load balancing technique when accessing the site, so as to obtain a faster and better response.
In this embodiment, taking the above as an example, it is assumed that the starting time is a relative time, for example, the starting time is one hour before the current time point, that is, the terminal device 800 requests playback from 18: 00. Timeslip server 100 may obtain address information of all the generated play data starting from the start play data corresponding to the start time from storage server 400. That is, address information of all the play data from the play data corresponding to 18:00 until the current time point of 19: 00. Timeslip server 100 generates a playback list from the obtained address information.
In order to avoid that the data volume in the playback list is large, and the playback list is continuously refreshed and added with the live broadcast, the playback list is larger and larger, and each refreshing action occupies more processing resources and takes longer time. On this basis, therefore, in the present embodiment, timeslip server 100, after obtaining the playback list, can sequentially extract a preset number of address information from the address information of all the play data included in the playback list.
For example, address information of all the play data that have been generated starting from the start play data corresponding to the start time is saved in the playback list in the order of the play time axis. Timeslip server 100 may sequentially extract a preset number of address information in the order in which the address information of the play data is stored in the playback list. And, a playlist is generated from the extracted address information every time the address information is extracted, and the playlist is transmitted to the terminal device 800.
After obtaining the playlist, the terminal device 800 sends a request to the storage server 400 according to the address information of the playing data in the playlist, so as to obtain the corresponding playing data, and further perform playback of the related content.
In this embodiment, in a streaming manner, a manner of updating the playlist for multiple times may be adopted, and only a small amount of address information of the playing data is fed back to the terminal device 800 each time, which is equivalent to playing in a live streaming manner to the outside. On one hand, the purpose of playing the program stream at any time point based on the user requirement can be realized, and the program stream is provided in a live stream mode, so that the size of the playing list can be greatly reduced, the processing resources required by the playing list and the time spent on refreshing the playing list can be reduced when the playing list is refreshed each time, and the influence on the playing process is avoided.
In this embodiment, as can be seen from the above description, the playing data in the storage server 400 is encoded into a plurality of video segments, each video segment has a corresponding sequence number, and when the timeslip server 100 obtains a corresponding playback list according to the start time in the playing request, the following manner is implemented, please refer to fig. 4:
step S121, acquiring respective sequence numbers and address information of a plurality of video clips that have been currently generated and stored.
Step S122, obtaining a starting video segment corresponding to the starting time in the plurality of video segments, and obtaining a sequence number of the starting video segment.
Step S123, determining all subsequent video segments that have been generated from the starting video segment from the plurality of video segments according to the sequence number of the starting video segment.
Step S124, generating a playback list according to the address information of the starting video segment and all the video segments.
In this embodiment, the timeslip server 100 can obtain the respective sequence numbers and address information of the video segments that have been currently generated from the storage server 400. For example, a live program starts at 17:00 until the current point in time is 19: 00. The playing data generated in the time period comprises a plurality of video clips, and each video clip is subjected to serial number identification according to the sequence of the playing time axis. If the start time carried in the play request is 18:00, the start video segment corresponding to the time point 18:00 in the plurality of video segments can be obtained, and the sequence number of the start video segment is obtained.
Based on the identification of the sequence numbers of the plurality of video segments in the storage server 400, all subsequent video segments that have been generated starting from the starting video segment can be determined based on the sequence numbers of the respective video segments. For example, all video segments between time point 18:00 and time point 19: 00.
On this basis, address information of each video clip from the time point 18:00 to the time point 19:00 can be obtained, and a playback list is generated from the obtained address information.
After obtaining the playback list, time shift server 100 may generate a playlist based on address information in the playback list and feed the playlist back to terminal device 800 in a sequential extraction manner, optionally, referring to fig. 5, in this embodiment, the playlist may be fed back to terminal device 800 in the following manner:
step S131, starting to extract a preset number of address information from the address information corresponding to the initial play data from all the play data included in the playback list to generate a corresponding play list, and sending the play list to the terminal device 800.
Step S132, detecting whether the playing progress of the terminal device 800 meets a preset condition, and executing the following step S133 when the playing progress of the terminal device 800 meets the preset condition.
Step S133, continuously extracting address information of the playing data from the playback list to update the playlist, and sending the updated playlist to the terminal device 800, so that the terminal device 800 obtains corresponding playing content according to the updated playlist to perform playback.
In this embodiment, after the terminal device 800 initiates a play request, the time shift server 100 obtains, from the storage server 400, address information between the play data corresponding to the start time carried by the play request and the play data generated at the time point when the play request is received, and generates a playback list. A preset amount of address information, which may be, for example, address information of play data of five minutes from the start time onward, may be first extracted from the playback list. Taking the above as an example, assuming that the start time is 18:00, the extracted address information may be address information of the playing data from 18:00 to 18: 05. In addition, address information of video data of a set number of frames may be used, and the present embodiment is not limited to this, and may be any address information of a small number of pieces of playback data.
A play list is generated from the address information of the extracted play data and fed back to the terminal device 800. The terminal device 800 may request corresponding play data based on the currently received play list, i.e., based on the address information in the play list.
In this process, timeslip server 100 may monitor the playing progress of terminal device 800 to detect whether the playing progress of terminal device 800 meets a preset condition, for example, the preset condition may be that whether the number of playing data that is not played back by terminal device 800 in the playing data included in the current playlist is lower than a set number is detected, and if the number is lower than the set number, it is determined that the playing progress of terminal device 800 meets the preset condition.
That is, the timeslip server 100 may monitor the playing data pointed by the address information fed back to the terminal device 800, and determine whether the terminal device 800 is about to finish playing, and if the terminal device 800 is about to finish playing, the playing list needs to be updated, so that the terminal device 800 may obtain the subsequent playing data to continue playing.
Therefore, when the playing progress of the terminal device 800 satisfies the preset condition, the timeslip server 100 can continue to extract the address information of the playing data from the playback list to update the playlist. The terminal device 800 can obtain the subsequent play data based on the updated play list to continue the playback.
In addition, in implementation, during the playing process, terminal device 800 may also perform detection of its own playing progress, so as to continuously initiate a request for obtaining subsequent playing data to time-shift server 100, and when obtaining such a request, time-shift server 100 may trigger execution of the above-mentioned update operation on the playlist.
In this embodiment, when the timeslip server 100 updates the playlist, please refer to fig. 6, which can be implemented as follows:
step S1331, continuing to extract a preset number of address information from the address information of all the play data included in the playback list.
Step S1332, adding the address information of the newly extracted play data to the play list to update the play list.
Taking the above example as an example, if the playing data from start time 18:00 to 18:05 included in the playlist is about to end, then timeslip server 100 may continue to extract the address information of the playing data from 18:05 to 18:10 from the playback list and add the extracted address information to the playlist to update the playlist. As such, the terminal device 800 may acquire play data from between 18:05 to 18:10 from the storage server 400 based on the updated play list after playing the play data of 18:00 to 18:05 to continue to perform the playback process.
By analogy with the above logic, the information can be fed back to the terminal device 800 in a manner of multiple times of small extraction, and can be provided in a live streaming manner. The problem that the refreshing influences the playing process due to the fact that a playing list with large data is fed back at one time can be avoided.
In addition, in this embodiment, it is considered that, as the playing process is executed, more and more address information in the playlist will be provided, which may affect the playing process. In order to further reduce the influence on the playing process, in this embodiment, when the playlist is updated, after the address information of the newly extracted playing data is added to the playlist, at the same time, the address information of the playing data that has been played back by the terminal device 800 at present may be deleted from the playlist. In this way, only a small amount of address information of the playback data required by the terminal device 800 needs to be stored in the playlist. Further reducing processing resources and time spent in refreshing the playlist.
It should be understood that the video source 200 may continuously generate new play data during the content playback of the terminal device 800. Meaning that the storage server 400 will constantly store new play data on one side. In order to generate the information in the playback list based on the latest play data, in this embodiment, please refer to fig. 7, the playback list may be further processed in the following manner to ensure that the information in the playback list is applicable to the actual scene.
In step S13311, play data generated from the reception of the play request to the current time point is determined.
Step S13312, updating the playback list according to the determined address information of the play data.
In step S13313, a preset number of address information are extracted from the address information of all the play data included in the updated playback list.
In this embodiment, it is assumed that a play request of the terminal device 800 is received from 17:00 to 19:00 of the broadcast program, and the start time of the play request is 18: 00. After feeding back address information including playback data from 18:00 to 18:05 to the playback device based on the playback request from the terminal device 800. When the playing progress of the terminal device 800 meets the preset condition, the address information of the playing data from 18:05 to 18:10 is continuously extracted to be fed back to the terminal device 800. At this time, the video source 200 also continues to generate the play data, and when the terminal device 800 completes the playback of the play data for five minutes, the video source 200 generates new play data from 19:00 to 19:05 and stores the new play data in the storage server 400.
Therefore, the method can ensure that the playback list is generated based on the latest playing data and is suitable for actual application scenes.
To further explain the overall flow of the live time shift processing method provided in this embodiment, the flow of the processing method will be described below with reference to the interactive process shown in fig. 8.
The terminal device 800 initiates a play request carrying an initial time;
the time shift server 100 extracts a preset number of address information from the playback list to generate a play list, and transmits the play list to the terminal device 800;
the terminal device 800 obtains corresponding play data for playback based on the address information in the play list;
the time shift server 100 monitors whether the playing progress of the terminal device 800 meets a preset condition, and when the preset condition is met, the address information of newly generated playing data is acquired from the storage server 400;
the terminal device 800 acquires corresponding play data for playback based on the address information in the updated playlist.
In this embodiment, in the above manner, the streaming manner is adopted to provide the playing data to the terminal device 800, and the playing is performed in a live broadcast manner, so that the data volume of the playlist can be greatly reduced. The problems of large processing resource occupation and long time consumption when the refreshing operation is carried out can be avoided.
Referring to FIG. 9, a diagram illustrating exemplary components of an electronic device, which may be the timeslip server 100 shown in FIG. 2, is provided according to an embodiment of the present application. The electronic device may include a storage medium 110, a processor 120, a live time-shift processing apparatus 130, and a communication interface 140. In this embodiment, the storage medium 110 and the processor 120 are both located in the electronic device and are separately disposed. However, it should be understood that the storage medium 110 may be separate from the electronic device and may be accessed by the processor 120 through a bus interface. Alternatively, the storage medium 110 may be integrated into the processor 120, for example, may be a cache and/or general purpose registers.
The live time shift processing apparatus 130 may be understood as the electronic device, or the processor 120 of the electronic device, or may be understood as a software functional module that is independent of the electronic device or the processor 120 and implements the live time shift processing method under the control of the electronic device.
As shown in fig. 10, in one implementation manner, the live time shift processing apparatus 130 may include an obtaining module 131, an obtaining module 132, and a generating module 133. The functions of the functional modules of the live time shift processing apparatus 130 are described in detail below.
The obtaining module 131 is configured to obtain a play request initiated by the terminal device 800, where the play request carries a start time of a play content requested to be played back.
It is understood that the obtaining module 131 can be used to execute the step S110, and for the detailed implementation of the obtaining module 131, reference can be made to the content related to the step S110.
An obtaining module 132, configured to obtain a corresponding playback list according to the start time, where the playback list includes address information of all generated play data starting from the start play data corresponding to the start time.
It is understood that the obtaining module 132 may be configured to perform the step S120, and for a detailed implementation of the obtaining module 132, reference may be made to the content related to the step S120.
The generating module 133 is configured to sequentially extract a preset number of address information from the address information of all the play data included in the playback list to generate a corresponding playlist, and send the playlist to the terminal device 800, so that the terminal device 800 obtains corresponding play content according to the playlist to perform playback.
It is understood that the generating module 133 can be used to execute the step S130, and for the detailed implementation of the generating module 133, reference can be made to the content related to the step S130.
In a possible implementation manner, the generating module 133 may generate the playlist by:
starting to extract a preset number of address information from the address information corresponding to the initial play data from all the play data included in the playback list to generate a corresponding play list, and sending the play list to the terminal device 800;
detecting whether the playing progress of the terminal device 800 meets a preset condition;
when the playing progress of the terminal device 800 meets a preset condition, continuing to extract address information of playing data from the playback list to update the playlist, and sending the updated playlist to the terminal device 800, so that the terminal device 800 obtains corresponding playing content according to the updated playlist to perform playback.
In a possible implementation manner, the generating module 133 may specifically be configured to:
detecting whether the number of the playing data which is not played back by the terminal device 800 in the playing data included in the current playlist is lower than a set number, and if the number of the playing data which is not played back by the terminal device 800 is lower than the set number, determining that the playing progress of the terminal device 800 meets a preset condition.
In a possible implementation manner, the generating module 133 may be configured to update the playlist by:
continuously extracting a preset number of address information from the address information of all the playing data contained in the playback list;
adding the address information of the newly extracted play data to the play list to update the play list.
In a possible implementation manner, the generating module 133 may be further specifically configured to:
the address information of the play data for which the terminal device 800 has completed playback at present is deleted from the play list.
In a possible implementation manner, the generating module 133 may specifically be configured to:
determining play data generated from the reception of the play request to a current time point;
updating the playback list according to the determined address information of the playing data;
a preset number of address information are extracted from the address information of all the play data included in the updated playback list.
In a possible implementation manner, the playing data includes a plurality of video segments, each of the video segments has a corresponding sequence number, and the obtaining module 132 is specifically configured to:
acquiring respective sequence numbers and address information of a plurality of video clips which are generated and stored currently;
obtaining a starting video segment corresponding to the starting time in the plurality of video segments, and obtaining a sequence number of the starting video segment;
determining all subsequent video segments generated from the starting video segment from the plurality of video segments according to the sequence number of the starting video segment;
and generating a playback list according to the address information of the starting video segment and all the video segments.
The description of the processing flow of each module in the device and the interaction flow between the modules may refer to the related description in the above method embodiments, and will not be described in detail here.
Further, an embodiment of the present application also provides a computer-readable storage medium, where a machine-executable instruction is stored in the computer-readable storage medium, and when the machine-executable instruction is executed, the live broadcast time shift processing method provided in any of the above embodiments is implemented.
To sum up, after obtaining the play request initiated by the terminal device 800, the live broadcast time shift processing method, the apparatus, the electronic device, and the readable storage medium according to the embodiment of the present application obtain a corresponding playback list according to the start time of the play content requested to be played back, where the playback list includes address information of all generated play data starting from the start play data corresponding to the start time. On this basis, a preset number of address information are sequentially extracted from the address information of all the play data included in the playback list to generate a corresponding play list, and the corresponding play list is fed back to the terminal device 800, so that the terminal device 800 obtains corresponding play content according to the play list for playback. In the scheme, the playback list obtained by the acquired starting time needing to be played back is extracted for multiple times in sequence, so that the play list with small data volume can be generated. Therefore, when the playing list is refreshed each time, less processing resources are occupied, the time is spent, and the influence on the playing process is avoided.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present application should be covered within the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims (9)
1. A live time shift processing method, the method comprising:
acquiring a play request initiated by terminal equipment, wherein the play request carries the starting time of play content requested to be played back;
obtaining a corresponding playback list according to the starting time, wherein the playback list comprises address information of all generated play data starting from the starting play data corresponding to the starting time;
sequentially extracting a preset amount of address information from the address information of all playing data contained in the playback list to generate a corresponding playing list, and sending the playing list to the terminal equipment so that the terminal equipment can obtain corresponding playing contents according to the playing list for playback;
wherein the step of generating the corresponding playlist comprises:
starting to extract a preset number of address information from the address information corresponding to the initial playing data from all the playing data contained in the playback list to generate a corresponding playing list, sending the playing list to the terminal equipment, and detecting whether the playing progress of the terminal equipment meets a preset condition or not;
and when the playing progress of the terminal equipment meets a preset condition, continuously extracting address information of playing data from the playback list to update the playing list, and sending the updated playing list to the terminal equipment, so that the terminal equipment acquires corresponding playing content according to the updated playing list to play back.
2. The live time shift processing method according to claim 1, wherein the step of detecting whether the playing progress of the terminal device satisfies a preset condition includes:
detecting whether the number of the playing data which are not played back by the terminal equipment in the playing data contained in the current playing list is lower than a set number, and if the number of the playing data which are not played back by the terminal equipment is lower than the set number, judging that the playing progress of the terminal equipment meets a preset condition.
3. The live time-shift processing method as claimed in claim 1, wherein said step of continuing to extract address information of play data from said playback list to update said playlist comprises:
continuously extracting a preset number of address information from the address information of all the playing data contained in the playback list;
adding the address information of the newly extracted play data to the play list to update the play list.
4. The live time shift processing method as claimed in claim 3, wherein the step of continuing to extract address information of play data from the playback list to update the playlist further comprises:
and deleting the address information of the playing data of which the terminal equipment has completed the playback currently from the playing list.
5. The live time shift processing method as claimed in claim 3, wherein the step of continuing to extract a preset number of address information from the address information of all the play data included in the playback list comprises:
determining play data generated from the reception of the play request to a current time point;
updating the playback list according to the determined address information of the playing data;
a preset number of address information are extracted from the address information of all the play data contained in the updated playback list.
6. The live time-shift processing method of claim 1, wherein the playback data includes a plurality of video segments, each of the video segments having a corresponding sequence number;
the step of obtaining the corresponding playback list according to the starting time comprises:
acquiring respective sequence numbers and address information of a plurality of video clips which are generated and stored currently;
obtaining a starting video segment corresponding to the starting time in the plurality of video segments, and obtaining a sequence number of the starting video segment;
determining all subsequent video segments generated from the starting video segment from the plurality of video segments according to the sequence number of the starting video segment;
and generating a playback list according to the address information of the starting video clip and all the video clips.
7. A live time shift processing apparatus, applied to a time shift server, the apparatus comprising:
the system comprises an acquisition module, a playback module and a processing module, wherein the acquisition module is used for acquiring a play request initiated by terminal equipment, and the play request carries the starting time of play content requested to be played back;
an obtaining module, configured to obtain a corresponding playback list according to the start time, where the playback list includes address information of all generated play data starting from start play data corresponding to the start time;
the generating module is used for sequentially extracting a preset number of address information from the address information of all the playing data contained in the playback list to generate a corresponding playing list, and sending the playing list to the terminal equipment so that the terminal equipment can obtain corresponding playing contents according to the playing list for playback;
a generating module, configured to extract a preset number of address information from address information corresponding to the initial play data in all play data included in the playback list to generate a corresponding play list, send the play list to the terminal device, and detect whether the play progress of the terminal device meets a preset condition; and when the playing progress of the terminal equipment meets a preset condition, continuously extracting address information of playing data from the playback list to update the playing list, and sending the updated playing list to the terminal equipment, so that the terminal equipment acquires corresponding playing content according to the updated playing list to play back.
8. An electronic device comprising one or more storage media and one or more processors in communication with the storage media, the one or more storage media storing processor-executable machine-executable instructions that, when executed by the electronic device, are executed by the processors to perform the live timeshift processing method of any of claims 1-6.
9. A computer-readable storage medium having stored thereon machine-executable instructions which, when executed, implement the live time-shift processing method of any one of claims 1-6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011583977.2A CN112788353B (en) | 2020-12-28 | 2020-12-28 | Live broadcast time shifting processing method and device, electronic equipment and readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011583977.2A CN112788353B (en) | 2020-12-28 | 2020-12-28 | Live broadcast time shifting processing method and device, electronic equipment and readable storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112788353A CN112788353A (en) | 2021-05-11 |
CN112788353B true CN112788353B (en) | 2022-06-14 |
Family
ID=75753020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011583977.2A Active CN112788353B (en) | 2020-12-28 | 2020-12-28 | Live broadcast time shifting processing method and device, electronic equipment and readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112788353B (en) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207808A (en) * | 2007-12-06 | 2008-06-25 | 四川长虹电器股份有限公司 | Method and system for downloading and playing based on network embedded type distribution |
CN102130936A (en) * | 2010-08-17 | 2011-07-20 | 华为技术有限公司 | Method and device for supporting time shifting and look back in dynamic hyper text transport protocol (HTTP) streaming transmission scheme |
CN103685264A (en) * | 2013-12-06 | 2014-03-26 | 乐视致新电子科技(天津)有限公司 | Method, client side and system for broadcasting media fragmentations in turn |
CN104104895A (en) * | 2013-04-09 | 2014-10-15 | 杭州海康威视数字技术股份有限公司 | Method for carrying out video playback on video data and hard-disk video recorder |
CN104168516A (en) * | 2014-09-01 | 2014-11-26 | 上海下一代广播电视网应用实验室有限公司 | System and method for achieving program replay on stream media live broadcast platform |
CN106507129A (en) * | 2016-09-28 | 2017-03-15 | 浙江宇视科技有限公司 | A kind of video intelligent back method and equipment |
CN107809647A (en) * | 2017-10-24 | 2018-03-16 | 深圳市创维软件有限公司 | Code check switching method, device and the storage medium of video playback |
CN108769816A (en) * | 2018-04-28 | 2018-11-06 | 腾讯科技(深圳)有限公司 | A kind of video broadcasting method, device and storage medium |
CN109151594A (en) * | 2018-09-27 | 2019-01-04 | 广州虎牙信息科技有限公司 | Direct playing and playback video broadcasting method, device and electronic equipment |
CN109819285A (en) * | 2017-11-21 | 2019-05-28 | 乐蜜有限公司 | A kind of live broadcasting method, device, electronic equipment and storage medium |
CN110113626A (en) * | 2019-05-13 | 2019-08-09 | 北京奇艺世纪科技有限公司 | A kind of method and device playing back live video |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2911214A1 (en) * | 2007-01-08 | 2008-07-11 | Wavestorm Sarl | Digital content e.g. image file, broadcasting method for computer system, involves transmitting address of content, present on site, from server to apparatus according to user profile to allow apparatus to retrieve and broadcast content |
JP6431257B2 (en) * | 2013-10-21 | 2018-11-28 | キヤノン株式会社 | NETWORK SYSTEM, NETWORK DEVICE MANAGEMENT METHOD, NETWORK DEVICE, ITS CONTROL METHOD AND PROGRAM, AND MANAGEMENT SYSTEM |
CN105376612A (en) * | 2014-08-26 | 2016-03-02 | 华为技术有限公司 | Video playing method, media equipment, playing equipment and multimedia system |
US20180352287A1 (en) * | 2017-06-02 | 2018-12-06 | Apple Inc. | Persistent ID for Offline Access to Streamed Media |
-
2020
- 2020-12-28 CN CN202011583977.2A patent/CN112788353B/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207808A (en) * | 2007-12-06 | 2008-06-25 | 四川长虹电器股份有限公司 | Method and system for downloading and playing based on network embedded type distribution |
CN102130936A (en) * | 2010-08-17 | 2011-07-20 | 华为技术有限公司 | Method and device for supporting time shifting and look back in dynamic hyper text transport protocol (HTTP) streaming transmission scheme |
CN104104895A (en) * | 2013-04-09 | 2014-10-15 | 杭州海康威视数字技术股份有限公司 | Method for carrying out video playback on video data and hard-disk video recorder |
CN103685264A (en) * | 2013-12-06 | 2014-03-26 | 乐视致新电子科技(天津)有限公司 | Method, client side and system for broadcasting media fragmentations in turn |
CN104168516A (en) * | 2014-09-01 | 2014-11-26 | 上海下一代广播电视网应用实验室有限公司 | System and method for achieving program replay on stream media live broadcast platform |
CN106507129A (en) * | 2016-09-28 | 2017-03-15 | 浙江宇视科技有限公司 | A kind of video intelligent back method and equipment |
CN107809647A (en) * | 2017-10-24 | 2018-03-16 | 深圳市创维软件有限公司 | Code check switching method, device and the storage medium of video playback |
CN109819285A (en) * | 2017-11-21 | 2019-05-28 | 乐蜜有限公司 | A kind of live broadcasting method, device, electronic equipment and storage medium |
CN108769816A (en) * | 2018-04-28 | 2018-11-06 | 腾讯科技(深圳)有限公司 | A kind of video broadcasting method, device and storage medium |
CN109151594A (en) * | 2018-09-27 | 2019-01-04 | 广州虎牙信息科技有限公司 | Direct playing and playback video broadcasting method, device and electronic equipment |
CN110113626A (en) * | 2019-05-13 | 2019-08-09 | 北京奇艺世纪科技有限公司 | A kind of method and device playing back live video |
Also Published As
Publication number | Publication date |
---|---|
CN112788353A (en) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3120569B1 (en) | Manifest re-assembler for a streaming video channel | |
US9374620B2 (en) | Terminal apparatus, server apparatus, information processing method, program, and interlocked application feed system | |
US10623823B2 (en) | Method, system, and website server for playing website video | |
US9948997B2 (en) | Providing interactivity options for television broadcast content | |
EP3133503A1 (en) | Techniques to consume content and metadata | |
US8886765B2 (en) | System and method for predicitive trick play using adaptive video streaming | |
CN103475932A (en) | Seamless on-line playing method and device of network video and network television system | |
US20230045363A1 (en) | Video playback method and apparatus, computer device, and storage medium | |
CN109120954B (en) | Video message pushing method and device, computer equipment and storage medium | |
US20160308923A1 (en) | Method and system for playing live broadcast streaming media | |
CN108769816B (en) | Video playing method, device and storage medium | |
WO2017107464A1 (en) | Video tracking and playing method and apparatus | |
CN109089169A (en) | Live broadcast room switching method and device and storage medium | |
CN111182331B (en) | Media data slicing method, system and storage medium | |
CN106303585B (en) | Program review method, media server, set top box and program review system | |
CN108777802B (en) | Method and device for caching VR (virtual reality) video | |
US20240340493A1 (en) | Systems and methods for increasing first user subscription | |
US20210258539A1 (en) | Server and program | |
CN112788353B (en) | Live broadcast time shifting processing method and device, electronic equipment and readable storage medium | |
CN110225370B (en) | Timeline control method for personalized presentation of multimedia content | |
CN105979380A (en) | Test broadcasting method and device for multimedia contents on demand | |
CN111698261A (en) | Video playing method, device, equipment and storage medium based on streaming media | |
CN108683926B (en) | Client quit control method, client, server, equipment and medium | |
US20170195704A1 (en) | Apparatus and method for providing vod content based on network load distribution | |
CN105847867A (en) | Multimedia live content piloting method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |