CN114501166B - DASH on-demand fast-forward and fast-backward method and system - Google Patents
DASH on-demand fast-forward and fast-backward method and system Download PDFInfo
- Publication number
- CN114501166B CN114501166B CN202111384473.2A CN202111384473A CN114501166B CN 114501166 B CN114501166 B CN 114501166B CN 202111384473 A CN202111384473 A CN 202111384473A CN 114501166 B CN114501166 B CN 114501166B
- Authority
- CN
- China
- Prior art keywords
- key frame
- video segment
- dash
- fast
- terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440245—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4825—End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The invention provides a DASH on-demand fast-forward and fast-backward method, which comprises the following steps: acquiring each DASH video segment; analyzing each DASH video segment to obtain key frame offset information of each DASH video segment; when receiving a fast forward or fast backward instruction, the terminal sends a target key frame acquisition request to a server; the server acquires a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment; and sending the target key frame to the terminal. The invention can effectively reduce the data requested when the terminal requests the fast forward and fast backward service; the time required by the terminal to play the fast-forward and fast-backward content is shortened, and the experience of the user is further improved.
Description
Technical Field
The invention relates to the field of data processing, in particular to a DASH on-demand fast-forward and fast-backward method and system.
Background
At present, the internet and mobile communication technology are in a rapid development stage, and audio and video transmission service is a mainstream service in the internet, so that users can acquire video resources conveniently and rapidly by using personal computers and mobile terminals. DASH is a dynamic adaptive bit rate streaming technology based on HTTP, and the transmission protocol used is TCP, specifically, dividing a video into a plurality of small segments, transmitting the video through the HTTP protocol, and playing the video after the client obtains the video. At present, only functions such as on-demand playing and drag-and-drop are realized aiming at DASH on-demand, in this case, when a user requests a fast-forward and fast-backward service to a server aiming at DASH on-demand through a terminal, data requested by the terminal can be larger, only after a complete video segment is pulled, fast-forward and fast-backward contents can be displayed, in this case, the user cannot quickly watch fast-forward and fast-backward pictures, and experience of the user is also deteriorated.
Disclosure of Invention
The invention mainly aims to provide a DASH on-demand fast-forward and fast-backward method and system, and aims to solve the problem that when a terminal requests fast-forward and fast-backward service, only a complete video segment can be pulled, so that user experience is poor.
In a first aspect, the present invention provides a DASH on demand fast forward and fast backward method, where the DASH on demand fast forward and fast backward method includes:
Acquiring each DASH video segment;
Analyzing each DASH video segment to obtain key frame offset information of each DASH video segment;
When receiving a fast forward or fast backward instruction, the terminal sends a target key frame acquisition request to a server;
the server acquires a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment;
And sending the target key frame to the terminal.
Optionally, the step of obtaining each DASH video segment includes:
requesting a DASH video-on-demand segment list from a source station;
And analyzing the DASH video-on-demand segment list to obtain each DASH video segment.
Optionally, after the step of parsing each DASH video segment to obtain key frame offset information of each DASH video segment, the method further includes:
and adding the key frame offset information of each DASH video segment to the DASH video-on-demand segment list.
Optionally, the target key frame acquisition request includes a number and an indication field of a DASH video segment currently played by the terminal, where the indication field is a fast forward field or a fast reverse field.
Optionally, the step of obtaining the target key frame by the server based on the target key frame obtaining request and key frame offset information of each DASH video segment includes:
the server analyzes the target key frame acquisition request to obtain the number and the indication field of the DASH video segment currently played by the terminal;
When the indication field is a fast forward field, acquiring a key frame of a next video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment;
and when the indication field is a fast-rewinding field, acquiring a key frame of a previous video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment.
In a second aspect, the present invention further provides a DASH on-demand fast-forward and fast-backward system, where the DASH on-demand fast-forward and fast-backward system includes:
the terminal is used for sending a target key frame acquisition request when receiving a fast forward or fast backward instruction;
a server for:
Acquiring each DASH video segment;
Analyzing each DASH video segment to obtain key frame offset information of each DASH video segment to a server;
acquiring a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment;
And sending the target key frame to the terminal.
Optionally, the terminal is further configured to:
and sending a target key frame acquisition request, wherein the target key frame acquisition request comprises the number of the DASH video segment currently played by the terminal and an indication field, and the indication field is a fast forward field or a fast backward field.
Optionally, the server is further configured to:
the server analyzes the target key frame acquisition request to obtain the number and the indication field of the DASH video segment currently played by the terminal;
When the indication field is a fast forward field, acquiring a key frame of a next video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment;
and when the indication field is a fast-rewinding field, acquiring a key frame of a previous video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment.
Optionally, the server is further configured to:
requesting a DASH video-on-demand segment list from a source station;
And analyzing the DASH video-on-demand segment list to obtain each DASH video segment.
Optionally, the server is further configured to add key frame offset information of each DASH video segment to a DASH on-demand video segment list.
The invention provides a DASH on-demand fast-forward and fast-backward method, which comprises the following steps: acquiring each DASH video segment; analyzing each DASH video segment to obtain key frame offset information of each DASH video segment; when receiving a fast forward or fast backward instruction, the terminal sends a target key frame acquisition request to a server; the server acquires a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment; and sending the target key frame to the terminal. The invention can effectively reduce the data requested when the terminal requests the fast forward and fast backward service; the time required by the terminal to play the fast-forward and fast-backward content is shortened, and the experience of the user is further improved.
Drawings
Fig. 1 is a flowchart of a first embodiment of a DASH on demand fast forward/reverse method according to the present invention;
Fig. 2 is a schematic functional block diagram of a DASH on demand fast forward and reverse system according to a first embodiment of the present invention.
The achievement of the objects, functional features and advantages of the present invention will be further described with reference to the accompanying drawings, in conjunction with the embodiments.
Detailed Description
It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
In a first aspect, an embodiment of the present invention provides a DASH on demand fast forward and fast backward method.
In an embodiment, referring to fig. 1, fig. 1 is a flowchart illustrating a first embodiment of a DASH on demand fast forward/backward method according to the present invention. As shown in fig. 1, the DASH on demand fast forward and fast backward method includes:
step S10, acquiring each DASH video segment;
DASH is a hybrid distribution method of streaming and HTTP progressive download in this embodiment, and the specific principle is that for the same video or audio source file, the file will be encoded into media copies of different quality levels, and each video or audio copy will be divided into small segments. The resulting small segment information is stored in the media presentation description file and in the MPD. The video or audio segments and the MPD file are stored in a web server. When a user uses the terminal to watch video or listen to audio, the terminal can send an HTTP Get request to the web server, and then the web server can send an MPD file corresponding to the video or audio back to the terminal. The terminal analyzes the MPD file to obtain the description information of video segments or audio segments with different quality, and the server or the terminal dynamically selects a video segment or an audio segment to be played with a proper code rate according to the capability of the playing device and the change condition of the network bandwidth.
The MPD file is a metadata file for describing the above-mentioned abstract concepts and the relationships between them. The MPD file in the DASH system is written by XML, and one MPD file comprises the following key elements:
When the live stream is transmitted, the old media period can be removed and the new media period can be added along with the updating of the MPD file, and the live effect is achieved by the method. The encoded version of the media content available within a media session is not changed, i.e. the optional code rate set, language set, subtitle set is not changed any more.
An adaptive set, in the MPD file, a media period is composed of one or more adaptive sets, each adaptive set corresponds to a media content component
The media file description structure specifically refers to that media files with the same language, content type and image aspect ratio attribute are separated into the same adaptive collection. Each media file description corresponds to an independently decodable played media stream. Adaptive switching in DASH is switching between different media file descriptions of the same adaptation set, depending on the network environment or other factors. The minimum abstract collection concept in the MPD when describing the media file.
Slices, which may also be referred to as slices, in an MPD file, each media file description is made up of one or more slices of a certain duration, each slice corresponding to a respective URL, or to a different byte range of the same URL. In DASH, one slice corresponds to the largest data unit that can be retrieved for one HTTP request. The slices in one media file description tend to have exactly or approximately the same duration, and the duration of the slices may vary from one media file description to another. The slice duration may be defined, and represents a lower limit of the transmission delay of the client and the server, and a shorter slice duration is generally selected when DASH is used in live broadcast. The adaptive switching is to switch between different media file descriptions of the same adaptive combination, more specifically, to play one slice of one media file description immediately after another slice of another media file description is played, in which case, simultaneous downloading and downloading at the client can be avoided, decoding of multiple slices from different media file descriptions makes the implementation of the switching action simpler.
HTTP defines different methods of terminal interaction with the server, the most basic being GET and POST. HTTP-GET is a standard protocol verb that uses HTTP for encoding and transmitting variable name/variable value pair parameters, and also uses related request semantics. HTTP is a hypertext transfer protocol and is mainly used to ensure communication between a client and a server. HTTP works in a request-response protocol between a client and a server. The client and server are not limited, and a web browser may also be a client, and a web application on a computer may also act as a server. Taking a browser as a client, the client submits an HTTP request to a server, and the server returns a response to the client. The response contains the requested state information and possibly the requested content. Two of the most common methods used in request response between a client and a server are GET and POST. Here, the HTTP Get request is focused on, where Get refers to a request for data from a specified resource. When HTTP Get is used, a query string (key value pair) is appended to the URL address and sent to the server together. The HTTP Get request has several characteristics, namely, the HTTP Get request can be cached; secondly, the HTTP Get request is stored in a browsing record of the browser; thirdly, the URL requested by the HTTP Get can be saved as a browser bookmark; fourthly, the HTTP Get request has length limitation; fifthly, the HTTP Get request is mainly used for acquiring data.
Step S20, analyzing each DASH video segment to obtain key frame offset information of each DASH video segment;
In this embodiment, the key frame offset information actually records the position of the key frame in the slice, which is the DASH video segment. The key frame specifically refers to an I frame, that is, an actual picture frame, that is, an intra-frame encoded frame, where the I frame displays an intra-frame encoded image that maximally removes redundant information of the image to compress a transmission data amount. Corresponding to P frames, which may also be referred to as forward predictive coded frames, are also P frames, in particular coded pictures with a compressed transmission data volume by exploiting temporal redundancy information below the previously coded frames of the picture sequence. B frames may also be referred to as bi-predictive interpolated encoded frames, with the specific feature that the B frames take into account both the encoded frames preceding the source image sequence and the time between encoded frames following the source image sequence. In the normal case, the compression efficiency of the I frame is lowest, the P frame is higher, and the B frame is highest.
Step S30, when receiving a fast forward or fast backward instruction, the terminal sends a target key frame acquisition request to a server;
In this embodiment, when a user has a fast forward play or fast reverse play request, a fast forward or fast reverse instruction is sent to the terminal. The specific mode is realized by the operations of buttons, touch screens and the like. The fast forward or fast backward content played by the terminal is actually continuous key frames, wherein pictures in the video exist in the key frames, the pictures are continuously played, and the pictures are serially connected to form a fast-forward or fast backward continuous picture. Based on this approach, the terminal needs to continuously send the target key frame acquisition request because the fast forward or fast reverse function cannot be achieved if the request is only once. Only if the target key frame acquisition request is continuously sent, the terminal can continuously play the key frames, and finally, the fast-forward or fast-backward complete picture is displayed.
Step S40, the server acquires the target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment;
In this embodiment, the server needs to analyze the target key frame request sent by the terminal. The target key frame acquisition request sent by the terminal comprises the number of the DASH video segment currently played by the terminal and an indication field, wherein the indication field is a fast forward field or a fast backward field. The key frame offset information of each DASH video segment may transmit the position of the key frame to the server, where the server obtains information of a target key frame according to the key frame offset information of each DASH video segment and a target key frame request sent by the terminal, and the target key frame specifically refers to a key frame of a previous DASH video segment or a key frame of a subsequent DASH video segment that is locked according to a request of a user based on the position of the currently played DASH video segment. Because the terminal continuously transmits the target key frame acquisition request, the server also needs to continuously respond to the target key frame acquisition request. For example, when the terminal is playing the DASH video segment with the number 3, the terminal sends a target key frame acquisition request to the server, an indication field in the target key frame acquisition request is a fast forward field, the server determines a key frame of the DASH video segment with the number 4 as a target key frame after analyzing the target key frame acquisition request, and sends the target key frame to the terminal. And then the terminal sends a target key frame acquisition request containing the DASH video segment with the number of 4 to the server, the server takes the key frame of the DASH video segment with the number of 5 as a target key frame, and the like until the terminal does not send the target key frame acquisition request to the server.
And step S50, the target key frame is sent to the terminal.
In this embodiment, the server obtains the target key frame information after obtaining the target key frame information according to the key frame offset information of each DASH video segment and the target key frame request sent by the terminal, and then the server sends the target key frame corresponding to the target key frame information to the terminal, and after receiving the target key frame, the terminal plays the key frame of the current DASH video segment, where the key frame has a corresponding picture. The terminal plays the key frames continuously, because the terminal is continuous to the acquisition action of the target key frames, that is, the terminal continuously sends the target key frame acquisition request to the server after receiving the fast forward or fast backward instruction. If this action is performed only once, the end terminal presents the user with only one frame of picture, not continuous video content, so that the fast forward or fast reverse function is not realized.
Further, in an embodiment, the step of obtaining each DASH video segment includes:
requesting a DASH video-on-demand segment list from a source station;
And analyzing the DASH video-on-demand segment list to obtain each DASH video segment.
In this embodiment, DASH on-demand content is stored in advance in a source station, where DASH on-demand content is stored, and the content is divided into small segments from complete video content, and the small segments are DASH video segments. In order to order the DASH video segments, the server does not directly request the file containing the whole DASH on-demand content, but requests the DASH on-demand video segment list when requesting DASH content, so as to facilitate subsequent processing. In the DASH video-on-demand segment list, a complete DASH video-on-demand content is segmented into segments, and the segments are arranged according to the rule of the sequence numbers of the segments from small to large or from large to small, so that the required DASH video-on-demand segment key frames can be quickly and accurately locked when a terminal sends a target key frame acquisition instruction and a server sends the target key frame in the subsequent process.
Media content and corresponding sets of descriptions for a set of different encoding parameters are defined as media presentations in DASH. The media content is made up of single or multiple event-continuous media slots whose content may be completely independent of each other, such as advertising content inserted in the feature film. Each media session contains one or more media content components, such as audio components in different languages, video components that provide different perspectives for the same program, subtitle components in different languages, etc. Each media content component has a corresponding media component type identification, such as audio or video. Each media content component may have multiple encoded versions, which are referred to as media streams. Each media stream inherits the properties of the media content, media period and media content components, while also possessing its own coding parameter properties such as code rate, resolution, encoder type, etc.
Further, in an embodiment, after the step of parsing each DASH video segment to obtain the key frame offset information of each DASH video segment, the method further includes:
and adding the key frame offset information of each DASH video segment to the DASH video-on-demand segment list.
In this embodiment, the action of adding the I-frame offset information to the DASH video-on-demand segment list by the server specifically refers to the server writing the I-frame offset information into the slices. Because in a subsequent step the terminal needs to use the I-frame offset information in the slices to issue a target key frame acquisition request to the server. The I-frame offset information may help the server lock the position of the key frames in the slices.
Further, in an embodiment, the target key frame acquisition request includes a number and an indication field of a DASH video segment currently played by the terminal, where the indication field is a fast forward field or a fast reverse field.
In this embodiment, the terminal and the server need to perform information communication, specifically, the terminal sends a target key frame acquisition request to the server first, then the server responds to the target key frame acquisition request, then sends a target key frame to the terminal, and finally the terminal plays the target key frame. The target key frame acquisition request comprises the number and the indication field of the currently played DASH video segment of the terminal, and the server locks the position of the currently played DASH video segment based on the number of the currently played DASH video segment of the terminal. Different indication fields may be represented by different values, such as a fast forward field set to 0 and a fast reverse field set to 1.
Further, in an embodiment, the step of obtaining the target key frame by the server based on the target key frame obtaining request and key frame offset information of each DASH video segment includes:
the server analyzes the target key frame acquisition request to obtain the number and the indication field of the DASH video segment currently played by the terminal;
When the indication field is a fast forward field, acquiring a key frame of a next video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment;
and when the indication field is a fast-rewinding field, acquiring a key frame of a previous video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment.
In this embodiment, after receiving the target key frame acquisition request sent by the terminal, the server determines the target key frame based on the key frame offset information and the target key frame of each DASH video segment. The determination of the target key frame also requires a fast forward or fast reverse request received by the terminal. When the terminal receives a fast forward request of a user, the terminal synthesizes a current playing DASH video segment number and a fast forward instruction into a target key frame acquisition request, and sends the target key frame acquisition request to the server, after receiving the target key frame acquisition request, the server determines the position of the current playing DASH video segment and the fast forward request, and then the server takes a key frame of a next video segment of the current playing DASH video segment as a target key frame and sends the target key frame to the terminal to enable the terminal to play. Similarly, when the terminal receives a fast-rewinding request of a user, the terminal synthesizes the number of the currently playing DASH video segment and the fast-rewinding instruction into a target key frame acquisition request, and sends the target key frame acquisition request to the server, after receiving the target key frame acquisition request, the server determines the position of the currently playing DASH video segment and the fast-rewinding request, and then the server takes the key frame of the previous video segment of the currently playing DASH video segment as a target key frame, and sends the target key frame to the terminal to enable the terminal to play. Because the terminal continuously transmits the target key frame acquisition request, the server also needs to continuously respond to the target key frame acquisition request. For example, when the terminal is playing the DASH video segment with the number 3, the terminal sends a target key frame acquisition request to the server, an indication field in the target key frame acquisition request is a fast forward field, the server determines a key frame of the DASH video segment with the number 4 as a target key frame after analyzing the target key frame acquisition request, and sends the target key frame to the terminal. And then the terminal sends a target key frame acquisition request containing the DASH video segment with the number of 4 to the server, the server takes the key frame of the DASH video segment with the number of 5 as a target key frame, and the like until the terminal does not send the target key frame acquisition request to the server.
In another embodiment, after the server parses the target key frame acquisition request sent by the terminal, a fast forward byte is obtained, the server takes a key frame of a next video segment of the DASH video segment played by the current terminal as a target key frame, sends the target key frame to the terminal, and continuously executes the action of sending the target key frame until the terminal sends a fast forward termination request to the server. For example, when the terminal is playing the DASH video segment with the number 3, the terminal sends a target key frame acquisition request to the server, an indication field in the target key frame acquisition request is a fast forward field, and after the server parses the target key frame acquisition request, the server determines that a key frame of the DASH video segment with the number 4 is a target key frame, and sends the target key frame to the terminal. The server then continues to send key frames of DASH video segments numbered 5, 6, 7 in sequence to the terminal because the terminal sends a fast forward termination request to the server when the terminal plays DASH video segment numbered 7.
The first embodiment of the invention provides a DASH on demand fast forward and fast reverse method, which comprises the following steps: acquiring each DASH video segment; analyzing each DASH video segment to obtain key frame offset information of each DASH video segment; when receiving a fast forward or fast backward instruction, the terminal sends a target key frame acquisition request; the server acquires a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment; and sending the target key frame to the terminal. The first embodiment of the invention can effectively reduce the data requested by the terminal when the terminal requests the fast-forward and fast-backward service; the time required by the terminal to play the fast-forward and fast-backward content is shortened, and the experience of the user is further improved.
In a second aspect, the embodiment of the invention also provides a DASH on-demand fast-forward and fast-backward system.
Referring to fig. 2, a functional block diagram of a first embodiment of a dash on demand fast forward and reverse system is shown.
In one embodiment, the DASH on-demand fast forward and fast backward system includes:
a terminal 10, configured to send a target key frame acquisition request to a server when receiving a fast forward or fast backward instruction;
Server 20 for:
Acquiring each DASH video segment;
Analyzing each DASH video segment to obtain key frame offset information of each DASH video segment;
acquiring a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment;
the target key frame is transmitted to the terminal 10.
Further, in an embodiment, the terminal 10 is further configured to:
And sending a target key frame acquisition request, wherein the target key frame acquisition request comprises the number of the DASH video segment currently played by the terminal 10 and an indication field, and the indication field is a fast forward field or a fast backward field.
Further, in an embodiment, the server 20 is further configured to:
the server 20 analyzes the target key frame acquisition request to obtain the number and the indication field of the DASH video segment currently played by the terminal 10;
When the indication field is a fast forward field, acquiring a key frame of a next video segment of the DASH video segment currently played by the terminal 10 as a target key frame according to the number of the DASH video segment currently played by the terminal 10 and key frame offset information of each DASH video segment;
when the indication field is a fast-rewinding field, acquiring a key frame of a previous video segment of the DASH video segment currently played by the terminal 10 as a target key frame according to the number of the DASH video segment currently played by the terminal 10 and key frame offset information of each DASH video segment.
Further, in an embodiment, the server 20 is further configured to:
requesting a DASH video-on-demand segment list from a source station;
And analyzing the DASH video-on-demand segment list to obtain each DASH video segment.
Further, in an embodiment, the server 20 is further configured to add key frame offset information of each DASH video segment to the DASH on-demand video segment list.
The function implementation of each module in the DASH on-demand fast forward and fast backward device corresponds to each step in the DASH on-demand fast forward and fast backward method embodiment, and the function and implementation process thereof are not described in detail herein.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system 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 system. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The foregoing embodiment numbers of the present invention are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
From the above description of the embodiments, it will be clear to those skilled in the art that the above-described embodiment method may be implemented by means of software plus a necessary general hardware platform, but of course may also be implemented by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) as described above, comprising several instructions for causing a terminal device to perform the method according to the embodiments of the present invention.
The foregoing description is only of the preferred embodiments of the present invention, and is not intended to limit the scope of the invention, but rather is intended to cover any equivalents of the structures or equivalent processes disclosed herein or in the alternative, which may be employed directly or indirectly in other related arts.
Claims (4)
1. The DASH on-demand fast-forward and fast-backward method is characterized by comprising the following steps of:
Acquiring each DASH video segment;
Analyzing each DASH video segment to obtain key frame offset information of each DASH video segment;
When receiving a fast forward or fast backward instruction, the terminal sends a target key frame acquisition request to a server;
the server acquires a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment;
transmitting the target key frame to the terminal;
the key frame specifically refers to an I frame;
After the step of parsing each DASH video segment to obtain the key frame offset information of each DASH video segment, the method further includes:
adding key frame offset information of each DASH video segment to a DASH video-on-demand segment list;
the action of the server adding the I-frame offset information to the DASH video-on-demand segment list specifically refers to the server writing the I-frame offset information to the slices;
The target key frame acquisition request comprises the number of the DASH video segment currently played by the terminal and an indication field, wherein the indication field is a fast forward field or a fast backward field;
the step of obtaining the target key frame by the server based on the target key frame obtaining request and key frame offset information of each DASH video segment comprises the following steps:
the server analyzes the target key frame acquisition request to obtain the number and the indication field of the DASH video segment currently played by the terminal;
When the indication field is a fast forward field, acquiring a key frame of a next video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment;
and when the indication field is a fast-rewinding field, acquiring a key frame of a previous video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment.
2. The DASH on-demand fast forward and fast backward method of claim 1, wherein the step of obtaining each DASH video segment comprises:
requesting a DASH video-on-demand segment list from a source station;
And analyzing the DASH video-on-demand segment list to obtain each DASH video segment.
3. A DASH on-demand fast forward and fast reverse system, the DASH on-demand fast forward and fast reverse system comprising:
The terminal is used for sending a target key frame acquisition request to the server when receiving a fast forward or fast backward instruction;
a target key frame acquisition request is sent, wherein the target key frame acquisition request comprises the number of a DASH video segment currently played by a terminal and an indication field, and the indication field is a fast forward field or a fast backward field; a server for:
Acquiring each DASH video segment;
Analyzing each DASH video segment to obtain key frame offset information of each DASH video segment;
acquiring a target key frame based on the target key frame acquisition request and key frame offset information of each DASH video segment;
transmitting the target key frame to the terminal;
the server analyzes the target key frame acquisition request to obtain the number and the indication field of the DASH video segment currently played by the terminal;
When the indication field is a fast forward field, acquiring a key frame of a next video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment;
When the indication field is a fast-rewinding field, acquiring a key frame of a previous video segment of the current playing DASH video segment of the terminal as a target key frame according to the number of the current playing DASH video segment of the terminal and key frame offset information of each DASH video segment;
the server is further configured to add key frame offset information of each DASH video segment to a DASH on-demand video segment list;
the key frame specifically refers to an I frame;
The act of the server adding the I-frame offset information to the DASH on-demand video segment list specifically refers to the server writing the I-frame offset information to the tiles.
4. The DASH on-demand fast forward and rewind system of claim 3, wherein the server is further configured to:
requesting a DASH video-on-demand segment list from a source station;
And analyzing the DASH video-on-demand segment list to obtain each DASH video segment.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111384473.2A CN114501166B (en) | 2021-11-18 | 2021-11-18 | DASH on-demand fast-forward and fast-backward method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111384473.2A CN114501166B (en) | 2021-11-18 | 2021-11-18 | DASH on-demand fast-forward and fast-backward method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114501166A CN114501166A (en) | 2022-05-13 |
CN114501166B true CN114501166B (en) | 2024-09-10 |
Family
ID=81492969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111384473.2A Active CN114501166B (en) | 2021-11-18 | 2021-11-18 | DASH on-demand fast-forward and fast-backward method and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114501166B (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017071428A1 (en) * | 2015-10-26 | 2017-05-04 | 中兴通讯股份有限公司 | Fast forward/rewind processing method and terminal |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102487458A (en) * | 2010-12-02 | 2012-06-06 | 中兴通讯股份有限公司 | Method for broadcasting and processing TS (Transport Stream) document and device thereof |
CN102123281A (en) * | 2011-01-07 | 2011-07-13 | 中兴通讯股份有限公司 | Fast forward and fast backward treatment method and device during video playing and mobile terminal |
CN103348690B (en) * | 2011-11-26 | 2016-08-17 | 华为技术有限公司 | A kind of method and device of Video processing |
CN102761773A (en) * | 2012-07-03 | 2012-10-31 | Ut斯达康通讯有限公司 | Method for improving user experience of IPTV (Internet Protocol Television) service by using I frames |
CN103986978A (en) * | 2014-04-14 | 2014-08-13 | 曦威胜科技开发(深圳)有限公司 | Method for achieving functions of fast forward, fast backward and accurate Seek in HLS protocol in expanding mode |
US10652594B2 (en) * | 2016-07-07 | 2020-05-12 | Time Warner Cable Enterprises Llc | Apparatus and methods for presentation of key frames in encrypted content |
CN107634930B (en) * | 2016-07-18 | 2020-04-03 | 华为技术有限公司 | A kind of acquisition method and device of media data |
CN107820115A (en) * | 2017-09-30 | 2018-03-20 | 中兴通讯股份有限公司 | Realize the method, apparatus and client and storage medium of video information preview |
-
2021
- 2021-11-18 CN CN202111384473.2A patent/CN114501166B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017071428A1 (en) * | 2015-10-26 | 2017-05-04 | 中兴通讯股份有限公司 | Fast forward/rewind processing method and terminal |
Also Published As
Publication number | Publication date |
---|---|
CN114501166A (en) | 2022-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2622621C2 (en) | System and method for flow transfer of reproduced content | |
US9344517B2 (en) | Downloading and adaptive streaming of multimedia content to a device with cache assist | |
EP3425921B1 (en) | Method and apparatus for transmitting and receiving adaptive streaming mechanism-based content | |
JP5953307B2 (en) | Client, content creator entity and methods for media streaming by them | |
US20120246335A1 (en) | Method, terminal, and server for implementing fast playout | |
US20130212231A1 (en) | Method, apparatus and system for dynamic media content insertion based on http streaming | |
US20060092938A1 (en) | System for broadcasting multimedia content | |
US20140359679A1 (en) | Content streaming with client device trick play index | |
CN107634930B (en) | A kind of acquisition method and device of media data | |
CN105681912A (en) | Video playing method and device | |
CN102714602A (en) | System and method to deliver multimedia content for display through network | |
EP2493191B1 (en) | Method, device and system for realizing hierarchically requesting content in http streaming system | |
US10116719B1 (en) | Customized dash manifest | |
KR102499231B1 (en) | Receiving device, sending device and data processing method | |
EP3652919A1 (en) | Processing media data using file tracks for web content | |
WO2014193996A2 (en) | Network video streaming with trick play based on separate trick play files | |
KR20200109359A (en) | Video streaming | |
WO2021143360A1 (en) | Resource transmission method and computer device | |
CN103686245A (en) | A method and device for on-demand and live broadcast switching based on HLS protocol | |
CN105828096A (en) | Media stream file processing method and device | |
CN107690093B (en) | Video playing method and device | |
KR102635342B1 (en) | Session-based information for dynamic adaptive streaming over HTTP | |
CN112243158B (en) | Media file processing method and device, computer readable medium and electronic equipment | |
US20230164398A1 (en) | Video stream control | |
CN114501166B (en) | DASH on-demand fast-forward and fast-backward 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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |