CN109756749A - Video data handling procedure, device, server and storage medium - Google Patents

Video data handling procedure, device, server and storage medium Download PDF

Info

Publication number
CN109756749A
CN109756749A CN201711084928.2A CN201711084928A CN109756749A CN 109756749 A CN109756749 A CN 109756749A CN 201711084928 A CN201711084928 A CN 201711084928A CN 109756749 A CN109756749 A CN 109756749A
Authority
CN
China
Prior art keywords
frame
video
time point
multiple images
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711084928.2A
Other languages
Chinese (zh)
Inventor
肖凯
李刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201711084928.2A priority Critical patent/CN109756749A/en
Publication of CN109756749A publication Critical patent/CN109756749A/en
Pending legal-status Critical Current

Links

Abstract

The embodiment of the present application provides a kind of video data handling procedure, device, server and storage medium, to solve the problems, such as that video data cannot be decoded normally.The method includes: to receive video acquisition request;It is starting with the key frame that the video acquisition requests corresponding video frame to be closed on, obtains multiple images frame;The multiple images frame got described in transmission.To which picture frame is that starting is sent with key frame, it is ensured that the picture that can decode display video not will cause the waste of resource.

Description

Video data handling procedure, device, server and storage medium
Technical field
This application involves field of computer technology, more particularly to a kind of video data handling procedure, a kind of video data Processing unit, a kind of server and a kind of storage medium.
Background technique
During being encoded to video, some coding modes be by remove consecutive image duplicate message come Data volume is reduced, improves compression bit rate etc., therefore the picture frame that compression obtains includes key frame and non-key frame, wherein crucial Frame can be decoded independently, and non-key frame cannot be decoded independently.
Therefore during video request plays, according to the corresponding video data of request, if but pushing first Picture frame is the non-key frame that cannot independently decode display, then needs after receiving the key frame that can independently decode display It could show the picture of video, and the non-key frame before the key frame can not decode, also create data waste.
Summary of the invention
The technical problem to be solved in the embodiments of the present application is that a kind of video data handling procedure is provided, to solve video counts The problem of according to cannot normally decode.
Correspondingly, the embodiment of the present application also provides a kind of video data processing apparatus, a kind of server and a kind of storages Medium, to guarantee the implementation and application of the above method.
To solve the above-mentioned problems, the embodiment of the present application discloses a kind of video data handling procedure, comprising: receives video Acquisition request;It is starting with the key frame that the video acquisition requests corresponding video frame to be closed on, obtains multiple images frame;It sends The multiple images frame got.
Optionally, the key frame for requesting corresponding video frame to be closed on the video acquisition is starting, is obtained multiple Picture frame, comprising: request to determine time point according to the video acquisition, determine the time point corresponding video frame and the view The key frame that frequency frame closes on;It is that starting obtains multiple images frame with the key frame closed on.
Optionally, the key frame that the determination time point corresponding video frame and the video frame are closed on, comprising: press According to the timestamp of time point matching video frame, the time point corresponding video frame is determined;It is corresponding with the time point It is inquired on the basis of video frame to direction initialization, using the first key frame inquired as the key frame closed on.
Optionally, described that multiple images frame is obtained for starting with the key frame closed on, comprising: with the pass closed on Key frame is starting, using the time point corresponding video frame as terminal, obtains multiple images frame;By described multiple images frame when Between stamp be revised as the timestamp of the time point corresponding video frame.
Optionally, it is applied to live broadcast system, described multiple images frame is extracted from the caching of live video;The transmission institute State the multiple images frame got, comprising: multiple images frame is constituted into buffered data sequentially in time, sends the buffer number According to.
Optionally, further includes: receive the corresponding video frame of the live video from collection terminal, the video frame is delayed It deposits, wherein described image frame includes key frame and non-key frame.
Optionally, described that the video frame is cached, comprising: the picture frame in the video frame is cached, And abandon the audio frame in the video frame.
The embodiment of the invention also discloses a kind of video data processing apparatus, comprising: receiving module is obtained for receiving video Take request;Module is obtained, the key frame for requesting corresponding video frame to be closed on the video acquisition is starting, is obtained multiple Picture frame;Sending module, for sending the multiple images frame got.
Optionally, the acquisition module, comprising: picture frame determines submodule, for true according to video acquisition request It fixes time a little, determines the key frame that the time point corresponding video frame and the video frame are closed on;Picture frame acquisition submodule, For being that starting obtains multiple images frame with the key frame closed on.
Optionally, described image frame determines submodule, for the timestamp according to time point matching video frame, determines Time point corresponding video frame;It is inquired, will be inquired to direction initialization on the basis of the time point corresponding video frame First key frame as the key frame closed on.
Optionally, described image frame acquisition submodule, for being starting with the key frame closed on, with the time point Corresponding video frame is terminal, obtains multiple images frame;The timestamp of described multiple images frame is revised as the time point pair The timestamp for the video frame answered.
Optionally, it is applied to live broadcast system, described multiple images frame is extracted from the caching of live video;The transmission mould Block sends the buffered data for multiple images frame to be constituted buffered data sequentially in time.
Optionally, further includes: video frame buffer module, for receiving the corresponding video of the live video from collection terminal Frame caches the video frame, wherein described image frame includes key frame and non-key frame.
Optionally, the video frame buffer module for caching to the picture frame in the video frame, and abandons institute State the audio frame in video frame.
The embodiment of the invention also discloses a kind of servers, comprising: one or more processors;It is instructed with being stored thereon with One or more machine readable medias, when by one or more of processors execute when so that the server execute such as Video data processing side method described in one or more in the embodiment of the present invention.
The embodiment of the invention also discloses one or more machine readable medias, are stored thereon with instruction, when by one or When multiple processors execute, so that server executes the video data processing side as described in one or more in the embodiment of the present invention Method.
Compared with prior art, the embodiment of the present application includes the following advantages:
In the embodiment of the present application, it can receive video acquisition request, corresponding video then requested with the video acquisition The key frame that frame closes on is starting, obtains multiple images frame, the multiple images frame got described in transmission, so that picture frame is to close Key frame is that starting is sent, it is ensured that the picture that can decode display video not will cause the waste of resource.
Detailed description of the invention
Fig. 1 is a kind of schematic diagram of processing system for video of the embodiment of the present application;
Fig. 2 is a kind of step flow chart of video data handling procedure embodiment of the application;
Fig. 3 is the step flow chart of the application another kind video data handling procedure embodiment;
Fig. 4 is a kind of step flow chart of the processing method embodiment of live data of the application;
Fig. 5 is a kind of interaction schematic diagram of live broadcast system in the embodiment of the present application;
A kind of structural block diagram of video data processing apparatus embodiment of Fig. 6 the application;
Fig. 7 is the structural block diagram of the application another kind video data processing apparatus embodiment;
Fig. 8 is the structural schematic diagram for the device that one embodiment of the application provides.
Specific embodiment
In order to make the above objects, features, and advantages of the present application more apparent, with reference to the accompanying drawing and it is specific real Applying mode, the present application will be further described in detail.
The video flowing of video can be made of video frame, and video frame includes picture frame and audio frame, and picture frame is for decoding To the image data of live video, audio frame obtains the audio data of live video for decoding, to obtain figure by decoding As data and audio data constitute corresponding live video.Wherein, picture frame includes key frame (I frame) and non-key frame (P frame), I frame is independent decoded picture frame, can independently decode and be shown, and P frame be cannot independent decoded picture frame, that is, need Dependent on before I frame or P frame could decode display.Usually in the transmission process of video frame, the transmission sequence of picture frame It is: ... I P P P P P P P P P P P P P P I P P P P P P P P P P P P P P I ... i.e. picture frame Sequence in, a series of P frames can be transmitted after transmitting an I frame, then transmit an I frame again.Correspondingly, being played playing end After device obtains an I frame, picture codec can be shown at once, and if player obtains being a P frame, it is necessary to before depending on The I frame or P frame on side could decode display.
Therefore, after a broadcasting end request plays video, since the quantity of P frame in the transmission sequence of picture frame is greater than I The quantity of frame, therefore greater probability can be firstly received non-key frame (P frame), be a non-key frame (P what is be firstly received Frame) after, since the non-key frame can not be decoded independently, from the moment until there is first key frame (I frame) Period in, playing end will appear flower screen or blank screen etc., influence the viewing of user and waste of resource.Such as user watches live streaming Video, after request video, maximum probability can be firstly received non-key frame (P frame);For another example user watches during video Click skips some contents come when watching, also greater probability can be firstly received non-key frame (P frame).In order to solve above-mentioned ask Topic, the embodiment of the present application are transmitted since I frame, it is ensured that the image data that can decode display live video not will cause resource Waste.
Processing system for video shown in referring to Fig.1, the processing system for video include collection terminal 10, play end 20 and server-side 30, which can be made of server (cluster).Collection terminal 10 is used to acquire the video frame of video, such as collection terminal is camera shooting Machine, the terminal devices such as mobile phone, tablet computer;End 20 is played for parsing presentation of video frames video, for example, television set, mobile phone, The terminal devices such as tablet computer;Server-side 30, which is used to obtain the video frame of collection terminal and is transmitted to, plays end broadcasting, and services Other needed for end can also carry out video frame are handled, and such as add special efficacy, be associated with different collection terminals, play end etc..Such as In one live broadcast system, main broadcaster is located at collection terminal, and the view of live streaming can be recorded by acquisition equipments such as mobile phone, computer, video cameras Frequency evidence simultaneously encodes upload, and user, which is located at, plays end, and mobile phone, computer etc. can be used and play the video that end equipment selection is broadcast live, and The video data that live streaming is obtained from server plays out.
Wherein, collection terminal 10 can be transferred to server-side 30, server-side 30 in recorded video and after encoding generation video data The video data can be stored, user is playing 20 having video capable of being watched data of end, therefore capable of emitting video acquisition is requested to server-side 30, server-side requests to be that starting obtains picture frame with key frame according to the video acquisition, sends the picture frame that key frame is starting To end is played, so that broadcasting can be decoded since key frame by playing end.Such as in a live broadcast system, collection terminal 10 is recorded directly After broadcasting video data and being encoded into the video frames such as picture frame, audio frame, it is pushed in server-side 30 frame by frame.Server-side 30 is receiving To after the request for playing end, the video frame of live video can be sent to and play end, enable a user to viewing live streaming view Frequently.Specifically, mobile phone, computer etc., which play end equipment, can show the live video that can be played, user may be selected to want viewing Live video generates corresponding video acquisition request, video acquisition request is sent to server-side, server-side can be to the video Acquisition request is parsed, and then determines the corresponding video data of live video of request.
Wherein, server-side can in advance cache the video frame of upload, to be after receiving video acquisition request Ensure that client can parse picture frame, the video acquisition can be obtained from caching, the video frame of corresponding video is requested to be passed It is defeated.Wherein, it can request to determine video frame according to video acquisition, be transmitted since the key frame (such as I frame) that the video frame is closed on, i.e., Multiple images frame the key frame closed on video frame, whithin a period of time is obtained since caching.
Wherein, video acquisition requests corresponding video frame to determine at the time of can corresponding to according to video acquisition request is obtained.Example It is the video frame of the reception in server such as in live broadcast system, can compares according to the corresponding timestamp of video frame and moment It determines, for another example inquire the caching of video, the last one video frame is the video frame of the reception in the caching.The for another example view The request moment is carried in frequency acquisition request, then determines corresponding key frame according to the moment.The key frame that the video frame is closed on refers to Be the key frame closed on the video frame time, the time, which closes on, refers to that the time close, it may include closes on forward and/or backward It closes on, for example, the first key frame before or after the video frame.
Therefore it can request to determine time point according to the video acquisition, determine the time point corresponding video frame and described The key frame that video frame is closed on.It can determine that at the time of receiving video acquisition request be time point, can also be asked from video acquisition Asking middle acquisition is time point at the time of carrying, then using the timestamp of time point inquiry video frame, determines that the video obtains The corresponding video frame of request is taken, then determines the key frame closed on based on the video frame.Wherein it is possible to time point corresponding view On the basis of frequency frame to direction initialization inquire, using the first key frame inquired as the key frame closed on, direction initialization include: to It is preceding or backward, it is such as inquired forward on the basis of the video frame, determines that the first key frame inquired is the key frame closed on, the pass Timestamp of the timestamp of key frame earlier than video frame;It is for another example inquired backward on the basis of the video frame, determination inquires first Key frame is the key frame closed on, and the timestamp of the key frame is later than the timestamp of video frame.
Then the key frame that described can be closed on obtains multiple images frame for starting.If being looked into backward on the basis of video frame It askes, then from the key frame closed on, for starting, successively acquisition multiple images frame is transmitted backward, acquired image frame Quantity can be set according to demand, and for example 1 second, 5 seconds, 3 minutes etc..The present embodiment can also obtain the corresponding audio frame of picture frame together Transmission.
If being inquired forward on the basis of video frame, after determining that first key frame is the key frame closed on, faced with described Close key frame is starting, using the time point corresponding video frame as terminal, obtains multiple images frame, i.e., acquired is multiple Picture frame is the key frame to close on to originate, and using the video frame as terminal.Wherein, the real-times such as live broadcast system are wanted Higher system is sought, the timestamp of described multiple images frame can be also modified, i.e., be revised as the timestamp of described multiple images frame The timestamp of time point corresponding video frame, thus it is subsequent can after the video frame transmit video frame to playing end It plays, reduces delay.
For example, user is when watching video, selection jumps to a certain moment and starts to play, then can generate and regard according to the moment Frequency acquisition request from request at the time of acquisition request, then determines the moment after then server-side receives video acquisition request Corresponding video frame, then determine the key frame that the video frame is closed on, key frame such as is inquired in 1 second, is starting with the key frame, It is fed back after obtaining multiple images frame backward.
For another example apply in live broadcast system, server-side for play end video acquisition request, can according to video frame when Between stab the video frame for determining and receiving the request moment, then the key frame that closes on is determined according to the video frame, as obtained in 1 second to close The multiple images frame of key frame beginning, for another example inquires forward first key frame, is that starting gets the video backward with the key frame The multiple images frame of frame cut-off, and the timestamp of described multiple images frame can be revised as to the time point corresponding video frame Timestamp.In the present embodiment, it also can be used after multiple images frame constitutes buffered data and be sent to broadcasting end.Playing end can solve Analysis multiple images frame simultaneously plays corresponding live video, can transmit collection terminal later and be pushed to the video frame of server-side in real time to broadcasting End is put, allows users to watch live video in real time.
Therefore in above-mentioned video processing mode, can first feed back after the user requested with key frame is the multiple images originated Frame is parsed to broadcasting end, is shown, therefore can be shown the picture of live video playing end but not played sound, and client can later The video frame of following instant in video is received, so as to play the image and sound of live video, user can normally be watched Live video.To be the multiple images frame of starting with key frame by transmission, it is ensured that live video can normally decode display, The waste of resource is not will cause.
Referring to Fig. 2, a kind of step flow chart of video data handling procedure embodiment of the application is shown.
Step 202, video acquisition request is received.
When video will be watched by playing end, video acquisition request, server-side (such as live broadcast system can be generated based on selected video Server or server cluster etc.) can correspond to and receive video acquisition request, video acquisition request is used for request video Data play out, therefore the information of live video, such as video ID can be carried in video acquisition request, thus server-side It can request to determine the video requested according to the video acquisition.
Step 204, it is starting with the key frame that the video acquisition requests corresponding video frame to be closed on, obtains multiple images Frame.
Step 206, the multiple images frame got described in transmission.
In the embodiment of the present application, the video data of video is stored in the database of server-side, therefore obtain based on the video After taking request to determine time point corresponding video frame, the key frame that the video frame is closed on is inquired, is then starting with the key frame Multiple images frame is obtained, sends the multiple images frame got to end is played, to play the received first picture frame in end to close Key frame can normally decode display, not will cause the waste of resource.
For applying in direct broadcast server, direct broadcast server safeguards the caching for having live video, is stored in the caching Video frame of the corresponding live video in nearest a period of time (such as 5,10 minutes).Therefore the live video requested for playing end, It can request to determine time point corresponding video frame based on the video acquisition, inquire the key frame that the video frame is closed in the buffer, It then is that starting obtains multiple images frame with the key frame closed on.Then multiple images frame is sent to end is played, and plays termination Decodable code is shown after receiving multiple images frame.Hereafter, the video frame that server-side pushes collection terminal in real time, which is transmitted to, plays end, from And the broadcasting that real-time video frame is broadcast live video can be decoded by playing end.
In conclusion after receiving video acquisition request, it may be determined that the video acquisition requests corresponding video frame, with And the key frame that video frame is closed on, it is then starting with the key frame that video frame is closed on, obtains multiple images frame, then sends more A picture frame is to end decoding display is played, so that the picture frame for ensuring to transmit by starting using key frame can be aobvious by decoding Show, not will cause the waste of resource.
Referring to Fig. 3, the step flow chart of the application another kind video data handling procedure embodiment is shown.
Step 302, video acquisition request is received.
Step 304, it requests to determine time point according to the video acquisition.
The present embodiment be determined as time point at the time of can receiving video acquisition request, can also request video acquisition Moment is as time point.
Step 306, according to the timestamp of time point matching video frame, the time point corresponding video frame is determined.
The storage information that the video acquisition requests corresponding video can be matched according to the time point, to match using time point The timestamp of picture frame determines time point corresponding video frame.Wherein, for live video data, can also by caching most The latter video frame is determined as time point corresponding video frame.
Step 308, it is inquired on the basis of the time point corresponding video frame to direction initialization, the first pass that will be inquired Key frame is as the key frame closed on.
Then it can be inquired to direction initialization on the basis of the time point corresponding video frame, such as forward or successively inquiry is deposited The picture frame of storage, can be using the first key frame inquired as the key frame closed on.
It step 310, is that starting obtains multiple images frame with the key frame closed on.
Step 312, the multiple images frame got described in transmission.
It is that starting obtains multiple images frame with the key frame closed on, the multiple images then got described in transmission Frame.Wherein, multiple from successively being obtained backward with the key frame closed on for starting if being inquired backward on the basis of video frame Picture frame is transmitted, and the quantity of acquired image frame can be set according to demand, and for example 1 second, 5 seconds, 3 minutes etc..The present embodiment The corresponding audio frame of picture frame can also be obtained to transmit together.Therefore, the multiple figures started with the key frame that video frame is closed on are obtained As frame, it is ensured that the picture frame of transmission can be resolved.If inquiring forward on the basis of video frame, determining that first key frame is It is starting with the key frame closed on after the key frame closed on, using the time point corresponding video frame as terminal, obtains more A picture frame, i.e. acquired multiple images frame are the key frames to close on to originate, and using the video frame as terminal.Its In, system higher for requirement of real-time such as live broadcast systems can also modify the timestamp of described multiple images frame, i.e., will be described The timestamp of multiple images frame is revised as the timestamp of the time point corresponding video frame, thus it is subsequent can from the video frame it After start transmit video frame to play end play, reduce delay.
For being applied to live broadcast system, server can cache collection terminal and upload within nearest a period of time in live broadcast system Video frame, such as the video frame uploaded in 5 minutes, the video frame that collection terminal uploads can be also transmitted in real time to be played end and plays.
Referring to Fig. 4, a kind of step flow chart of the processing method embodiment of live data of the application is shown.
Step 402, the corresponding video frame of live video is received from collection terminal, the video frame is cached.
The coding video frames of recording can be pushed to server-side, so that server-side can after recording live video by collection terminal The video frame of each live video is received, which includes picture frame and audio frame, and picture frame includes key frame and to key Frame.For watching the broadcasting end of live video, the video frame that collection terminal pushes can be transmitted to corresponding broadcasting by server-side End plays.In addition to this, live video start and playing process in, also have other play ends request play the live streamings view Frequently, therefore server-side can safeguard a caching, and the video frame of live video is stored in the caching, guarantee that playing end requests to see at any time It sees.Wherein, video frame can be cached to a buffer area of server-side, the length of buffer area is according to live stream (i.e. video frame) Coding determines, can be arranged between several seconds to more than ten seconds.
I.e. after receiving the corresponding video frame of live video from collection terminal, which can be cached to the live video pair In the caching answered, and it can determine that picture frame is key frame or non-key frame in institute's storage frame in caching.Whether picture frame It can be determined based on parameters such as the attributes of the picture frame for key frame, and go back timestamp, the institute of image recordable frame in attribute Belong to the information such as the ID of live video.
It is to constitute buffered data based on picture frame to send usually in the initial of user's request for the video frame in caching Display is decoded in initial request to end is played, therefore in an alternative embodiment, described to cache to the video frame, packet It includes: the picture frame in the video frame is cached, and abandon the audio frame in the video frame.For collection terminal push Video frame can therefrom obtain picture frame and be cached, and for the audio frame in video frame, it is being transmitted to viewing live video It is i.e. discardable behind each broadcasting end, it is not necessarily to buffered audio frame.Certainly, in further embodiments, asking for process is broadcast live in order to prevent Topic, can also cache picture frame and audio frame.
In another alternative embodiment, after receiving key frame, the picture frame cached before the key frame is abandoned.It gives The buffered data for playing end transmission is started with key frame, is shown so as to guarantee to receive decodable code after buffered data, Therefore, simply by the presence of key frame in the caching of server-side, subsequent to produce buffered data, then server-side can receive key Frame and after being saved in caching, abandons the picture frame cached before the key frame, reduces the hash in caching, lower server-side Burden, and cache in guarantee to store at least one key frame, convenient for being subsequently generated buffered data.The embodiment of the present application In, it is in the process a lasting mistake that the video frame for the live video that collection terminal uploads is received in step 402 and is buffered in live streaming Journey, therefore during step 404- step 4, server-side can constantly receive video frame and cache.
Step 404, video acquisition request is received.
Server-side (server or server cluster of such as live broadcast system), which can correspond to, receives video acquisition request, the video Acquisition request plays live video for requesting, therefore the information of live video, such as video can be carried in video acquisition request ID etc., so that server-side can request to determine the live video of request according to the video acquisition.
Step 406, it requests to determine time point according to the video acquisition, according to the time of time point matching video frame Stamp, determines the time point corresponding video frame.
Step 408, it is inquired forward on the basis of the time point corresponding video frame, the first key frame inquired is made For the key frame closed on.
Server-side can obtain the key frame to close on from caching as multiple images frame in fact, therefore can obtain according to video It takes request to determine time point, i.e., is determined as time point at the time of receiving video acquisition request, is then matched according to the time point The timestamp of video frame, so that it is determined that time point corresponding video frame out.It, can be according to the time point in the buffer in the present embodiment The corresponding picture frame of video frame is matched, such as can be matched forward since last received picture frame in the buffer, usually most Received picture frame is exactly the corresponding picture frame of the video frame afterwards.
Then it can be inquired forward on the basis of time point corresponding video frame, i.e., in the buffer with the corresponding figure of the video frame As being inquired forward according to timestamp, using the first key frame inquired as the key frame closed on, such as in Fig. 5 on the basis of frame Time point corresponding video frame is P6, using the first key frame I2 inquired as the key frame closed on.
Wherein, one or more key frames can be stored in caching, it, can if the buffered data for being transferred to broadcasting end is too long The problem of causing the live video time of occurrence of the subsequent viewing of user to lag, requires emphasis in real time for live broadcast system Property, it is therefore desirable to the problem of reducing time lag to the greatest extent.The present embodiment when constructing buffered data, by the selection of key frame come Guarantee real-time and picture frame decodable code, therefore can determine that time point matches video frame, such as last received figure from caching As frame, then inquired forward since the time point matches video frame, using inquire first key frame as the video frame Close on key frame.
Step 410, it is starting with the key frame closed on, using the time point corresponding video frame as terminal, obtains Multiple images frame.
Step 412, the timestamp of described multiple images frame is revised as to the timestamp of the time point corresponding video frame.
Determining the time point corresponding video frame, and after the key frame closed on, the key that described can be closed on Frame is starting, using the time point corresponding video frame as terminal, multiple images frame is obtained, as in Fig. 5 between I2 to P6 Picture frame.The present embodiment can also modify the corresponding timestamp of acquired multiple images frame, and the timestamp of this multiple images frame is repaired It is changed to the timestamp of the time point corresponding video frame, so as to be the same time by the time stamp setting of each picture frame, i.e., Receive the time point of video acquisition request.
Step 414, multiple images frame is constituted into buffered data sequentially in time, sends the buffered data.
Step 416, the video frame that collection terminal pushes in real time is sent.
The multiple images frame that server-side can also will acquire sequentially in time constitutes buffered data, then sends the buffer number According to, due to the timestamp of picture frame each in buffered data be receive request of data time point, the time can be obtained later Video frame after point is sent to broadcasting end and plays out, to can be shown by decoding in the picture frame for guaranteeing request moment feedback While showing, additionally it is possible to meet the requirement for playing end real-time, sends the video frame that collection terminal pushes in real time and played to end is played, Can effective remission time lag the problem of.Also, it is starting with the key frame closed on, it is corresponding with the time point Video frame is that the usual quantity of multiple images frame of terminal is little, therefore the problem of can also reduce time lag.
A kind of video frame transmission schematic diagram as shown in Figure 5.It, can be by video frame after collection terminal acquires video data and encodes Server-side is uploaded to frame by frame, as picture frame is successively in the video frame that uploads frame by frame in Fig. 5 are as follows: I1, P1, P2, P3, I2, P4, P5, P6、P7、P8……。
Server-side caches received video frame, and during which, user sends video acquisition request, service by playing end After terminating rating frequency acquisition request, request to determine time point according to the video acquisition, then determine the time point corresponding video frame, The time point correspond to video frame picture frame be P6, wherein server-side caching picture frame include: I1, P1, P2, P3, I2, P4, P5, P6, server-side start to search for key frame forward on the basis of P6, and the first key frame I2 searched is the key frame closed on, Then picture frame I2, P4, P5, P6 can be obtained, the timestamp of picture frame I2, P4, P5 are revised as to the timestamp of P6, generates and corresponds to Buffered data, send buffered data give play end.The transmission phase of the real-time video frame of collection terminal push can be entered later, i.e., The video frame of real-time reception is transmitted to and plays end.
To, the buffered data of server-side can determine that being transferred to the first frame for playing end is the key frame that decodable code is shown, And the timestamp of each picture frame in buffered data can be modified, the corresponding audio frame of each picture frame is discardable, to reduce service The data volume at end.To play end receive it is data cached after, can quickly decode display, it is ensured that user can be in a short time Newest live streaming picture is watched, the push being effectively reduced with collection terminal is sluggish, realizes and rises in quick, the low sluggishness for playing end It broadcasts.
It should be noted that for simple description, therefore, it is stated as a series of action groups for embodiment of the method It closes, but those skilled in the art should understand that, the embodiment of the present application is not limited by the described action sequence, because according to According to the embodiment of the present application, some steps may be performed in other sequences or simultaneously.Secondly, those skilled in the art also should Know, the embodiments described in the specification are all preferred embodiments, and related movement not necessarily the application is implemented Necessary to example.
Referring to Fig. 6, a kind of structural block diagram of video data processing apparatus embodiment of the application is shown, can specifically include Following module:
Receiving module 602, for receiving video acquisition request.
Module 604 is obtained, the key frame for requesting corresponding video frame to be closed on the video acquisition is starting, is obtained Multiple images frame.
Sending module 606, for sending the multiple images frame got.
To sum up, after receiving video acquisition request, it may be determined that the video acquisition requests corresponding video frame, and view Then the key frame that frequency frame closes on is starting with the key frame that video frame is closed on, obtains multiple images frame, then send multiple figures It is shown as frame is decoded to broadcasting end, so that the picture frame for ensuring to transmit by starting using key frame can be shown by decoding, no It will cause the waste of resource.
Referring to Fig. 7, the structural block diagram of the application another kind video data processing apparatus embodiment is shown, specifically can wrap Include following module:
Video frame buffer module 608, for receiving the corresponding video frame of the live video from collection terminal, to the video Frame is cached, wherein described image frame includes key frame and non-key frame.
Receiving module 602, for receiving video acquisition request.
Module 604 is obtained, the key frame for requesting corresponding video frame to be closed on the video acquisition is starting, is obtained Multiple images frame.
Sending module 606, for sending the multiple images frame got.
Wherein, the acquisition module 604, comprising: picture frame determines submodule 6042 and picture frame acquisition submodule 6044.
Picture frame determines submodule 6042, determines time point for requesting according to the video acquisition, determines the time The key frame that the corresponding video frame of point and the video frame are closed on.
Picture frame acquisition submodule 6044, for being that starting obtains multiple images frame with the key frame closed on.
Described image frame determines submodule 6042, for the timestamp according to time point matching video frame, determines institute State time point corresponding video frame;It is inquired on the basis of the time point corresponding video frame to direction initialization, by what is inquired First key frame is as the key frame closed on.
Described image frame acquisition submodule 6044 is starting with the key frame closed on, corresponding with the time point Video frame is terminal, obtains multiple images frame;The timestamp of described multiple images frame is revised as the time point corresponding view The timestamp of frequency frame.
The device of the embodiment of the present application can be applied to live broadcast system, and described multiple images frame is mentioned from the caching of live video It takes, i.e., the described acquisition module 604 extracts multiple images frame from the caching of live video.The then sending module 606, for pressing Multiple images frame is constituted into buffered data according to time sequencing, sends the buffered data
The video frame buffer module 608 for caching to the picture frame in the video frame, and abandons the view Audio frame in frequency frame.
One or more key frames can be stored in caching in live broadcast system, if being transferred to the buffered data mistake for playing end The problem of growing, then will lead to the live video time of occurrence lag of the subsequent viewing of user needs strong for live broadcast system Adjust real-time, it is therefore desirable to the problem of reducing time lag to the greatest extent.The present embodiment passes through key frame when constructing buffered data It chooses to guarantee real-time and picture frame decodable code, therefore can determine that time point matches video frame from caching, be such as most followed by Then the picture frame of receipts is inquired forward since the time point matches video frame, using inquire first key frame as this Video frame closes on key frame.
The buffered data of server-side can determine that being transferred to the first frame for playing end is the key frame that decodable code is shown, and can The timestamp of each picture frame in buffered data is modified, the corresponding audio frame of each picture frame is discardable, to reduce the number of server-side According to amount.To play end receive it is data cached after, can quickly decode display, it is ensured that user can watch in a short time Newest live streaming picture, the push being effectively reduced with collection terminal is sluggish, realizes and broadcasts in quick, low sluggish rise for playing end.
Embodiment of the disclosure can be implemented as using any suitable hardware, firmware, software, or and any combination thereof into The device of the desired configuration of row, which may include the electronic equipments such as server (cluster), terminal device.Fig. 8 schematically shows The exemplary means 800 that can be used for realizing each embodiment described herein are gone out.
For one embodiment, Fig. 8 shows exemplary means 800, the device have one or more processors 802, It is coupled to the control module (chipset) 804 of at least one of (one or more) processor 802, is coupled to control mould The memory 806 of block 804, is coupled nonvolatile memory (the NVM)/storage equipment 808 for being coupled to control module 804 To one or more input-output apparatus 810 of control module 804, and it is coupled to the network interface of control module 806 812。
Processor 802 may include one or more single or multiple core processors, processor 802 may include general processor or Any combination of application specific processor (such as graphics processor, application processor, Baseband processor etc.).In some embodiments, Device 800 can be as equipment such as the servers at transcoding end described in the embodiment of the present application.
In some embodiments, device 800 may include one or more computer-readable medium (examples with instruction 814 Such as, memory 806 or NVM/ store equipment 808) and mutually merge with the one or more computer-readable medium and be configured as Execute instruction 814 one or more processors 802 to realize module thereby executing movement described in the disclosure.
For one embodiment, control module 804 may include any suitable interface controller, with to (one or more) At least one of processor 802 and/or any suitable equipment communicated with control module 804 or component provide any appropriate Interface.
Control module 804 may include Memory Controller module, to provide interface to memory 806.Memory Controller Module can be hardware module, software module and/or firmware module.
Memory 806 can be used for for example, load of device 800 and storing data and/or instruction 814.One is implemented Example, memory 806 may include any suitable volatile memory, for example, DRAM appropriate.In some embodiments, it stores Device 806 may include four Synchronous Dynamic Random Access Memory of Double Data Rate type (DDR4SDRAM).
For one embodiment, control module 804 may include one or more i/o controllers, to deposit to NVM/ It stores up equipment 808 and (one or more) input-output apparatus 810 provides interface.
For example, NVM/ storage equipment 808 can be used for storing data and/or instruction 814.NVM/ storage equipment 808 can wrap It includes any suitable nonvolatile memory (for example, flash memory) and/or may include that any suitable (one or more) is non-volatile Property storage equipment (for example, one or more hard disk drive (HDD), one or more CD (CD) drivers and/or one or Multiple digital versatile disc (DVD) drivers).
NVM/ storage equipment 808 may include a part for the equipment being physically mounted on as device 800 Storage resource or its a part that the equipment can be not necessarily as by equipment access.For example, NVM/ storage equipment 808 can It is accessed by network via (one or more) input-output apparatus 810.
(one or more) input-output apparatus 810 can be provided for device 800 interface with other any equipment appropriate Communication, input-output apparatus 810 may include communication component, audio component, sensor module etc..Network interface 812 can be dress 800 offer interfaces are set with by one or more network communications, device 800 can according to one or more wireless network standards and/ Or arbitrary standards in agreement and/or agreement are carried out wireless communication with the one or more components of wireless network, such as are accessed Wireless network based on communication standard, such as WiFi, 2G, 3G, 4G or their combination carry out wireless communication.
For one embodiment, at least one of (one or more) processor 802 can be with one of control module 804 Or the logic of multiple controllers (for example, Memory Controller module) is packaged together.For one embodiment, (one or more It is a) at least one of processor 802 can be packaged together with the logic of one or more controllers of control module 804 with shape At system in package (SiP).For one embodiment, at least one of (one or more) processor 802 can be with control mould The logic of one or more controllers of block 804 is integrated on same mold.For one embodiment, (one or more) processing At least one of device 802 can be integrated on same mold with the logic of one or more controllers of control module 804 with shape At system on chip (SoC).
In various embodiments, device 800 can be, but not limited to be: server, desk-top calculating equipment or mobile computing are set Terminal devices such as standby (for example, lap-top computing devices, handheld computing device, tablet computer, net books etc.).In each embodiment In, device 800 can have more or fewer components and/or different frameworks.For example, in some embodiments, device 800 wraps Include one or more video cameras, keyboard, liquid crystal display (LCD) screen (including touch screen displays), nonvolatile memory end Mouth, mutiple antennas, graphic chips, specific integrated circuit (ASIC) and loudspeaker.
For device embodiment, since it is basically similar to the method embodiment, related so being described relatively simple Place illustrates referring to the part of embodiment of the method.
All the embodiments in this specification are described in a progressive manner, the highlights of each of the examples are with The difference of other embodiments, the same or similar parts between the embodiments can be referred to each other.
It should be understood by those skilled in the art that, the embodiments of the present application may be provided as method, apparatus or calculating Machine program product.Therefore, the embodiment of the present application can be used complete hardware embodiment, complete software embodiment or combine software and The form of the embodiment of hardware aspect.Moreover, the embodiment of the present application can be used one or more wherein include computer can With in the computer-usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) of program code The form of the computer program product of implementation.
The embodiment of the present application is referring to according to the method for the embodiment of the present application, terminal device (system) and computer program The flowchart and/or the block diagram of product describes.It should be understood that flowchart and/or the block diagram can be realized by computer program instructions In each flow and/or block and flowchart and/or the block diagram in process and/or box combination.It can provide these Computer program instructions are set to general purpose computer, special purpose computer, Embedded Processor or other programmable data processing terminals Standby processor is to generate a machine, so that being held by the processor of computer or other programmable data processing terminal devices Capable instruction generates for realizing in one or more flows of the flowchart and/or one or more blocks of the block diagram The device of specified function.
These computer program instructions, which may also be stored in, is able to guide computer or other programmable data processing terminal devices In computer-readable memory operate in a specific manner, so that instruction stored in the computer readable memory generates packet The manufacture of command device is included, which realizes in one side of one or more flows of the flowchart and/or block diagram The function of being specified in frame or multiple boxes.
These computer program instructions can also be loaded into computer or other programmable data processing terminal devices, so that Series of operation steps are executed on computer or other programmable terminal equipments to generate computer implemented processing, thus The instruction executed on computer or other programmable terminal equipments is provided for realizing in one or more flows of the flowchart And/or in one or more blocks of the block diagram specify function the step of.
Although preferred embodiments of the embodiments of the present application have been described, once a person skilled in the art knows bases This creative concept, then additional changes and modifications can be made to these embodiments.So the following claims are intended to be interpreted as Including preferred embodiment and all change and modification within the scope of the embodiments of the present application.
Finally, it is to be noted that, herein, relational terms such as first and second and the like be used merely to by One entity or operation are distinguished with another entity or operation, without necessarily requiring or implying these entities or operation Between there are any actual relationship or orders.Moreover, the terms "include", "comprise" or its any other variant meaning Covering non-exclusive inclusion, so that process, method, article or terminal device including a series of elements not only wrap Those elements are included, but also including other elements that are not explicitly listed, or further includes for this process, method, article Or the element that terminal device is intrinsic.In the absence of more restrictions, being wanted by what sentence "including a ..." limited Element, it is not excluded that there is also other identical elements in process, method, article or the terminal device for including the element.
Above to a kind of video data handling procedure provided herein, a kind of video data processing apparatus, a kind of clothes It is engaged in device and a kind of storage medium, is described in detail, used herein principle and embodiment party of the specific case to the application Formula is expounded, the description of the example is only used to help understand the method for the present application and its core ideas;Meanwhile it is right In those of ordinary skill in the art, according to the thought of the application, change is had in specific embodiments and applications Place, in conclusion the contents of this specification should not be construed as limiting the present application.

