CN114915806A - Video playing method, device and system - Google Patents

Video playing method, device and system Download PDF

Info

Publication number
CN114915806A
CN114915806A CN202110184611.6A CN202110184611A CN114915806A CN 114915806 A CN114915806 A CN 114915806A CN 202110184611 A CN202110184611 A CN 202110184611A CN 114915806 A CN114915806 A CN 114915806A
Authority
CN
China
Prior art keywords
video
index file
index
information
index information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110184611.6A
Other languages
Chinese (zh)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110184611.6A priority Critical patent/CN114915806A/en
Publication of CN114915806A publication Critical patent/CN114915806A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Abstract

A method, a device and a system for playing video are provided, which are helpful for reducing the playing time delay, the method comprises: sending a first index file request comprising video identification to a media server, and receiving a first index file sent by the media server, wherein the first index file comprises first index information and the total duration of video fragments contained in second index information; then, acquiring and playing the video fragments from the media server according to the first index file, and sending a second index file request to the media server, wherein the second index file request comprises the identification of the video and the total duration; the first index information includes information of a video fragment with a preset duration from a first video fragment in a complete index file of the video, and the second index information includes information of a video fragment after the video fragment included in the first index information in the complete index file.

Description

Video playing method, device and system
Technical Field
The present application relates to the field of multimedia technologies, and in particular, to a method, an apparatus, and a system for playing a video.
Background
In the video playing process, the playing terminal usually requests the index file of the video from the media server first, and then requests the video to be sliced and played according to the index file. Therein, the index file of a video typically includes the url of each slice of the video. When the playing time is large, or the duration of each slice is small, the index file is usually large. Therefore, before playing the video, the playing terminal needs to spend a long time downloading the index file, which results in a long playing delay and poor user experience.
Disclosure of Invention
In view of the foregoing, there is a need to provide a method, an apparatus, and a system for playing a video, which are helpful to achieve the effect of reducing the play-out delay in a simple manner, and improve the user experience.
In a first aspect, an embodiment of the present application provides a method for playing a video, which is applied to a playing terminal, and the method includes: sending a first index file request to a media server, wherein the first index file request comprises an identifier of a video; receiving a first index file sent by the media server, wherein the first index file comprises first index information and the total duration of a video frequency included by second index information; then, the video fragments are obtained from the media server and played according to the first index file; sending a second index file request to the media server, wherein the second index file request comprises the total duration of the video fragments and the video identifier, which are included in the second index information; the first index information includes information of a video fragment with a preset duration from a first video fragment in a complete index file of the video, and the second index information includes information of a video fragment after the video fragment included in the first index information in the complete index file.
According to the first aspect of the application, the playing terminal receives the partial index files in the complete index file sent by the media server, so that the playing terminal can acquire and play the video fragments according to the partial index files instead of acquiring and playing the video fragments after downloading all the index files, and therefore the effect of reducing the play-up delay can be achieved in a simple mode, and the user experience is improved.
According to some embodiments of the application, the method further comprises: receiving a second index file sent by the media server, wherein the second index file comprises information of video fragments with preset duration starting from a first fragment of the second index information; the second index file further comprises the total duration of the video fragments included in third index information, and the third index information comprises information of the video fragments after the video fragments included in the second index information in the complete index file; sending a third index file request to the media server, wherein the third index file request comprises the total duration of the video fragments included in the third index information and the identification of the video. Therefore, the playing terminal can acquire the complete index file from the media server.
According to some embodiments of the present application, the first index file further includes the total duration of the video slices included in the second index information, which may be: and the value of the CAN-SKIP-UNTIL of the first index file is the total duration of the video fragments included in the second index information.
According to some embodiments of the present application, the total duration of the video slices included in the second index file request including the second index information may be: the second index file request comprises an HLS-Skip field, and the value of the HLS-Skip field is the total duration of the video slices included in the second index information.
According to some embodiments of the present application, when the video corresponding to the identifier of the video is time-shifted content, the first index file request further includes time-shift duration information; and the time shifting duration information is the time interval from the broadcast starting point to the current broadcast point corresponding to the time shifting operation.
In a second aspect, an embodiment of the present application further provides a method for playing a video, which is applied to a media server, and the method includes: receiving a first index file request sent by a playing terminal, wherein the first index file request comprises video identification; generating a first index file according to the video identifier, and sending the first index file to the playing terminal; the first index file comprises first index information and the total duration of the video fragments contained in the second index information; the first index information comprises information of a video fragment with a preset time length from a first video fragment in a complete index file of the video, and the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file; and receiving a second index file request of the playing terminal, wherein the second index file request comprises the total duration of the video fragments and the video identifier, which are included in the second index information.
According to some embodiments of the application, the method further comprises: sending a second index file to the playing terminal, wherein the second index file comprises information of video fragments with preset duration starting from a first fragment of the second index information; the second index file further includes a total duration of video segments included in third index information, where the third index information includes information of video segments subsequent to a video segment included in the second index information in the complete index file; and receiving a third index file request sent by the play terminal, wherein the third index file request comprises the total duration of the video fragments and the identification of the video, and the total duration of the video fragments comprises the third index information.
According to some embodiments of the present application, the first index file further includes the total duration of the video slices included in the second index information, which may be: and the value of the CAN-SKIP-UNTIL of the first index file is the total duration of the video fragments included by the second index information.
According to some embodiments of the present application, the total duration of the video slices included in the second index file request including the second index information may be: the second index file request comprises an HLS-Skip field, and the value of the HLS-Skip field is the total duration of the video slices included in the second index information.
According to some embodiments of the present application, when a video corresponding to the identifier of the video is time-shifted content, the first index file request further includes a time-shift duration; and the time shifting duration is the time interval from the broadcast starting point to the current broadcast point corresponding to the time shifting operation.
In a third aspect, an embodiment of the present application further provides a playback terminal, where the playback terminal includes at least one processor, a memory, and a communication interface; the at least one processor is coupled with the memory and the communication interface; the memory is configured to store instructions, the processor is configured to execute the instructions, and the communication interface is configured to communicate with a target server under control of the at least one processor; the instructions, when executed by the at least one processor, cause the at least one processor to perform the method of video playback as described in any one of the possible implementations of the first aspect above.
In a fourth aspect, an embodiment of the present application further provides a server comprising at least one processor, a memory, and a communication interface; the at least one processor is coupled with the memory and the communication interface; the memory is used for storing instructions, the processor is used for executing the instructions, and the communication interface is used for communicating with a target playing terminal under the control of the at least one processor; the instructions, when executed by the at least one processor, cause the at least one processor to perform a method of video playback as described in any one of the possible implementations of the second aspect.
In a fifth aspect, an embodiment of the present application further provides a playback terminal, where the playback terminal includes: a transceiving unit, configured to send a first index file request to a media server, where the first index file request includes an identifier of a video; the media server is further configured to receive a first index file sent by the media server, where the first index file includes first index information and a total duration of video segments included in second index information; the first index information comprises information of a video fragment with a preset time length from a first video fragment in a complete index file of the video, the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file, and the video fragment is obtained from a media server according to the first index file; the processing unit is used for playing the video fragments acquired by the transceiving unit; the transceiver unit is further configured to send a second index file request to the media server, where the second index file request includes a total duration of the video segments and the identifier of the video included in the second index information.
In a sixth aspect, an embodiment of the present application further provides a server, where the server includes: the receiving and sending unit is used for receiving a first index file request sent by a playing terminal, wherein the first index file request comprises video identification; the processing unit is used for generating a first index file according to the identification of the video; the first index file comprises first index information and the total duration of the video fragments contained in the second index information; the first index information comprises information of video fragments with preset duration from a first video fragment in a complete index file of the video; the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file; the receiving and sending unit is further configured to send the first index file generated by the processing unit to the playing terminal; and the second index file request is used for receiving a second index file request of the playing terminal, and the second index file request includes the total duration of the video fragments and the video identifier included in the second index information.
In a seventh aspect, an embodiment of the present application further provides a video playing system, where the playing system includes a playing terminal and a server; the playing terminal is configured to execute the method for playing video according to any one of the possible implementations of the first aspect, and the server is configured to execute the method for playing video according to any one of the possible implementations of the second aspect.
In an eighth aspect, an embodiment of the present application further provides a computer-readable storage medium, where the computer-readable storage medium stores a program, where the program causes a computer device to execute the method for playing back a video as described in any one of the possible implementation manners of the first aspect or the second aspect.
In a ninth aspect, an embodiment of the present application further provides a computer program product, including computer executable instructions, stored in a computer readable storage medium; the computer-executable instructions may be read from the computer-readable storage medium by at least one processor of a device, and the execution of the computer-executable instructions by the at least one processor causes the device to perform the method for video playback as described in any one of the possible implementations of the first aspect or the second aspect. For a detailed description of the second aspect to the ninth aspect and various implementations thereof in the present application, reference may be made to the detailed description of the first aspect and various implementations thereof; moreover, for the beneficial effects of the second aspect to the sixth aspect and various implementation manners thereof, reference may be made to beneficial effect analysis in the first aspect and various implementation manners thereof, and details are not described here.
Drawings
Fig. 1 is a schematic view of a video playing system according to an embodiment of the present application.
Fig. 2 is a schematic entity structure diagram of a play terminal according to an embodiment of the present application.
Fig. 3 is a schematic diagram of an entity structure of a media server according to an embodiment of the present application.
Fig. 4 is a flowchart of a method for playing a video according to an embodiment of the present application.
Fig. 5 is a schematic diagram of a program guide according to an embodiment of the present application.
Fig. 6 is a schematic diagram of an operating program provided in an embodiment of the present application.
Fig. 7 is a schematic diagram of another operating program provided in the embodiment of the present application.
Fig. 8 is a schematic diagram of a progress bar provided in an embodiment of the present application.
Fig. 9 is a schematic diagram of an operation progress bar according to an embodiment of the present application.
Fig. 10 is a schematic diagram of a logic structure of a play terminal according to an embodiment of the present application.
Fig. 11 is a schematic logical structure diagram of a server according to an embodiment of the present application.
Detailed Description
In the description of the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or illustrations. Any embodiment or design described herein as "exemplary" or "e.g.," is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, use of the word "exemplary" or "such as" is intended to present concepts related in a concrete fashion.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used in the description of the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. It is to be understood that, in this application, unless otherwise indicated, "plurality" means two or more than two.
In the prior art, a media server may reduce the size of an index file by means of pre-compressing the index file, thereby reducing the start-up delay. However, when there are dynamic parameters (e.g. anti-stealing link parameters) in the url of the segment, the media server cannot pre-compress the index file, and only can perform real-time compression when requested by the playing terminal, and the playing terminal also needs to perform real-time decompression when playing.
Fig. 1 is a schematic diagram of a video playing system according to an embodiment of the present application. As shown in fig. 1, the video playing system 10 includes a playing terminal 20 and a media server 30.
The playing terminal 20 is configured to send a video index file request to the media server 30 according to an operation on the playing terminal 20, receive a partial index file delivered by the media server 30, send a video fragment request to the media server 30 according to the partial index file, receive a video fragment delivered by the media server 30, play the video fragment, and continue to send the video index file request to the media server 30 until a complete index file is received.
The media server 30 is configured to generate an index file according to the index file request, issue a part of the index file to the play terminal 20, obtain video fragments according to the video fragment request, issue the video fragments to the play terminal 20, and continue to issue a part of the index file to the play terminal 20 according to the index file of the video until a complete index file is issued.
Please refer to fig. 2, which is a schematic diagram of a playback terminal according to an embodiment of the present disclosure. The playing terminal 20 may be a television, a combination of a television and a set-top box, a mobile phone, a tablet computer, a personal computer, etc.
The cast terminal 20 includes a memory 21, a processor 22, a display 23 and a communication interface 24. Those skilled in the art will appreciate that the configuration shown in fig. 2 does not constitute a limitation of the cast terminal 20, and that the cast terminal 20 may include more or less components than those shown, or combine some components, or split some components, or arrange different components.
The memory 21 may be used for storing software programs and/or modules/units. The processor 22 implements various functions of the cast terminal 20 by running or executing software programs and/or modules/units stored in the memory 21 and calling data stored in the memory 21. The memory 21 may mainly include a program storage area and a data storage area, where the program storage area may store an operating system, an application program (such as a web browsing function, a sound playing function, an image playing function, etc.) required by at least one function, and the like; the storage data area may store data (such as audio data) created according to the use of the cast terminal 20, and the like. Further, the memory 21 may include non-volatile computer-readable memory, such as a hard disk, a memory, a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), at least one magnetic disk storage device, a Flash memory device, or other non-volatile solid state storage device.
The Processor 22 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component, etc. The processor 22 may be a microprocessor or the processor 22 may be any conventional processor, etc., and the processor 22 is a control center of the cast terminal 20 and connects various parts of the whole cast terminal 20 by various interfaces and lines.
The display 23 may be a liquid crystal display, an organic light emitting display, a flexible display, a plasma display, or the like. The display 23 is used to display television content.
The communication interface 24 may include a standard wired interface, a wireless interface, and the like. The communication interface 24 is used for the play terminal 20 to communicate with the media server 30.
Please refer to fig. 3, which is a schematic diagram of a media server according to an embodiment of the present application. The media server 30 includes a memory 31, a processor 32, and a communication interface 33. Those skilled in the art will appreciate that the configuration shown in fig. 3 does not constitute a limitation of the media server 30, and that the media server 30 may include more or fewer components than shown, or combine certain components, or split certain components, or a different arrangement of components.
The memory 31 may be used for storing software programs and/or modules/units. The processor 32 implements various functions of the media server 30 by running or executing software programs and/or modules/units stored in the memory 31 and calling data stored in the memory 31. The memory 31 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function, and the like; the storage data area may store data (such as audio data, etc.) created according to the use of the media server 30, etc. Further, the memory 31 may include non-volatile computer-readable memory, such as a hard disk, a memory, a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), at least one magnetic disk storage device, a Flash memory device, or other non-volatile solid state storage device.
The Processor 32 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component, etc. The processor 32 may be a microprocessor or the processor 32 may be any conventional processor or the like, and the processor 32 is the control center of the media server 30 and connects the various parts of the entire media server 30 using various interfaces and lines.
The communication interface 33 may include a standard wired interface, a wireless interface, and the like. The communication interface 33 is used for the media server 30 to communicate with the playback terminal 20.
Fig. 4 is a flowchart of a method for playing a video according to an embodiment of the present application. The video playing method is applied to live time-shifted scenes. The video playing method comprises the following steps:
s401: and the playing terminal receives the time shifting operation and determines time shifting duration information corresponding to the time shifting operation.
In this embodiment, the cast terminal may receive a time-shift operation of a user, a robot, or the like. The following is a brief description of the user as an example. For convenience of description, it is assumed that a channel currently watched by a user is a channel a. When the user wants to view the time-shifted content of the channel a, the time-shifted content can be viewed by performing a time-shift operation on the cast terminal. The time-shifted content is content of the channel a at a time before a current live broadcast point, and the current live broadcast point represents a time point currently being live broadcast.
Specifically, the user may first initiate the time shift request by operating a certain key preset on the remote controller, the mobile phone or the tablet, for example, the user presses a "channel time shift" key on the remote controller. Correspondingly, after receiving the key event of the user, the playing terminal knows that the user wants to watch the time-shifted content of the channel A and requests the time-shifted program list of the channel A from the media server; and after receiving the time-shifting program list of the channel A issued by the media server, presenting the program list to the user. As shown in fig. 5, the program information may include the title, time period, etc. of the tv program. The titles of the television programs may be, for example, video 1, video 2, and video 3. The time period may include, for example, a play start time and an end time of the video. It will be appreciated that fig. 5 is an example of a program guide that may also include channels, etc. The content and form of the program guide are not limited in this application.
After the user sees the time-shifted program list displayed on the playing terminal, the user can further select a certain time-shifted program which the user wants to watch through a remote controller and the like. For example, in fig. 6, the user may select to view video 2 by pressing the direction key left on the remote control to move the focus from video 3 to video 2, which is currently playing. In fig. 7, the user may select to view video 1 by pressing the direction key left on the remote control to move the focus from video 3, which is currently playing, to video 1.
Correspondingly, after receiving the time-shifting program selected by the user, the playing terminal determines the time-shifting duration information corresponding to the time-shifting operation according to the time-shifting program selected by the user. The time shift duration information refers to a time difference from a current live point to a start point of the video selected by the user, as shown in fig. 6. In fig. 6, the video currently being played is video 3, and the current live broadcast point is 9: 20, the starting point of the selected video 2 is 8: 00, the time-shift duration information is the current live broadcast point 9: 20 to the starting point 8 of the user-selected video: time difference between 00, i.e. 1 hour 20 minutes. It may be understood that, when the time shift duration corresponding to the time shift operation is greater than the maximum time shift duration supported by the channel, it may be determined that the time shift duration information is the maximum time shift duration supported by the channel, as shown in fig. 7. In fig. 7, the current live point is 9: 20, the starting point of the selected video 1 is 7: 00, the time shift duration corresponding to the time shift operation is 2 hours and 20 minutes, and is greater than the maximum time shift duration supported by the channel by 2 hours, it may be determined that the time shift duration information is 2 hours.
In addition, the user can select time-shifted content desired to be viewed by operating the live progress bar. In particular, the user may first initiate the time-shift request by operating a key on the remote control, cell phone, or tablet, e.g., the user presses an "ok" key on the remote control. Correspondingly, after receiving the key event of the user, the playing terminal knows that the user wants to pause, watches the time-shifted content of the channel A, requests the live progress bar of the channel A from the media server, and presents the live progress bar to the user after receiving the live progress bar of the channel A sent by the media server. As shown in fig. 8, the live progress bar 610 is displayed below the video playing interface 620. A progress slider 630 may also be displayed on the live progress bar 610. It is understood that fig. 8 is an example of a live progress bar. The content and form of the live progress bar are not limited in the present application.
After the user sees the live progress bar displayed on the playing terminal, the user can further select the time of a certain time-shifting program which the user wants to watch through a remote controller and the like. For example, in fig. 9, the user may press the left and right direction keys on the remote controller to drag the progress slider to select the video time the user wants to watch. At this time, the live progress bar 610 may also display a poster picture 640 of a play point corresponding to the progress slider 630. The poster picture 640 can be located above or below the live progress bar 610.
Correspondingly, after receiving the time-shifting program selected by the user, the playing terminal determines the time-shifting duration information corresponding to the time-shifting operation according to the time of the time-shifting program selected by the user. The time shifting duration information refers to a time difference from a current live broadcast point to a time selected by a user. As shown in fig. 9. In fig. 9, the current live point is 11: 10, the time selected by the user is 10: 00, the time-shift duration information refers to the time-shift duration information from the current live broadcast point 11: 10 to user-selected time 10: time difference between 00, i.e. 1 hour 10 minutes. It may be understood that, when the time shift duration corresponding to the time shift operation is greater than the maximum time shift duration supported by the channel, it may be determined that the time shift duration information is the maximum time shift duration supported by the channel.
S402: and the playing terminal sends a first index file request to a media server, wherein the first index file request comprises the ID of the channel A and time shifting duration information corresponding to the time shifting operation.
Specifically, the playing terminal sends a first index file request to the media server, where the first index file request is used to request the media server for an index file of the time-shifted program selected by the user. The time shifting duration information carried in the first index file request is used for making the media server to clarify the starting time point of the time shifting program selected by the user, so that the media server can generate a corresponding index file according to the starting time point. The ID of the channel a is the identification of the video. The video corresponding to the ID of the channel a is time-shifted content, and at this time, the first index file request further includes time-shift duration information.
In a specific implementation, the time-shifting duration information of the live time-shifting can be carried through a Skip Boundary field in the HLS protocol. Taking fig. 6 as an example, if the time shift program selected by the user is video 2, the ID of the channel a where the video 2 is located is channel 1, and the time shift duration information corresponding to the time shift operation is 4800 seconds, the first index file request may be: http:// channel 1/xxx/xx.m3u8? HLS Skip 4800, i.e. the value of Skip Boundary field is 4800. The Skip Boundary is a variable and needs to be filled according to the information of the time shifting duration of live time shifting. For example, in the embodiment, the time shift duration of the live time shift is 4800 seconds, and the value of the Skip Boundary field may be filled with 4800.
S403: and the media server generates a complete index file of the video according to the first index file request.
In this embodiment, the requesting, according to the first index file, to generate the complete index file of the video includes:
determining the content of a time-shifted video according to the ID of the channel A in the first index file request and the time-shifting duration information;
obtaining video slices of the content of the time-shifted video;
and generating a complete index file of the video according to the video fragments.
In this embodiment, the determining the content of the time-shifted video according to the ID of the channel a and the time-shift duration information in the first index file request includes: and determining the starting time point of the time-shifted program according to the ID of the channel A and the time-shifting duration information in the first index file request, and searching the content of the time-shifted video in a memory or a storage server of the media server according to the starting time point of the time-shifted program. The video slices are divided in advance according to a preset time interval. For example, the predetermined time interval may be 2 to 10 seconds. Obviously, the preset time interval can be modified to other values as required. Then, the duration of each video slice is the preset time interval. The video fragments are pre-divided before the first index file request is received, and the media server directly acquires the video fragments when receiving the first index file request. The sequence number of the video fragment is generated from small to large according to the playing time sequence. The first video slice is closest in time to the start-point.
S404: and if the complete index file of the video is larger than a preset value, the media server generates a first index file according to a preset time length, wherein the first index file comprises first index information and the total time length of the video fragments, which is included by the second index information.
The first index information comprises information of video fragments with preset duration from the first video fragment in the complete index file of the video. For example, taking the time length of each video segment as 10 seconds as an example, if the time length of live time shift is 4800 seconds, the information of 480 video segments is contained in the complete index file; if the preset time duration is 600 seconds, the first index information includes information of 60 video slices starting from a first video slice in the 480 video slices.
The second index information refers to information of a video slice after the video slice included in the first index information in the complete index file, and as in the foregoing example, if the complete index file includes information of 480 video slices, and the first index information includes information of 60 slices from the first video slice, the second index information includes information of 420 video slices in total from the 61 st video slice to the last video slice in the complete index file, and the total duration of the video slices included in the second index information is 4200 seconds. The total duration of the video fragments included in the second index information is used for informing the playing terminal of the total duration of the information of the video fragments not delivered by the media server, so that the playing terminal can subsequently request the index file including the second index information according to the information.
Taking HLS protocol as an example, writing the total duration of the video slices included in the second index information into the first index file includes: and setting the value of the CAN-SKIP-UNTIL of the first index file as the total duration of the video fragments included in the second index information. Specifically, a tag EXT-X-SERVER-CONTROL is added to the m3u8 index file, which is specifically defined as follows: EXT-X-SERVER-CONTROL: the CAN-SKIP-explicit is the total duration of the video slices included in the second index information. For example, CAN-SKIP-UNTIL is 4200 in the above embodiment.
Specific examples are as follows:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:3
#EXT-X-SERVER-CONTROL:CAN-SKIP-UNTIL=4200
#EXT-X-SKIP:SKIPPED-SEGMENTS=60
wherein, in the EXT-X-SERVER-CONTROL, CAN-SKIP-un 4200 indicates that the index file including the information of the 4200 seconds of video segment still remains in the complete index file of the video and is not sent to the play terminal. EXT-X-SKIP: skip ped-segment 60 indicates that the sequence number of the last video segment in the first index file is 60.
S405: and the media server sends the first index file to the playing terminal.
S406: and the playing terminal sends a video slicing request to the media server according to the first index file.
In this embodiment, the playing terminal sends a video slicing request to the media server according to the information of the video slicing with the preset duration from the first video slicing in the first index file. The video slicing request comprises information of video slicing with preset duration starting from the first video slicing. The information of the video fragments with the preset duration from the first video fragment included in the video fragment request can be used for the media server to determine the video fragments requested by the user, so that the media server can issue the video fragments.
S407: and the media server sends the video fragment to the playing terminal according to the video fragment request.
S408: and the playing terminal plays the video fragment.
Therefore, in this embodiment, the playing terminal can download the video segments and start video playing only by needing a part of the index file, and does not need all the index files, thereby improving the speed of starting playing of live video.
S409: and the playing terminal sends a second index file request to the media server, wherein the second index file request comprises the ID of the channel A and the total duration of the video fragments which are included by the second index information.
And the playing terminal sends a second index file request to the media server, wherein the second index file request is used for requesting the media server for the content which is not delivered yet in the time-shifting program selected by the user. The second index information carried in the second index file request comprises the total duration of the video fragments, so that the media server can clearly determine the starting time point of the time-shifted program which is not yet issued, and the media server can generate a corresponding index file according to the starting time point. In the above embodiment, the second index file request may be: http:// channel 1/xxx/xx.m3u8? 4200 is called "HLS _ skip".
In this embodiment, the interval between the sending of the second index file request by the playback terminal to the media server and the sending of the first index file request by the playback terminal to the media server is a preset duration. The preset duration may be one video slicing duration, the preset duration may also be two video slicing durations, and the like.
S410: and the media server generates a second index file according to the second index file request, wherein the second index file comprises the information of the video fragments with preset time length from the first video fragment of the second index information.
In this embodiment, the second index information includes information of the 61 st video slice to the last video slice in the complete index file, that is, 420 video slices in total; if the preset time duration is 600 seconds, the second index file includes information of video slices with a time duration of 600 seconds from the 61 st video slice, that is, information of video slices from the 61 st to the 120 th video slices.
In the embodiment, since the media server still does not send the complete index file to the play terminal after sending the second index file, the second index file further includes the total duration of the video slices included in the third index information, where the third index information refers to information of the video slices after the video slice included in the second index information in the complete index file, for example, in the example, the complete index file includes information of 480 video slices, the last video slice in the second index information is the 120 th video slice, the third index information includes information of the 121 th video slice to the last video slice in the 480 video slices, that is, information of 360 video slices in total, the total duration of the video slices included in the third index information is the total duration of the 360 video slices, i.e., 3600 seconds.
The process of writing the total duration of the video segments included in the third index information into the second index file may refer to the process of writing the total duration of the video segments included in the second index information into the first index file, which is not described herein again.
S411: and the media server sends the second index file to the playing terminal.
It is understood that, after receiving the second index file, the playing terminal, on the one hand, may obtain the video fragment from the second index file to the media server and play the video fragment, similarly to the process of S406-S408 described above.
On the other hand, since the total duration of the video segments included in the third index information included in the second index file is used to indicate to the playing terminal that the currently corresponding time-shifted complete index file is not sent completely, the index file request is also continuously sent to the media server. In the embodiment, the playing terminal finds that the second index file further includes the total duration of the video segments included in the third index information, and therefore knows that there is an index file to be requested, and then, according to a process similar to the above S409, sends a third index file request to the media server to request the third index information. Accordingly, the media server also generates and transmits a third index file to the play terminal, similar to S410-S411.
It is understood that the media server and the playing terminal will continue to perform the above-mentioned process until the time-shift end condition is satisfied, for example, the playing terminal receives a playing operation that the user quits the time-shift. The time shift may be triggered by other factors, and the application is not limited in this respect.
It can be understood that, if the total duration of all the video slices included in the second index information does not exceed the preset duration, the second index file includes all the contents of the second index information. In this case, since the media server has already transmitted the complete index file of the current time shift (i.e. the index file corresponding to the content between the time-shifted broadcast point and the current live broadcast point) to the play terminal, the second index file does not include the total duration of the video clips included in the third index information. Accordingly, when the playing terminal receives such an index file, it will understand that the currently time-shifted complete index file has been received, and then periodically request the live index file.
In an actual situation, in the process of processing the time shift operation, if the playing terminal receives the time shift operation again and the index file corresponding to the start point of the time shift operation does not exist, the playing terminal and the media server may execute the steps of S401 to S411 again.
It can be understood that, in the time-shift scenario, if the complete index file of the video corresponding to the time-shift operation is smaller than the preset value, the media server directly sends the complete index file to the play terminal, instead of including the total duration of the video segments included in the second index information in the sent complete index file.
The method for playing the video shown in fig. 4 can be applied not only to scenes of live broadcast time shift, but also to scenes of on-demand broadcast. The on-demand scenes may include scenes that are on-demand and played from the beginning of the video and scenes that are on-demand and played from the bookmark. These two scenarios are briefly described below.
In the on-demand and playing from the beginning of the video, the difference from the above in the live time-shifted scenario is that:
when the playing terminal starts, the playing terminal receives the on-demand operation, and time-shifting duration information is not required to be determined when the on-demand operation is received; when the play terminal sends a first index file request to a media server, where the first index file request includes an ID of a video B, such as VOD1, and the first index file request does not need to include time shift duration information, at this time, the first index file request requests an index file of a video selected by a user, and the first index file request may be represented in the following URL form, for example: http:// VID 1/xxx/xx.m3u8? A step A; when the media server searches videos in the memory or the storage server of the media server, the video server searches videos on demand in the memory or the storage server of the media server according to the ID of the video B, and at the moment, the video fragment is not closest to the starting point in time but closest to the start of the videos. When the media server generates a first index file, the information of the video fragment contained in the complete index file is determined according to the duration of the video B. When the playing terminal sends a second index file request to the media server, the second index file request includes the ID of the video B, and the second index file request may be, for example: http:// VID 1/xxx/xx.m3u8? 4200 is called "HLS _ skip". The condition of ending playing in the on-demand scene may be that the playing terminal receives an operation that the user quits playing, or that the on-demand video playing is ended, and the like. For other specific implementation manners in the on-demand scenario, reference may be made to the description in the live scenario, and details are not repeated here.
In the on-demand scenario and the playback starts from the bookmark, the difference from the above scenario in live time shift is that:
when the video on demand operation is received, the playing terminal receives the video on demand operation, the video on demand operation comprises the operation on the video bookmark, and the video residual playing time length is determined when the video on demand operation is received. When the play terminal sends a first index file request to the media server, where the first index file request includes an ID of video B, such as VOD1, and the first index file request does not need to include time shift duration information, but includes the remaining play duration of video B, the first index file request may be represented in the form of a URL, for example: http:// VID 1/xxx/xx.m3u8? HLS skip 4800. When the media server searches videos in a memory or a storage server of the media server, a starting time point is determined according to the ID of the video B and the remaining playing time of the video B, and then the videos on demand are searched in the memory or the storage server of the media server, and at the moment, the video clips are not closest to the starting point in time but closest to the playing progress of the video bookmark record. When the media server generates a first index file, the information of the video fragments contained in the complete index file is determined according to the remaining playing time of the video B. When the playing terminal sends a second index file request to the media server, the second index file request includes the ID of the video B, and the second index file request may be, for example: http:// VID1/xxx/xx. m3u 8? HLS _ skip 4200.
Therefore, under the two on-demand scenes, the playing terminal can request the corresponding fragment playing video only by receiving part of the index file of the on-demand video instead of requesting the fragment playing after receiving the complete index file, so that the video on-demand playing speed can be increased, and the playing delay can be reduced.
Fig. 10 is a schematic diagram of a logic structure of a play terminal according to an embodiment of the present application. The broadcast terminal 100 shown in fig. 10 includes a transceiving unit 1001 and a processing unit 1002.
The transceiving unit 1001 is configured to send a first index file request to a media server, where the first index file request includes an identifier of a video; the media server is further configured to receive a first index file sent by the media server, where the first index file includes first index information and a total duration of video segments included in second index information; the first index information comprises information of a video fragment with a preset time length from a first video fragment in a complete index file of the video, the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file, and the video fragment is obtained from a media server according to the first index file;
the processing unit 1002 is configured to play the video segment acquired by the transceiving unit 1001;
the transceiving unit 1001 is further configured to send a second index file request to the media server, where the second index file request includes the total duration of the video segments and the identifier of the video included in the second index information.
Optionally, the transceiver 1001 is configured to receive a second index file sent by the media server, where the second index file includes information of a video segment with a preset duration starting from a first segment of the second index information; the second index file further includes a total duration of video segments included in third index information, where the third index information includes information of video segments subsequent to a video segment included in the second index information in the complete index file; and the server is further configured to send a third index file request to the media server, where the third index file request includes the total duration of the video clips included in the third index information and the identifier of the video.
Optionally, the first index file includes a total duration of the video segments included in the second index information, and includes: and the value of the CAN-SKIP-UNTIL of the first index file is the total duration of the video fragments included in the second index information.
Optionally, the requesting, by the second index file, a total duration of the video segments included in the second index information includes: the second index file request comprises an HLS-Skip field, and the value of the HLS-Skip field is the total duration of the video slices included in the second index information.
Optionally, when the video corresponding to the identifier of the video is time-shifted content, the first index file request further includes time-shift duration information; and the time shifting duration information is the time interval from the broadcast starting point to the current broadcast point corresponding to the time shifting operation.
The cast terminal 100 described in the embodiment of the present invention may be used to implement the operations executed by the cast terminal in the video playing method.
Fig. 11 is a schematic diagram of a logic structure of a media server according to an embodiment of the present application. The media server 110 shown in fig. 11 includes a transceiving unit 1101 and a processing unit 1102.
The transceiving unit 1101 is configured to receive a first index file request sent by a play terminal, where the first index file request includes an identifier of a video;
the processing unit 1102 is configured to generate a first index file according to the identifier of the video; the first index file comprises first index information and the total duration of the video fragments contained in the second index information; the first index information comprises information of video fragments with preset duration from a first video fragment in a complete index file of the video; the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file;
the transceiving unit 1101 is further configured to send the first index file generated by the processing unit 1102 to the play terminal; and the second index file request is used for receiving a second index file request of the playing terminal, and the second index file request includes the total duration of the video fragments and the video identifier included in the second index information.
Optionally, the transceiver unit 1101 is configured to send a second index file to the playback terminal, where the second index file includes information of video segments of a preset duration starting from a first segment of the second index information; the second index file further includes a total duration of video segments included in third index information, where the third index information includes information of video segments subsequent to a video segment included in the second index information in the complete index file; and the third index file request is further used for receiving a third index file request sent by the play terminal, where the third index file request includes the total duration of the video segments included in the third index information and the identifier of the video.
Optionally, the first index file further includes a total duration of the video slices included in the second index information, including: and the value of the CAN-SKIP-UNTIL of the first index file is the total duration of the video fragments included by the second index information.
Optionally, the requesting, by the second index file, the total duration of the video slices included in the second index information includes: the second index file request comprises an HLS-Skip field, and the value of the HLS-Skip field is the total duration of the video slices included in the second index information.
Optionally, when the video corresponding to the identifier of the video is time-shifted content, the first index file request further includes a time-shift duration; and the time shifting duration is the time interval from the broadcasting start point to the current live broadcasting point corresponding to the time shifting operation.
The media server 110 described in the embodiment of the present invention may be used to implement the operations performed by the media server in the above-described video playing method.
In addition to the above methods and apparatuses, an embodiment of the present application also provides a computer-readable storage medium storing a program that causes a computer apparatus to execute the method of video playback illustrated in fig. 4.
A computer program product comprising computer executable instructions stored in a computer readable storage medium; the computer-executable instructions may be read from the computer-readable storage medium by at least one processor of a device, and execution of the computer-executable instructions by the at least one processor causes the device to implement the method for video playback shown in fig. 4.
The playing terminal can request the media server for the index file, obtain a part of index files in the complete index file from the media server, obtain and play the video fragments from the media server according to the part of index files, and then request the rest of index files from the media server, and can play the video fragments only by the part of index files, so that the play-up delay caused by overlarge index files is avoided, the effect of reducing the play-up delay can be achieved in a simple mode, and the user experience is improved.
The media server can receive an index file request sent by a playing terminal, generate and send a part of index files in a complete index file to the playing terminal, receive requests for requesting the rest of index files, and send the part of index files to the playing terminal, so that the playing terminal can play the part of index files only, the play delay caused by overlarge index files is avoided, the effect of reducing the play delay can be achieved in a simple mode, and the user experience is improved.
Through the above description of the embodiments, those skilled in the art will clearly understand that the present application can be implemented by software plus necessary general-purpose hardware, and certainly can also be implemented by special-purpose hardware including special-purpose integrated circuits, special-purpose CPUs, special-purpose memories, special-purpose components and the like. Generally, functions performed by computer programs can be easily implemented by corresponding hardware, and specific hardware structures for implementing the same functions may be various, such as analog circuits, digital circuits, or dedicated circuits. However, for the present application, the implementation of a software program is more preferable. Based on such understanding, the technical solutions of the present application may be substantially embodied in the form of a software product, which is stored in a readable storage medium, such as a floppy disk, a usb disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk of a computer, and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device) to execute the methods described in the embodiments of the present application.
In the above embodiments, all or part of the implementation may be realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product.
The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can store or a data storage device, such as a server, a data center, etc., that is integrated with one or more available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
Finally, it should be noted that the above embodiments are only used for illustrating the technical solutions of the present application and not for limiting, and although the present application is described in detail with reference to the preferred embodiments, it should be understood by those skilled in the art that modifications or equivalent substitutions can be made on the technical solutions of the present application without departing from the spirit and scope of the technical solutions of the present application.

Claims (17)

1. A video playing method is applied to a playing terminal, and is characterized by comprising the following steps:
sending a first index file request to a media server, wherein the first index file request comprises an identifier of a video;
receiving a first index file sent by the media server, wherein the first index file comprises first index information and the total duration of video fragments included in second index information; the first index information comprises information of a video fragment with a preset time length from a first video fragment in a complete index file of the video, and the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file;
acquiring and playing the video fragment from the media server according to the first index file;
and sending a second index file request to the media server, wherein the second index file request comprises the total duration of the video fragments and the identification of the video, which are included in the second index information.
2. The method of claim 1, wherein the method further comprises:
receiving a second index file sent by the media server, wherein the second index file comprises information of video fragments with preset duration starting from a first fragment of the second index information; the second index file further comprises the total duration of the video fragments included in third index information, and the third index information comprises information of the video fragments after the video fragments included in the second index information in the complete index file;
sending a third index file request to the media server, wherein the third index file request comprises the total duration of the video fragments and the identification of the video, and the total duration of the video fragments is included in the third index information.
3. The method of claim 1, wherein the first index file further comprises a total duration of the video slices included in the second index information, comprising:
and the value of the CAN-SKIP-UNTIL of the first index file is the total duration of the video fragments included in the second index information.
4. The method according to any of claims 1 to 3, wherein the second index file request comprises a total duration of the video slices included in the second index information, and comprises:
the second index file request comprises an HLS-Skip field, and the value of the HLS-Skip field is the total duration of the video slices included in the second index information.
5. The method of claim 1 or 2, wherein:
when the video corresponding to the video identifier is time-shifted content, the first index file request further includes time-shift duration information; and the time shifting duration information is the time interval from the broadcast starting point to the current broadcast point corresponding to the time shifting operation.
6. A video playing method applied to a media server is characterized by comprising the following steps:
receiving a first index file request sent by a playing terminal, wherein the first index file request comprises video identification;
generating a first index file according to the identification of the video, and sending the first index file to the playing terminal; the first index file comprises first index information and the total duration of the video fragments contained in the second index information; the first index information comprises information of video fragments with preset duration from a first video fragment in a complete index file of the video; the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file;
and receiving a second index file request of the playing terminal, wherein the second index file request comprises the total duration of the video fragments and the video identifier, which are included in the second index information.
7. The method of claim 6, wherein the method further comprises:
sending a second index file to the playing terminal, wherein the second index file comprises information of video fragments with preset duration starting from a first fragment of the second index information; the second index file further includes a total duration of video segments included in third index information, where the third index information includes information of video segments subsequent to a video segment included in the second index information in the complete index file;
and receiving a third index file request sent by the playing terminal, wherein the third index file request comprises the total duration of the video fragments and the video identifier included in the third index information.
8. The method of claim 6, wherein the first index file further comprises a total duration of the video slices included in the second index information, comprising:
and the value of the CAN-SKIP-UNTIL of the first index file is the total duration of the video fragments included by the second index information.
9. The method of any of claims 6 to 8, wherein the second index file request includes a total duration of the video slices included in the second index information, and comprises:
the second index file request comprises an HLS-Skip field, and the value of the HLS-Skip field is the total duration of the video slices included in the second index information.
10. The method of claim 6 or 7,
when the video corresponding to the video identifier is time-shifted content, the first index file request further includes time-shift duration; and the time shifting duration is the time interval from the broadcast starting point to the current broadcast point corresponding to the time shifting operation.
11. A cast terminal, characterized in that the cast terminal comprises at least one processor, a memory and a communication interface;
the at least one processor is coupled with the memory and the communication interface;
the memory is configured to store instructions, the processor is configured to execute the instructions, and the communication interface is configured to communicate with a target server under control of the at least one processor;
the instructions, when executed by the at least one processor, cause the at least one processor to perform a method of video playback as claimed in any one of claims 1 to 5.
12. A server, characterized in that the server comprises at least one processor, a memory, and a communication interface;
the at least one processor is coupled with the memory and the communication interface;
the memory is used for storing instructions, the processor is used for executing the instructions, and the communication interface is used for communicating with a target playing terminal under the control of the at least one processor;
the instructions, when executed by the at least one processor, cause the at least one processor to perform a method of video playback as claimed in any one of claims 6 to 10.
13. A cast terminal, characterized in that the cast terminal comprises:
the receiving and sending unit is used for sending a first index file request to the media server, wherein the first index file request comprises the identification of the video; the media server is further configured to receive a first index file sent by the media server, where the first index file includes first index information and a total duration of video segments included in second index information; the first index information comprises information of a video fragment with a preset time length from a first video fragment in a complete index file of the video, the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file, and the video fragment is obtained from a media server according to the first index file;
the processing unit is used for playing the video fragments acquired by the transceiving unit;
the transceiving unit is further configured to send a second index file request to the media server, where the second index file request includes the total duration of the video segments and the identifier of the video included in the second index information.
14. A server, characterized in that the server comprises:
the receiving and sending unit is used for receiving a first index file request sent by a playing terminal, wherein the first index file request comprises video identification;
the processing unit is used for generating a first index file according to the identification of the video; the first index file comprises first index information and the total duration of the video fragments contained in the second index information; the first index information comprises information of video fragments with preset duration from a first video fragment in a complete index file of the video; the second index information comprises information of a video fragment after the video fragment included in the first index information in the complete index file;
the receiving and sending unit is further configured to send the first index file generated by the processing unit to the play terminal; and the second index file request is used for receiving a second index file request of the playing terminal, and the second index file request comprises the total duration of the video fragments and the identification of the video, which are included in the second index information.
15. A video playing system is characterized in that the playing system comprises a playing terminal and a server;
the playing terminal is used for executing the video playing method of any claim 1 to 5, and the server is used for executing the video playing method of any claim 6 to 10.
16. A computer-readable storage medium characterized in that the computer-readable storage medium stores a program that causes a computer device to execute the method of video playback according to any one of claims 1 to 10.
17. A computer program product, comprising computer executable instructions stored in a computer readable storage medium; the computer-executable instructions may be read from the computer-readable storage medium by at least one processor of a device, execution of which by the at least one processor causes the device to perform the method of video playback of any of claims 1 to 10.
CN202110184611.6A 2021-02-08 2021-02-08 Video playing method, device and system Pending CN114915806A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110184611.6A CN114915806A (en) 2021-02-08 2021-02-08 Video playing method, device and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110184611.6A CN114915806A (en) 2021-02-08 2021-02-08 Video playing method, device and system

