CN110113655B - Video playing method and device and user terminal - Google Patents

Video playing method and device and user terminal Download PDF

Info

Publication number
CN110113655B
CN110113655B CN201910368594.4A CN201910368594A CN110113655B CN 110113655 B CN110113655 B CN 110113655B CN 201910368594 A CN201910368594 A CN 201910368594A CN 110113655 B CN110113655 B CN 110113655B
Authority
CN
China
Prior art keywords
video
data
played
key frame
media 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.)
Active
Application number
CN201910368594.4A
Other languages
Chinese (zh)
Other versions
CN110113655A (en
Inventor
谭在龙
刘旭
杨柳青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201910368594.4A priority Critical patent/CN110113655B/en
Publication of CN110113655A publication Critical patent/CN110113655A/en
Application granted granted Critical
Publication of CN110113655B publication Critical patent/CN110113655B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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/43Processing 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-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

Abstract

The embodiment of the invention provides a video playing method, a video playing device and a user terminal, which relate to the technical field of network communication, wherein the method is applied to the user terminal and comprises the following steps: downloading media information data of a video to be played from a server, wherein the media information data comprises a key frame list and the size of the media information data, and the key frame list comprises first offsets of all key frames in the video to be played in a video file; updating the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file; and downloading the original video data of the video to be played from the server, and playing the downloaded original video data according to the new key frame list. The invention adjusts the downloading sequence of the sub-files in the video file, thereby realizing the downloading and real-time playing of the video.

Description

Video playing method and device and user terminal
Technical Field
The present invention relates to the field of network communication technologies, and in particular, to a method and an apparatus for playing a video, and a user terminal.
Background
Currently, data of each video is generally stored in a server in the form of a video file, where the video file contains original video data of the video and media information data, and the media information data includes data describing the video file.
In the prior art, when a user terminal sends a video-on-demand request to a server, the server transcodes an original video data video file according to media information data in a video file stored by the server to obtain a video file which can be directly played by the user terminal, and then transmits the video file to the user terminal.
The inventor finds that the prior art at least has the following problems in the process of implementing the invention:
when a user requests to play at a user terminal, the server needs to transcode all original video data of the video, and then transmits the video file to the user terminal after generating a video file capable of being directly played. That is, the user terminal needs to wait for the server to complete transcoding of all original video data, and then can acquire a video file capable of being directly played and play the video file, and the prior art cannot play the video in real time.
Disclosure of Invention
The embodiment of the invention aims to provide a video playing method, a video playing device and a user terminal so as to realize real-time playing of videos. The specific technical scheme is as follows:
in a first aspect, a method for playing a video is provided, where the method is applied to a user terminal, and the method includes:
downloading media information data of a video to be played from a server, wherein the media information data comprises a key frame list and the size of the media information data, the key frame list comprises first offset of each key frame in the video to be played in a video file, and the video file comprises original video data of the video to be played and the media information data of the video to be played;
updating the first offset of the key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file, wherein the new key frame list contains the updated first offset of each key frame in the video to be played;
and downloading the original video data of the video to be played from the server, and playing the downloaded original video data according to the new key frame list.
Optionally, before the step of downloading the media information data of the video to be played from the server, the method further includes:
receiving a playing progress setting instruction input by a user, wherein the playing progress setting instruction comprises: the identifier of the video to be played and the target playing timestamp;
judging whether media information data of the video to be played and target original video data are stored in the user terminal according to the identifier of the video to be played, wherein the target original video data are data of video frames corresponding to the target playing time stamps in the video to be played;
if the media information data is not stored in the user terminal, executing the step of downloading the media information data of the video to be played from the server;
and if the media information data is stored in the user terminal and the target original video data is not stored in the user terminal, executing the step of downloading the original video data of the video to be played from the server.
Optionally, the step of downloading the original video data of the video to be played from the server includes:
receiving a parallel download link group sent by the server, wherein the parallel download link group comprises at least two download links for downloading the original video data;
creating a download thread corresponding to the download link in the parallel download link group;
and downloading the original video data of the video to be played according to the download link corresponding to the download thread.
Optionally, the step of updating the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list includes:
and aiming at each key frame in the key frame list, adding the first offset of the key frame to the size of the media information data to obtain a second offset of the key frame, and generating a new key frame list according to the second offset corresponding to each key frame.
Optionally, the media information data further includes a duration parameter of the video to be played, where the duration parameter of the video to be played includes: the total time length, the audio time length and the picture time length of the video to be played;
the method further comprises the following steps:
comparing the total duration of the video to be played, the audio duration and the picture duration in the media information data;
and if at least two of the total time length, the audio time length and the picture time length of the video to be played are the same, executing the step of playing the original video data of the video to be played according to the new key frame list.
Optionally, the video file is stored in units of data blocks, where the data blocks include data types and data contents;
the downloading of the media information data of the video to be played from the server includes:
downloading the data type of the data block storing the video to be played from the server according to the preset downloading sequence of the data block;
if the data type of the downloaded data block is the media information type, downloading the data content of the data block;
and if the data type of the downloaded data block is not the media information type, executing a step of downloading the data type of the data block storing the video to be played from the server according to a preset downloading sequence of the data block until the complete media information data of the video to be played is obtained.
In a second aspect, an apparatus for video playing is provided, where the apparatus is applied to a user terminal, and the apparatus includes:
the downloading module is used for downloading media information data of a video to be played from a server, wherein the media information data comprise a key frame list and the size of the media information data, the key frame list comprises first offset of each key frame in the video to be played in a video file, and the video file comprises original video data of the video to be played and the media information data of the video to be played;
the moving module is used for updating the first offset of each key frame in the video to be played according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file, wherein the new key frame list contains the updated first offset of each key frame in the video to be played;
and the playing module is used for downloading the original video data of the video to be played from the server and playing the downloaded original video data according to the new key frame list.
Optionally, the apparatus further comprises:
the receiving module is used for receiving a playing progress setting instruction input by a user, wherein the playing progress setting instruction comprises: the identifier of the video to be played and the target playing timestamp;
a judging module, configured to judge whether media information data of the video to be played and target original video data are stored in the user terminal according to the identifier of the video to be played, where the target original video data is data of a video frame corresponding to the target playing timestamp in the video to be played;
if the media information data is not stored in the user terminal, triggering the downloading module to execute the step of downloading the media information data of the video to be played from the server;
and if the media information data is stored in the user terminal and the target original video data is not stored in the user terminal, triggering the playing module to execute the step of downloading the original video data of the video to be played from the server.
Optionally, the playing module is specifically configured to:
receiving a parallel download link group sent by the server, wherein the parallel download link group comprises at least two download links for downloading the original video data;
creating a download thread corresponding to the download link in the parallel download link group;
and downloading the original video data of the video to be played according to the download link corresponding to the download thread.
Optionally, the moving module is specifically configured to:
and aiming at each key frame in the key frame list, adding the first offset of the key frame to the size of the media information data to obtain a second offset of the key frame, and generating a new key frame list according to the second offset corresponding to each key frame.
Optionally, the media information data further includes a duration parameter of the video to be played, where the duration parameter of the video to be played includes: the total time length, the audio time length and the picture time length of the video to be played;
the device further comprises:
the comparison module is used for comparing the total time length of the video to be played, the audio time length and the picture time length in the media information data; and if at least two of the total time length, the audio time length and the picture time length of the video to be played are the same, triggering the playing module to execute the step of playing the original video data of the video to be played according to the new key frame list.
Optionally, the video file is stored in units of data blocks, where the data blocks include data types and data contents;
the download module is specifically configured to:
downloading the data type of the data block storing the video to be played from the server according to the preset downloading sequence of the data block;
if the data type of the downloaded data block is the media information type, downloading the data content of the data block;
and if the data type of the downloaded data block is not the media information type, executing a step of downloading the data type of the data block storing the video to be played from the server according to a preset downloading sequence of the data block until the complete media information data of the video to be played is obtained.
In a third aspect, a user terminal is provided, which includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory complete communication with each other through the communication bus;
a memory for storing a computer program;
a processor for implementing the method steps of any of the first aspect when executing a program stored in the memory.
In a fourth aspect, a computer-readable storage medium is provided, having stored thereon a computer program which, when being executed by a processor, carries out the method steps of any of the first aspects.
In a fifth aspect, there is provided a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of any of the first aspects above.
In the embodiment of the invention, the user terminal downloads the media information data of the video to be played from the server, the media information data comprises a key frame list and the size of the media information data, and the key frame list comprises the first offset of each key frame in the video to be played in the video file; updating the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file; and downloading the original video data of the video to be played from the server, and playing the downloaded original video data according to the new key frame list. The invention adjusts the downloading sequence of the sub-files in the video file, so that the server does not need to transcode all the original video data in the video file, but directly sends the original video data to the user terminal, and the user terminal transcodes and plays the video according to the updated key frame list in the media information data, thereby realizing the real-time playing of the video while downloading.
Of course, it is not necessary for any product or method of practicing the invention to achieve all of the above-described advantages at the same time.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a flowchart of a method for playing a video according to an embodiment of the present invention;
fig. 2 is an exemplary diagram of a video playing interface according to an embodiment of the present invention;
fig. 3 is a flowchart of downloading media information data of a video to be played according to an embodiment of the present invention;
fig. 4 is a flowchart illustrating a process of downloading original video data of a video to be played in parallel according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a video playing apparatus according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of a video playing apparatus according to an embodiment of the present invention;
fig. 7 is a schematic structural diagram of a video playing apparatus according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of a user terminal according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. 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 invention.
The embodiment of the invention provides a video playing method, which can be applied to a user terminal, wherein the user terminal can be equipment with a video playing function. For example, the mobile phone or the tablet PC may be used, and a Personal Computer (PC), a television, or the like may be used.
As shown in fig. 1, a method for playing a video according to an embodiment of the present invention may include the following steps:
s110, the user terminal downloads the media information data of the video to be played from the server.
The media information data comprises a key frame list and the size of the media information data, and the key frame list comprises first offsets of all key frames in the video to be played in the video file. The video file generally includes at least original video data of the video and media information data of the video. The original video data includes image frame data and audio data.
In implementation, an application program for playing a video may be installed in the user terminal, and when a user needs to watch a video, the user may start the application program and select the video to be played (i.e., the video to be played) in a playing interface of the application program. The user terminal may display a playing interface of the video to be played, as shown in fig. 2, a playing progress bar corresponding to the total duration of the video file may be displayed in the playing interface, and the playing progress bar may be used to indicate the playing progress of the video, such as the playing duration of the video.
The user can play the videos in sequence by clicking the start play button. The user terminal may send a download request to the server, where the download request may carry an identifier of the video to be played to download the media information data of the video to be played.
If the video file is stored in units of data blocks, and the stored data blocks include data types and data contents, in another specific embodiment of the present invention, a specific process of downloading media information data of a video to be played from a server may include the following steps:
s111, downloading the data type of the data block storing the video to be played from the server according to a preset downloading sequence of the data block;
s112, if the data type of the downloaded data block is the media information type, downloading the data content of the data block; otherwise, step S111 is executed until the complete media information data of the video to be played is obtained.
In another embodiment of the present invention, the user may select a progress of the video content to be played by clicking a certain position of the play progress bar, so as to implement on-demand of the video, and accordingly, before step S110, the following steps may be further included:
step one, receiving a playing progress setting instruction input by a user.
Wherein, the playing progress setting instruction comprises: and the identifier of the video to be played and the target playing time stamp.
In implementation, a play progress bar in the play interface may be used to indicate a play progress of the video, where the play progress may be a play duration of the video. Specifically, each position in the play progress bar corresponds to a play time stamp of the video. When a user wants to perform a video on demand, the user may click a certain position (which may be referred to as a target position) in a play progress bar corresponding to a video to be played, and the user terminal may receive a play progress setting instruction. Wherein, the playing progress setting instruction comprises: the video playing method comprises the steps of identifying a video to be played and a target playing time stamp of the video to be played, wherein the target playing time stamp is the playing time stamp corresponding to a target position.
And step two, judging whether the media information data of the video to be played and the target original video data are stored in the user terminal.
The target original video data is the data of the video frame corresponding to the target playing time stamp in the video to be played.
In implementation, when a user terminal plays a video file online, the video file needs to be acquired online from a storage device (such as a server) storing the video file. After the user inputs the playing progress setting instruction, the user terminal may query whether a video file of the video to be played is stored in the user terminal, and if so, further query whether media information data and data of a video frame corresponding to the target playing timestamp (i.e., target original video data) exist in the video file.
If the user terminal does not store the media information data, executing S110; if the user terminal stores media information data and does not store the target original video data, S130 is executed.
In another embodiment of the present invention, as shown in fig. 3, a specific process of downloading, by a user terminal, media information data of a video to be played from a server may include the following steps:
s110a, downloading the target data type of the target image data block of the video to be played from the server according to the preset downloading sequence of the image data block.
The target image data block is an image data block in which target original video data is stored. Specifically, original video data of a video to be played is stored in a server in units of image data blocks, which may be referred to as a box. The image data block contains a data type and a data content, and in practical application, the storage position of the data type is usually located before the data content. For example, the image data block is 5KB, the first 2KB is data type, and the last 3KB is data content. The data type includes at least a media information type and an image data type.
In implementation, after the user terminal sends a download request to the server, the server may send the image data block to the user terminal according to a preset data download sequence. In one implementation, the video to be played may be downloaded according to the playing order of the video. In this embodiment of the application, the download request sent by the user terminal may include a data amount (i.e., a data amount of a data type) to be downloaded, and the user terminal may request the server to download the data type in the image data block.
S110b, if the target data type is the media information type, downloading the data content of the target image data block to obtain the media information data.
In implementation, after receiving a data type of a certain image data block (i.e., a target image data block), the user terminal may determine whether the data type (i.e., the target data type) is a media information type, and if the target data type is the media information type, it indicates that data content included in the image data block is media information data, and the user terminal may further download the data content included in the target image data block to obtain the media information data.
S110c, if the target data type is not the media information type, downloading the data type of the next image data block.
In implementation, if the target data type is not a media information type (such as an image data type or other types), it indicates that the data content included in the image data block is not media information data, and the user terminal continues to download the data type of the next image data block from the server until the data type of the received image data block is the media information type. In one implementation, the data size of the data content, for example, 3KB, may be pre-stored in the user terminal, and if it is determined that the target data type is not the media information type, the starting position of the downloaded data of the user terminal may be increased by 3KB, that is, the data type of the next image data block is downloaded directly according to the preset downloading sequence of the image data block without downloading the data content of the target image data block.
And S120, updating the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file.
And the new key frame list comprises a second offset, wherein the second offset is the first offset after each key frame in the video to be played is updated.
In an implementation, each key frame in the video file is stored in a preset order (such as a playing order), and the position of each key frame in the video file may be represented by an offset, where the offset may be a byte position of the key frame stored in the video file, and a byte number offset from a file header of the video file. The user terminal can only realize the online playing of the video file when the media information data of the video file is located at the head position of the video file. Therefore, after the user terminal acquires the media information data online from the server, the media information data needs to be moved to the head of the video file, and meanwhile, the offset of each key frame in the media information data needs to be adjusted, that is, the key frame list is updated, so that a new key frame list is obtained.
In a specific embodiment of the present invention, the process of generating the new key frame list may specifically be: and aiming at each key frame in the key frame list, adding the first offset of the key frame to the size of the media information data to obtain a second offset of the key frame, wherein the second offset corresponding to each key frame forms a new key frame list.
In implementation, for each key frame in the key frame list, the user terminal may obtain an updated offset (i.e., a second offset) of the key frame by using the current offset (i.e., a first offset) of the key frame and adding the data amount included in the media information data, so that the user terminal may update the offset corresponding to each key frame in the key frame list, thereby obtaining a new key frame list. For example, the first offset corresponding to the key frame a is 60 bytes, the data amount contained in the media information data is 50 bytes, and the second offset corresponding to the key frame a is 110 bytes.
And S130, downloading the original video data of the video to be played from the server, and playing the original video data of the video to be played according to the new key frame list.
In implementation, the user terminal may download the original video data of the video to be played from the server, and then play the downloaded original video data according to the new key frame list.
Optionally, the media information data may further include a duration parameter of the video to be played, and the duration parameter of the video to be played may include: the total duration of the video to be played, the audio duration and the picture duration. The user terminal can judge whether the time length parameter of the video to be played meets the preset video playing condition according to the time length parameter of the video to be played. The specific treatment process comprises the following steps: comparing the total duration of the video to be played, the audio duration and the picture duration in the media information data; if at least two of the total duration of the video to be played, the audio duration and the picture duration are the same, executing step 130; and if the three time length parameters of the total time length, the audio time length and the picture time length of the video file are different, determining that the video to be played does not meet the preset video playing condition, and not playing.
In the embodiment of the invention, the user terminal can download the media information data of the video to be played from the server, the media information data comprises a key frame list and the size of the media information data, and the key frame list comprises the first offset of each key frame in the video file to be played. Then, the user terminal updates the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moves the media information data containing the new key frame list to the head position of the video file, wherein the new key frame list contains the second offset of each key frame in the video to be played. After the user terminal downloads the original video data of the video to be played from the server, the original video data of the video to be played can be played directly according to the new key frame list. Therefore, the server does not need to transcode all original video data in the video file, but directly sends the original video data to the user terminal, and the user terminal transcodes and plays the video according to the media information data, so that the real-time playing of the video is realized.
Optionally, the user terminal may download the original video data of the video to be played from the server in a parallel downloading manner, and the embodiment of the present application takes on-demand as an example to describe a parallel downloading process, as shown in fig. 4, which specifically includes the following steps.
And S410, sending a downloading request to the server.
Wherein the download request includes: and the identifier of the video to be played and the target playing time stamp.
In implementation, after receiving the play progress setting instruction, the user terminal may generate a download request according to the identifier of the video to be played and the target play timestamp, and then send the download request to the server.
And S420, receiving the parallel download link group sent by the server.
The parallel download link group comprises a preset number of download links for downloading the target original video data. The preset number may be user-set.
In implementation, after receiving a download request sent by a user terminal, a server may determine a video file of a video to be played according to an identifier of the video to be played in the download request, and then determine original video data requested by the user terminal according to a target play timestamp, then, the server divides the determined original video data into a plurality of parts, generates a download link for each part of the original video data, obtains a parallel download link group including all the download links, sends a parallel download link group corresponding to the original video data, and sends the parallel download link group to the user terminal.
S430, creating a preset number of downloading threads according to the number of the downloading links.
In implementation, after receiving the parallel download link group sent by the server, the user terminal may create a preset number of download threads according to the number of the download links. The number of the download threads may be the same as the number of the download links included in the parallel download link group, or the number of the download threads may be smaller than the number of the download links, that is, each download thread includes at least one download link, and there may be a download thread including two or more download links.
S440, through each downloading thread, data downloading is carried out from the target original video data according to the downloading link corresponding to the downloading thread.
In implementation, the user terminal may execute a download task of a download link corresponding to the download thread through the created download thread. The downloading is started from the original video data corresponding to the target playing time stamp in the video to be played, so that the user can request the video on line. For the case of downloading in a box unit, the server may divide the box into a preset number of sub-data blocks in advance, and the user terminal downloads each sub-data block through a downloading thread, so as to obtain all data contained in the box.
Optionally, the user terminal may also download the media information data in a parallel downloading manner, and a specific processing process is similar to a process of downloading the original video data in parallel and is not described again.
In the embodiment of the invention, the user terminal can establish a plurality of downloading threads, and simultaneously download the video file of the video to be played from the original video data corresponding to the target playing timestamp through the plurality of downloading threads, so that the parallel downloading is realized, the downloading speed is accelerated, and the efficiency of the user terminal for playing the online video is improved.
Optionally, based on the parallel downloading process, an embodiment of the present invention further provides a process for storing original video data, which may specifically be as follows:
the user terminal may obtain the size of a video file of a video to be played from the server (for example, the size of the video file may be requested from the server through a first created downloading thread), then, the block size of the video file may be calculated according to the number of the downloading threads, then, a storage resource is divided for each block, and a corresponding relationship between the storage resource and the downloading thread is established, so as to store the data of the block downloaded by the downloading thread through the divided storage resource. For example, if the video file is 1M, the user terminal creates 2 download threads, and downloads the video file through 2 download links, it may be determined that the video file is divided into two chunks, and each chunk is 512 k. The user terminal may divide two memory blocks with a size of 512k from the local storage resource, so as to store the partitions of the video file downloaded by the two downloading threads.
For clarity of description, the following describes a method for playing a video according to an embodiment of the present invention in detail by using a specific embodiment. The storage formats of the video files are various, for example, MP4, BMP, AVI, or the like. The present example is described by taking an example of playing a video on demand in MP4 format, and the specific contents are as follows.
The user selects the video with the ID of 693 to play in the user terminal, and the user terminal displays a playing interface of the video, wherein the playing interface comprises a playing progress bar of the video. The user clicks a certain position (the corresponding playing time stamp is 10' 00) in the playing progress bar to trigger the user terminal to generate a playing progress device instruction. The playing schedule device command includes the ID693 of the video and the playing time stamp 10' 00. The user terminal judges whether a video file corresponding to the ID693 exists in the locally stored video file, and if so, further judges whether media information data corresponding to the ID693 exists in the video file. If the media information data does not exist, sending a downloading request to a network disk server to download the media information data and the original video data, if the media information data exists but the original video data corresponding to 10 '00 does not exist, sending the downloading request to the network disk server, and at this time, the user terminal only needs to download the original video data corresponding to 10' 00. The downloading process of the media information data will be described first.
In the MP4 format, video data is usually stored in a server in units of image data blocks, which may be called a box, where the image data block containing media information data is a moov box, and the video file usually stores original video data first, and the moov box is located after the box of the original video data. The size and format of each box is the same. Wherein, the box contains data type and data content, and the storage position of the data type is usually positioned before the data content. For example, the image data block is 5KB, the first 2KB is data type, and the last 3KB is data content. The data type includes at least a media information type and an image data type.
The user terminal downloads the data types in the boxes in sequence from the end of the video file, if the data types are not media information types (such as image data types or other types), the boxes to which the data types belong are not moov boxes, and the user terminal continues to download the data types of the next boxes from the server until the received data types are media information types.
After the user terminal downloads the moov box, the key frame list in the moov box is updated according to the processing procedure of the above embodiment to obtain a new key frame list, that is, the moov box is regenerated to obtain a new moov box. And the user terminal moves the new moov box to a position behind styp in the head position of the video file, wherein styp is the first 4 fields of the video file, so that the moved moov box is positioned in front of the original video data.
The downloading process of the original video data is described below.
The network disk server can send the three download links of the video file 693 to the user terminal according to the ID693 in the download request sent by the user terminal and the playing timestamp 10' 00. The user terminal respectively creates a downloading thread for each downloading link, and executes the downloading task of the downloading link corresponding to the downloading thread through each downloading thread, that is, the downloading is started from the original video data corresponding to 10' 00.
The server may determine a box containing a 10' 00 video frame, divide the box into three sub data blocks, and the user terminal may download the sub data blocks contained in the box in parallel, thereby increasing a download speed. After the data of the current box is downloaded, the download thread automatically downloads the sub data block of the next box, and so on. After downloading all the original video data after 10' 00, the downloading thread automatically jumps to the 1 st box of the video file to download until all the original image frames contained in the video are downloaded.
In addition, the user terminal can also obtain the total duration of the video file in the mdhd field in the moovbox, obtain the audio duration and the picture duration from the trak field of the moovbox to judge whether the video meets the playing condition, and play the downloaded video data when the video meets the playing condition.
In the embodiment of the invention, a user terminal downloads media information data of a video to be played from a server, wherein the media information data comprises a key frame list and the size of the media information data, and the key frame list comprises first offsets of key frames in the video to be played in a video file; updating the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file; and downloading the original video data of the video to be played from the server, and playing the downloaded original video data according to the new key frame list. The invention adjusts the downloading sequence of the sub-files in the video file, so that the server does not need to transcode all the original video data in the video file, but directly sends the original video data to the user terminal, and the user terminal transcodes and plays the video according to the updated key frame list in the media information data, thereby realizing the real-time playing of the video while downloading.
Corresponding to the method embodiment, an embodiment of the present invention further provides a device for playing a video, where the device is applied to a user terminal, and as shown in fig. 5, the device includes:
a downloading module 510, configured to download media information data of a video to be played from a server, where the media information data specifically includes a key frame list and a size of the media information data, where the key frame list includes a first offset of each key frame in a video file in the video to be played, and the video file includes original video data and the media information data;
a moving module 520, configured to update the first offset of each key frame in the video to be played according to the first offset of each key frame and the size of the media information data, to obtain a new key frame list, and move the media information data including the new key frame list to the head position of the video file, where the new key frame list includes the updated first offset of each key frame;
the playing module 530 is configured to download the original video data of the video to be played from the server, and play the downloaded original video data according to the new key frame list.
Optionally, as shown in fig. 6, the apparatus further includes:
the receiving module 540 is configured to receive a play progress setting instruction input by a user, where the play progress setting instruction includes: the identification of the video to be played and a target playing timestamp;
a determining module 550, configured to determine, according to the identifier of the video to be played, whether media information data of the video to be played and target original video data are stored in the user terminal, where the target original video data is data of a video frame corresponding to a target playing timestamp in the video to be played; if the media information data is not stored, triggering the downloading module 510 to execute the step of downloading the media information data of the video to be played from the server; if the media information data is stored but the target original video data is not stored, the playing module 530 is triggered to execute the step of downloading the original video data of the video to be played from the server.
Optionally, the playing module 530 is specifically configured to:
receiving a parallel download link group sent by a server, wherein the parallel download link group comprises at least two download links for downloading original video data;
creating a download thread corresponding to the download link in the parallel download link group;
and downloading the original video data of the video to be played according to the download link corresponding to the download thread.
Optionally, the moving module 520 is specifically configured to:
and aiming at each key frame in the key frame list, adding the first offset of the key frame to the size of the media information data to obtain a second offset after the key frame is updated, and generating a new key frame list according to the second offset corresponding to each key frame.
Optionally, the media information data further includes a duration parameter of the video to be played, and the duration parameter of the video to be played includes: the total time length of the video to be played, the audio time length and the picture time length;
as shown in fig. 7, the apparatus further includes:
the comparison module 560 is configured to compare the total duration of the video to be played, the audio duration, and the picture duration in the media information data; if at least two of the total duration, the audio duration and the picture duration of the video to be played are the same, the playing module 530 is triggered to execute the step of playing the original video data of the video to be played according to the new key frame list.
Optionally, the video file is stored in units of data blocks, where the data blocks include data types and data contents;
the download module 510 is specifically configured to:
downloading the data type of the data block storing the video to be played from the server according to the preset downloading sequence of the data block;
if the data type of the downloaded data block is the media information type, downloading the data content of the data block;
and if the data type of the downloaded data block is not the media information type, executing a step of downloading the data type of the data block storing the video to be played from the server according to a preset downloading sequence of the data block until the complete media information data of the video to be played is obtained.
In the embodiment of the invention, a user terminal downloads media information data of a video to be played from a server, wherein the media information data comprises a key frame list and the size of the media information data, and the key frame list comprises first offsets of key frames in the video to be played in a video file; updating the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file; and downloading the original video data of the video to be played from the server, and playing the downloaded original video data according to the new key frame list. The invention adjusts the downloading sequence of the sub-files in the video file, so that the server does not need to transcode all the original video data in the video file, but directly sends the original video data to the user terminal, and the user terminal transcodes and plays the video according to the updated key frame list in the media information data, thereby realizing the real-time playing of the video while downloading.
The embodiment of the present invention further provides a user terminal, as shown in fig. 8, which includes a processor 801, a communication interface 802, a memory 803 and a communication bus 804, wherein the processor 801, the communication interface 802 and the memory 803 complete mutual communication through the communication bus 804,
a memory 803 for storing a computer program;
the processor 801 is configured to implement the steps described in the above embodiments of the video playing method when executing the program stored in the memory 803.
For specific implementation and related explanation of each step of the method, reference may be made to the method embodiments shown in fig. 1, fig. 2, fig. 3, and fig. 4, which are not described herein again.
In addition, other implementation manners of the application setting method implemented by the processor 801 executing the program stored in the memory 803 are the same as those mentioned in the foregoing method embodiment, and are not described herein again.
The communication bus of the user terminal may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The communication bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
The communication interface is used for communication between the user terminal and other equipment.
The Memory may include a Random Access Memory (RAM) or a non-volatile Memory (non-volatile Memory), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; the Integrated Circuit may also be 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, or discrete hardware components.
In another embodiment provided by the present invention, the embodiment of the present invention further provides a computer-readable storage medium, in which a computer program is stored, and the computer program, when executed by a processor, implements the steps of the above-mentioned method for playing video.
In another embodiment, the present invention further provides a computer program product containing instructions, which when run on a computer, causes the computer to execute the above-mentioned video playing method.
In the above embodiments, the implementation may be wholly or partially 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 invention 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, for example, from one website site, computer, server, or data center to another website site, 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.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the 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.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, as for the apparatus, the user terminal, the computer-readable storage medium and the computer program product embodiment, since they are substantially similar to the method embodiment, the description is relatively simple, and for the relevant points, refer to the partial description of the method embodiment.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (14)

1. A method for playing video, the method being applied to a user terminal, the method comprising:
downloading media information data of a video to be played from a server, wherein the media information data comprises a key frame list and the size of the media information data, the key frame list comprises first offset of each key frame in the video to be played in a video file, and the video file comprises original video data of the video to be played and the media information data of the video to be played;
updating the first offset of the key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file, wherein the new key frame list contains the updated first offset of each key frame in the video to be played;
and downloading the original video data of the video to be played from the server, and playing the downloaded original video data according to the new key frame list.
2. The method according to claim 1, wherein the step of downloading the media information data of the video to be played from the server is preceded by the steps of:
receiving a playing progress setting instruction input by a user, wherein the playing progress setting instruction comprises: the identifier of the video to be played and the target playing timestamp;
judging whether media information data of the video to be played and target original video data are stored in the user terminal according to the identifier of the video to be played, wherein the target original video data are data of video frames corresponding to the target playing time stamps in the video to be played;
if the media information data is not stored in the user terminal, executing the step of downloading the media information data of the video to be played from the server;
and if the media information data is stored in the user terminal and the target original video data is not stored in the user terminal, executing the step of downloading the original video data of the video to be played from the server.
3. The method of claim 1, wherein the step of downloading the original video data of the video to be played from the server comprises:
receiving a parallel download link group sent by the server, wherein the parallel download link group comprises at least two download links for downloading the original video data;
creating a download thread corresponding to the download link in the parallel download link group;
and downloading the original video data of the video to be played according to the download link corresponding to the download thread.
4. The method according to claim 1, wherein the step of updating the first offset of each key frame according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list comprises:
and aiming at each key frame in the key frame list, adding the first offset of the key frame to the size of the media information data to obtain a second offset of the key frame, and generating a new key frame list according to the second offset corresponding to each key frame.
5. The method according to claim 1, wherein the media information data further comprises a duration parameter of the video to be played, and the duration parameter of the video to be played comprises: the total time length, the audio time length and the picture time length of the video to be played;
the method further comprises the following steps:
comparing the total duration of the video to be played, the audio duration and the picture duration in the media information data;
and if at least two of the total time length, the audio time length and the picture time length of the video to be played are the same, executing the step of playing the original video data of the video to be played according to the new key frame list.
6. The method of claim 1, wherein the video file is stored in units of data blocks, the data blocks containing data types and data contents;
the downloading of the media information data of the video to be played from the server includes:
downloading the data type of the data block storing the video to be played from the server according to the preset downloading sequence of the data block;
if the data type of the downloaded data block is the media information type, downloading the data content of the data block;
and if the data type of the downloaded data block is not the media information type, executing a step of downloading the data type of the data block storing the video to be played from the server according to a preset downloading sequence of the data block until the complete media information data of the video to be played is obtained.
7. An apparatus for video playing, the apparatus being applied to a user terminal, the apparatus comprising:
the downloading module is used for downloading media information data of a video to be played from a server, wherein the media information data comprise a key frame list and the size of the media information data, the key frame list comprises first offset of each key frame in the video to be played in a video file, and the video file comprises original video data of the video to be played and the media information data of the video to be played;
the moving module is used for updating the first offset of each key frame in the video to be played according to the first offset of each key frame in the video to be played and the size of the media information data to obtain a new key frame list, and moving the media information data containing the new key frame list to the head position of the video file, wherein the new key frame list contains the updated first offset of each key frame in the video to be played;
and the playing module is used for downloading the original video data of the video to be played from the server and playing the downloaded original video data according to the new key frame list.
8. The apparatus of claim 7, further comprising:
the receiving module is used for receiving a playing progress setting instruction input by a user, wherein the playing progress setting instruction comprises: the identifier of the video to be played and the target playing timestamp;
a judging module, configured to judge whether media information data of the video to be played and target original video data are stored in the user terminal according to the identifier of the video to be played, where the target original video data is data of a video frame corresponding to the target playing timestamp in the video to be played;
if the media information data is not stored in the user terminal, triggering the downloading module to execute the step of downloading the media information data of the video to be played from the server;
and if the media information data is stored in the user terminal and the target original video data is not stored in the user terminal, triggering the playing module to execute the step of downloading the original video data of the video to be played from the server.
9. The apparatus of claim 7, wherein the playback module is specifically configured to:
receiving a parallel download link group sent by the server, wherein the parallel download link group comprises at least two download links for downloading the original video data;
creating a download thread corresponding to the download link in the parallel download link group;
and downloading the original video data of the video to be played according to the download link corresponding to the download thread.
10. The apparatus according to claim 7, wherein the moving module is specifically configured to:
and aiming at each key frame in the key frame list, adding the first offset of the key frame to the size of the media information data to obtain a second offset of the key frame, and generating a new key frame list according to the second offset corresponding to each key frame.
11. The apparatus according to claim 7, wherein the media information data further comprises a duration parameter of the video to be played, and the duration parameter of the video to be played comprises: the total time length, the audio time length and the picture time length of the video to be played;
the device further comprises:
the comparison module is used for comparing the total time length of the video to be played, the audio time length and the picture time length in the media information data; and if at least two of the total time length, the audio time length and the picture time length of the video to be played are the same, triggering the playing module to execute the step of playing the original video data of the video to be played according to the new key frame list.
12. The apparatus of claim 7, wherein the video file is stored in units of data blocks, the data blocks containing data types and data contents;
the download module is specifically configured to:
downloading the data type of the data block storing the video to be played from the server according to the preset downloading sequence of the data block;
if the data type of the downloaded data block is the media information type, downloading the data content of the data block;
and if the data type of the downloaded data block is not the media information type, executing a step of downloading the data type of the data block storing the video to be played from the server according to a preset downloading sequence of the data block until the complete media information data of the video to be played is obtained.
13. The user terminal is characterized by comprising a processor, a communication interface, a memory and a communication bus, wherein the processor and the communication interface are used for realizing the communication between the processor and the memory through the communication bus;
a memory for storing a computer program;
a processor for implementing the method steps of any of claims 1-6 when executing a program stored in the memory.
14. A computer-readable storage medium, characterized in that a computer program is stored in the computer-readable storage medium, which computer program, when being executed by a processor, carries out the method steps of any one of claims 1 to 6.
CN201910368594.4A 2019-05-05 2019-05-05 Video playing method and device and user terminal Active CN110113655B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910368594.4A CN110113655B (en) 2019-05-05 2019-05-05 Video playing method and device and user terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910368594.4A CN110113655B (en) 2019-05-05 2019-05-05 Video playing method and device and user terminal

Publications (2)

Publication Number Publication Date
CN110113655A CN110113655A (en) 2019-08-09
CN110113655B true CN110113655B (en) 2021-09-21

Family

ID=67488067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910368594.4A Active CN110113655B (en) 2019-05-05 2019-05-05 Video playing method and device and user terminal

Country Status (1)

Country Link
CN (1) CN110113655B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111629250A (en) * 2020-05-28 2020-09-04 海信视像科技股份有限公司 Display device and video playing method
CN112333560A (en) * 2020-08-25 2021-02-05 深圳Tcl新技术有限公司 Webpage video analyzing and playing method, device and equipment and readable storage medium
CN114125509B (en) * 2021-11-30 2024-01-19 深圳Tcl新技术有限公司 Video playing method and device, electronic equipment and storage medium
CN114845159A (en) * 2022-04-22 2022-08-02 北京百度网讯科技有限公司 Download data generation method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1516184A (en) * 2003-01-10 2004-07-28 华为技术有限公司 Processing method of multi-media data
CN103873956A (en) * 2012-12-12 2014-06-18 中国电信股份有限公司 Media file playing method and system, player, terminal and media storage platform
CN104661058A (en) * 2013-11-20 2015-05-27 深圳市云帆世纪科技有限公司 MP4 video on demand data stream transmission method, client side and video on demand system
CN104994433A (en) * 2015-06-30 2015-10-21 上海帝联信息科技股份有限公司 Method and device for providing video file
CN107277563A (en) * 2017-05-12 2017-10-20 成都虚拟世界科技有限公司 A kind of method, server and terminal generated with playing video file
CN107809678A (en) * 2016-09-09 2018-03-16 阿里巴巴集团控股有限公司 Processing method, device and the equipment of multimedia file
CN108965984A (en) * 2018-08-27 2018-12-07 优视科技新加坡有限公司 A kind of method, apparatus and equipment/terminal/server file transmission and played

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5147278B2 (en) * 2007-04-09 2013-02-20 株式会社日立製作所 Video distribution apparatus and key frame distribution method
KR101600469B1 (en) * 2014-07-16 2016-03-07 김재경 Operating method of client and server for streaming service
CN105208440B (en) * 2015-09-22 2019-03-12 暴风集团股份有限公司 A kind of method and system that MP4 format video plays online
CN105228001B (en) * 2015-09-26 2018-11-06 暴风集团股份有限公司 A kind of method and system that FLV format videos play online
CN105763960B (en) * 2016-03-01 2019-01-01 聚好看科技股份有限公司 A kind of method and apparatus that network video plays

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1516184A (en) * 2003-01-10 2004-07-28 华为技术有限公司 Processing method of multi-media data
CN103873956A (en) * 2012-12-12 2014-06-18 中国电信股份有限公司 Media file playing method and system, player, terminal and media storage platform
CN104661058A (en) * 2013-11-20 2015-05-27 深圳市云帆世纪科技有限公司 MP4 video on demand data stream transmission method, client side and video on demand system
CN104994433A (en) * 2015-06-30 2015-10-21 上海帝联信息科技股份有限公司 Method and device for providing video file
CN107809678A (en) * 2016-09-09 2018-03-16 阿里巴巴集团控股有限公司 Processing method, device and the equipment of multimedia file
CN107277563A (en) * 2017-05-12 2017-10-20 成都虚拟世界科技有限公司 A kind of method, server and terminal generated with playing video file
CN108965984A (en) * 2018-08-27 2018-12-07 优视科技新加坡有限公司 A kind of method, apparatus and equipment/terminal/server file transmission and played

Also Published As

Publication number Publication date
CN110113655A (en) 2019-08-09

Similar Documents

Publication Publication Date Title
CN110113655B (en) Video playing method and device and user terminal
CN108124202B (en) Method for making stream media server support H L S protocol
US8762564B1 (en) Method and system for dynamically selecting, assembling and inserting content into stream media
US9344517B2 (en) Downloading and adaptive streaming of multimedia content to a device with cache assist
US8301794B2 (en) Media content improved playback quality
US9367125B2 (en) Terminal apparatus for shooting and distributing video data and video-data distribution method
WO2014019063A1 (en) Method and system for dynamically selecting, assembling and inserting content into streaming media
US20170162229A1 (en) Play method and device
US10972581B2 (en) Media processing method and device
CN103685264A (en) Method, client side and system for broadcasting media fragmentations in turn
US20210321149A1 (en) Method of playing video, computing device, and computer program product
WO2018233539A1 (en) Video processing method, computer storage medium, and device
CN107786631B (en) Content publishing method and device and electronic equipment
CN112584200B (en) Screen projection method, system, electronic equipment and storage medium
CN113542904B (en) Video projection playing method and device, electronic equipment and storage medium
CN104618738A (en) Method and device for playing programs of intelligent TV
CN113424553A (en) Techniques for facilitating playback of interactive media items in response to user selections
CN111726641A (en) Live video playing processing method and device and server
US10674188B2 (en) Playback apparatus, method of controlling playback apparatus, playback method and server apparatus
US20220321972A1 (en) Transmitting content based on genre information
CN112565877A (en) Screen projection method and system, electronic equipment and storage medium
US20120151538A1 (en) Method for interactive delivery of multimedia content, content production entity and server entity for realizing such a method
US20210185401A1 (en) Preload hinting for low latency http live streaming system
CN111479142B (en) Program content updating method and system based on information release
CN114666627A (en) Method and device for preloading streaming media video, electronic equipment and storage medium

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