Claims (16)

1. a kind of video data handling procedure characterized by comprising
Receive video acquisition request;
It is starting with the key frame that the video acquisition requests corresponding video frame to be closed on, obtains multiple images frame;
The multiple images frame got described in transmission.
2. the method according to claim 1, wherein described request corresponding video frame to be faced with the video acquisition Close key frame is starting, obtains multiple images frame, comprising:
It requests to determine time point according to the video acquisition, determines that the time point corresponding video frame and the video frame are closed on Key frame;
It is that starting obtains multiple images frame with the key frame closed on.
3. according to the method described in claim 2, it is characterized in that, the determination time point corresponding video frame and described The key frame that video frame is closed on, comprising:
According to the timestamp of time point matching video frame, the time point corresponding video frame is determined;
It is inquired on the basis of the time point corresponding video frame to direction initialization, using the first key frame inquired as closing on Key frame.
4. according to the method described in claim 2, it is characterized in that, described multiple for starting acquisition with the key frame closed on Picture frame, comprising:
It is starting with the key frame closed on, using the time point corresponding video frame as terminal, obtains multiple images frame;
The timestamp of described multiple images frame is revised as to the timestamp of the time point corresponding video frame.
5. method according to claim 1 to 4, which is characterized in that be applied to live broadcast system, described multiple images frame It is extracted from the caching of live video;
The multiple images frame got described in the transmission, comprising: multiple images frame is constituted into buffered data sequentially in time, Send the buffered data.
6. according to the method described in claim 5, it is characterized by further comprising:
The corresponding video frame of the live video is received from collection terminal, the video frame is cached, wherein described image frame Including key frame and non-key frame.
7. according to the method described in claim 6, it is characterized in that, described cache the video frame, comprising:
Picture frame in the video frame is cached, and abandons the audio frame in the video frame.
8. a kind of video data processing apparatus characterized by comprising
Receiving module, for receiving video acquisition request;
Module is obtained, the key frame for requesting corresponding video frame to be closed on the video acquisition is starting, obtains multiple figures As frame;
Sending module, for sending the multiple images frame got.
9. device according to claim 8, which is characterized in that the acquisition module, comprising:
Picture frame determines submodule, determines time point for requesting according to the video acquisition, determines that the time point is corresponding The key frame that video frame and the video frame are closed on;
Picture frame acquisition submodule, for being that starting obtains multiple images frame with the key frame closed on.
10. device according to claim 9, which is characterized in that
Described image frame determines submodule, for the timestamp according to time point matching video frame, determines the time point Corresponding video frame;It is inquired on the basis of the time point corresponding video frame to direction initialization, the first key that will be inquired Frame is as the key frame closed on.
11. device according to claim 9, which is characterized in that
Described image frame acquisition submodule, for being starting with the key frame closed on, with the time point corresponding video Frame is terminal, obtains multiple images frame;The timestamp of described multiple images frame is revised as the time point corresponding video frame Timestamp.
12. according to any device of claim 8-11, which is characterized in that be applied to live broadcast system, described multiple images Frame is extracted from the caching of live video;
The sending module sends the buffered data for multiple images frame to be constituted buffered data sequentially in time.
13. device according to claim 12, which is characterized in that further include:
Video frame buffer module carries out the video frame for receiving the corresponding video frame of the live video from collection terminal Caching, wherein described image frame includes key frame and non-key frame.
14. device according to claim 13, which is characterized in that
The video frame buffer module for caching to the picture frame in the video frame, and abandons in the video frame Audio frame.
15. a kind of server characterized by comprising
One or more processors;With
One or more machine readable medias of instruction are stored thereon with, when being executed by one or more of processors, are made Obtain video data processing side method of the server execution as described in one or more in claim 1-7.
16. one or more machine readable medias, are stored thereon with instruction, when executed by one or more processors, so that Server executes the video data processing side method as described in one or more in claim 1-7.
CN201711084928.2A 2017-11-07 2017-11-07 Video data handling procedure, device, server and storage medium Pending CN109756749A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711084928.2A CN109756749A (en) 2017-11-07 2017-11-07 Video data handling procedure, device, server and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711084928.2A CN109756749A (en) 2017-11-07 2017-11-07 Video data handling procedure, device, server and storage medium