Publications (1)

Publication Number Publication Date
CN114915806A true CN114915806A (en) 2022-08-16

Family

ID=82762200

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110184611.6A Pending CN114915806A (en) 2021-02-08 2021-02-08 Video playing method, device and system

Country Status (1)

Country Link
CN (1) CN114915806A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116567353A (en) * 2023-07-10 2023-08-08 湖南快乐阳光互动娱乐传媒有限公司 Video delivery method and device, storage medium and electronic equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116567353A (en) * 2023-07-10 2023-08-08 湖南快乐阳光互动娱乐传媒有限公司 Video delivery method and device, storage medium and electronic equipment
CN116567353B (en) * 2023-07-10 2023-09-12 湖南快乐阳光互动娱乐传媒有限公司 Video delivery method and device, storage medium and electronic equipment

Similar Documents

Publication Publication Date Title
US20220159349A1 (en) Methods and apparatus for presenting advertisements during playback of recorded television content
US11089373B2 (en) Seek with thumbnail generation and display during placeshifting session
JP5668512B2 (en) Information processing apparatus and information processing method
US9860613B2 (en) Apparatus, systems and methods for presenting highlights of a media content event
US11457171B2 (en) Network storage device and method
KR101769802B1 (en) Smart catch-up for media content viewing
RU2628108C2 (en) Method of providing selection of video material episode and device for this
CN107690073B (en) Video live broadcast method and video live broadcast server
WO2018111372A1 (en) On-demand video surfing
US20140282262A1 (en) Devices and methods for providing navigation images associated with adaptive bit rate video content
US8886765B2 (en) System and method for predicitive trick play using adaptive video streaming
US9143835B2 (en) Preview and playback method of video streams and system thereof
US10277927B2 (en) Movie package file format
WO2017092327A1 (en) Playing method and apparatus
EP2924998A1 (en) Method, apparatus and system for acquiring playback data stream of real-time video communication
CN103686245A (en) Video-on-demand and live broadcasting switching method and device based on HLS protocol
CN109756749A (en) Video data handling procedure, device, server and storage medium
JP7431329B2 (en) Video processing methods, apparatus, computer devices and computer programs
US20210320957A1 (en) Method of requesting video, computing device, and computer-program product
CN113329267A (en) Video playing method and device, terminal equipment and storage medium
CN114915806A (en) Video playing method, device and system
US9560408B2 (en) Tracking and displaying popular media content
CN104661041A (en) Live broadcast time shift positioning method, server, terminal and communication system
EP3320686A1 (en) Enhanced restart tv
CN110677736B (en) HLS on-demand fast playing method and system

Legal Events

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