Publications (1)

Publication Number Publication Date
CN109756749A true CN109756749A (en) 2019-05-14

Family

ID=66401063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711084928.2A Pending CN109756749A (en) 2017-11-07 2017-11-07 Video data handling procedure, device, server and storage medium

Country Status (1)

Country Link
CN (1) CN109756749A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110784740A (en) * 2019-11-25 2020-02-11 北京三体云时代科技有限公司 Video processing method, device, server and readable storage medium
CN111405358A (en) * 2020-03-24 2020-07-10 上海依图网络科技有限公司 Cache-based video frame extraction method, apparatus, medium, and system
CN111526387A (en) * 2020-03-30 2020-08-11 北京达佳互联信息技术有限公司 Video processing method and device, electronic equipment and storage medium
WO2021051912A1 (en) * 2019-09-19 2021-03-25 华为技术有限公司 Media data transmission method and related device
CN112565886A (en) * 2020-12-29 2021-03-26 北京奇艺世纪科技有限公司 Video frame extraction method and device, electronic equipment and readable storage medium
CN112584081A (en) * 2020-12-01 2021-03-30 北京融讯科创技术有限公司 Video transmission method and device, electronic equipment and storage medium
CN112822503A (en) * 2020-12-30 2021-05-18 腾讯科技(深圳)有限公司 Method, device and equipment for playing live video stream and storage medium
CN113591524A (en) * 2020-04-30 2021-11-02 聚好看科技股份有限公司 Display device and interface display method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103348690A (en) * 2011-11-26 2013-10-09 华为技术有限公司 Video processing method and device
CN104185037A (en) * 2014-02-28 2014-12-03 无锡天脉聚源传媒科技有限公司 Method, device and system for transmitting and playing video
CN106488273A (en) * 2016-10-10 2017-03-08 广州酷狗计算机科技有限公司 A kind of method and apparatus of transmission live video
CN106791994A (en) * 2016-12-30 2017-05-31 北京奇艺世纪科技有限公司 A kind of low delay quickly starts broadcasting method and device
US20170163703A1 (en) * 2015-12-03 2017-06-08 Le Holdings (Beijing) Co., Ltd. Player-based play method and device
CN107147919A (en) * 2017-06-19 2017-09-08 网宿科技股份有限公司 It is live quickly to open broadcasting method and system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103348690A (en) * 2011-11-26 2013-10-09 华为技术有限公司 Video processing method and device
CN104185037A (en) * 2014-02-28 2014-12-03 无锡天脉聚源传媒科技有限公司 Method, device and system for transmitting and playing video
US20170163703A1 (en) * 2015-12-03 2017-06-08 Le Holdings (Beijing) Co., Ltd. Player-based play method and device
CN106488273A (en) * 2016-10-10 2017-03-08 广州酷狗计算机科技有限公司 A kind of method and apparatus of transmission live video
CN106791994A (en) * 2016-12-30 2017-05-31 北京奇艺世纪科技有限公司 A kind of low delay quickly starts broadcasting method and device
CN107147919A (en) * 2017-06-19 2017-09-08 网宿科技股份有限公司 It is live quickly to open broadcasting method and system

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021051912A1 (en) * 2019-09-19 2021-03-25 华为技术有限公司 Media data transmission method and related device
CN110784740A (en) * 2019-11-25 2020-02-11 北京三体云时代科技有限公司 Video processing method, device, server and readable storage medium
CN111405358A (en) * 2020-03-24 2020-07-10 上海依图网络科技有限公司 Cache-based video frame extraction method, apparatus, medium, and system
CN111526387A (en) * 2020-03-30 2020-08-11 北京达佳互联信息技术有限公司 Video processing method and device, electronic equipment and storage medium
CN111526387B (en) * 2020-03-30 2022-09-23 北京达佳互联信息技术有限公司 Video processing method and device, electronic equipment and storage medium
CN113591524A (en) * 2020-04-30 2021-11-02 聚好看科技股份有限公司 Display device and interface display method
CN112584081A (en) * 2020-12-01 2021-03-30 北京融讯科创技术有限公司 Video transmission method and device, electronic equipment and storage medium
CN112565886A (en) * 2020-12-29 2021-03-26 北京奇艺世纪科技有限公司 Video frame extraction method and device, electronic equipment and readable storage medium
CN112822503A (en) * 2020-12-30 2021-05-18 腾讯科技(深圳)有限公司 Method, device and equipment for playing live video stream and storage medium

Similar Documents

Publication Publication Date Title
US10547850B2 (en) Audio splitting with codec-enforced frame sizes
CN109756749A (en) Video data handling procedure, device, server and storage medium
JP6783293B2 (en) Synchronizing multiple over-the-top streaming clients
US10911512B2 (en) Personalized content streams using aligned encoded content segments
US10277927B2 (en) Movie package file format
US20170302988A1 (en) Method And System For Realizing Streaming Media Data Seamlessly Connecting In Intelligent Home
US20110138429A1 (en) System and method for delivering selections of multi-media content to end user display systems
US11128897B2 (en) Method for initiating a transmission of a streaming content delivered to a client device and access point for implementing this method
CN101378490B (en) Device, client terminal and method for implementing stream medium video order programme
US20210021655A1 (en) System and method for streaming music on mobile devices
CN113141522B (en) Resource transmission method, device, computer equipment and storage medium
KR20200109359A (en) Video streaming
US20110276662A1 (en) Method of constructing multimedia streaming file format, and method and apparatus for servicing multimedia streaming using the multimedia streaming file format

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190514

RJ01 Rejection of invention patent application after publication