CN102905188A - Video code stream switching method and device - Google Patents

Video code stream switching method and device Download PDF

Info

Publication number
CN102905188A
CN102905188A CN2012104317083A CN201210431708A CN102905188A CN 102905188 A CN102905188 A CN 102905188A CN 2012104317083 A CN2012104317083 A CN 2012104317083A CN 201210431708 A CN201210431708 A CN 201210431708A CN 102905188 A CN102905188 A CN 102905188A
Authority
CN
China
Prior art keywords
code stream
primitive
video
broadcast
playing
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.)
Granted
Application number
CN2012104317083A
Other languages
Chinese (zh)
Other versions
CN102905188B (en
Inventor
邓治民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201210431708.3A priority Critical patent/CN102905188B/en
Publication of CN102905188A publication Critical patent/CN102905188A/en
Application granted granted Critical
Publication of CN102905188B publication Critical patent/CN102905188B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The embodiment of the invention discloses a video code stream switching method, which comprises the following steps of: after a code stream switching trigger is received, continuously playing a first playing basic element of the current code stream video in a video data cache region; and before at least one first playing basic element in the video data cache region is not finished being played, connecting a target code stream video file, and loading a second playing basic element of a target code stream video corresponding to a time start point in the target code stream video file by taking playing finish time of the non-played or non-finished first playing basic element as the time start point. The embodiment of the invention also provides a video code stream switching device. By the scheme of the embodiment of the invention, video code streams can be smoothly switched; and phenomena of stumble and blank screen are avoided.

Description

A kind of video code flow changing method and device
Technical field
The application relates to technical field of information processing, particularly relates to a kind of video code flow changing method and corresponding device thereof.
Background technology
In the normal play situation that guarantees video, the factors such as different computer configurations, video bandwidth, network state determine that the video code flow of player carrying is not identical yet, therefore, usually need between the different video code stream, switch, switch to target video code stream life period by former video code flow and postpone.When this time delay surpasses certain threshold values, " card pauses " phenomenon will appear in video playback, namely occur in the video display process pausing, even the long video data loss that occurs of time delay, cause " blank screen ".This shows that video code flow switches the result of broadcast that whether smoothly will have influence on video, reduce the good rating of user and experience.
A kind of mode that realizes that video code flow switches of prior art is: when receiving the video code flow handover trigger, video player stops the video playback of current video code stream immediately, the physical file that the linking objective video code flow is corresponding, and load the corresponding video data of this physical file, thereby the video playback of opening the target video code stream.Yet, because the physical file that the select target video code flow is corresponding postpones with the operation life period that loads video data, even the video data that former video code flow is play docks fully with the video data that the target video code stream is play, under the effect of this time delay, video data before and after switching is play and is not realized seamlessly transitting, cause " card pauses " phenomenon, even " blank screen ".
Summary of the invention
For solving the problems of the technologies described above, the embodiment of the present application provides a kind of video code flow changing method and corresponding device thereof, and seamlessly transitting before and after switching with the realization video code flow avoids occurring " card pauses " phenomenon, even " blank screen ".
The video code flow changing method that the embodiment of the present application provides comprises:
After receiving the code stream handover trigger, continue the first broadcast primitive of the current code stream video in the playing video data buffer area;
Before at least one first broadcast primitive in the video data buffer area does not play, linking objective code stream video file, take first a broadcast concluding time of playing primitive of not playing or not playing as start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
Preferably, after receiving the code stream handover trigger, if there are a plurality of the first broadcast primitives of not playing in the video data buffer area, then the broadcast concluding time of each the first broadcast primitive of calculating and pre-set threshold value is poor, play the broadcast concluding time of primitive as start time take first of difference minimum, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast, and the time that described pre-set threshold value is play primitive according to second of linking objective code stream video file and loaded targets code stream video is determined.
Preferably, after the first broadcast concluding time of playing primitive that one of selection from the video data buffer area is not play or do not played is start time, the first broadcast primitive that other are not play in the deletion video data buffer area.
Preferably, described code stream handover trigger comprises:
The code stream handoff notification message that listen for user is sent triggers code stream and switches after listening to notification message; And/or monitoring network transfer of data situation triggers code stream when pre-conditioned and switches when the network data transmission situation satisfies.
Preferably, described the first broadcast primitive, the second broadcast primitive are video TAG.
The embodiment of the present application also provides a kind of video code flow switching device shifter.This device comprises: trigger receiving element, video playback unit, file linkage unit and loading unit, wherein:
Described triggering receiving element is used for receiving the code stream handover trigger;
Described video playback unit is used for after receiving the code stream handover trigger, continues the first broadcast primitive of the current code stream video in the playing video data buffer area;
Described file linkage unit, at least one that is used in the video data buffer area first play before primitive do not play linking objective code stream video file;
Described loading unit, at least one that is used in the video data buffer area first play before primitive do not play, take first a broadcast concluding time of playing primitive of not playing or not playing as start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
Preferably, after receiving the code stream handover trigger, if there are a plurality of the first broadcast primitives of not playing in the video data buffer area, then described loading unit comprises computation subunit and loads subelement, wherein:
Described computation subunit be used for to be calculated the poor of each first broadcast concluding time of playing primitive and pre-set threshold value, and the time that described pre-set threshold value is play primitive according to second of linking objective code stream video file and loaded targets code stream video is definite;
Described loading subelement, be used for the first broadcast concluding time of playing primitive take the difference minimum as start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
Preferably, described device also comprises delete cells, be used for after the first broadcast concluding time of playing primitive of not playing or do not play from one of video data buffer area selection is start time the first broadcast primitive that other are not play in the deletion video data buffer area.
Preferably, the code stream handover trigger that receives of described triggering receiving element comprises: listen to the code stream handover trigger after the code stream handoff notification message that the user sends; And/or, monitor the network data transmission situation and satisfy code stream handover trigger when pre-conditioned.
Preferably, described the first broadcast primitive, the second broadcast primitive are video TAG.
The embodiment of the present application is put first of current code stream video in the video data buffer area and is play primitive receiving the follow-up continued broadcasting of video code flow handover trigger, before at least one first broadcast primitive did not play, second of the physical file of linking objective video code flow and loaded targets code stream video play primitive for playing.Compared with prior art, because before the first broadcast primitive of the embodiment of the present application in the video data buffer area plays, load second of target code stream video and play primitive, thereby so that the broadcast of current code stream video and target code stream video is continuous, realized seamlessly transitting, avoided appearance " card pauses ", even " blank screen " phenomenon.
Description of drawings
In order to be illustrated more clearly in the embodiment of the present application or technical scheme of the prior art, the below will do to introduce simply to the accompanying drawing of required use in embodiment or the description of the Prior Art, apparently, the accompanying drawing that the following describes only is some embodiment that put down in writing among the application, for those of ordinary skills, under the prerequisite of not paying creative work, can also obtain according to these accompanying drawings other accompanying drawing.
Fig. 1 is the flow chart of an embodiment of the application's video code flow changing method;
Fig. 2 is the flow chart of another embodiment of the application's video code flow changing method;
Fig. 3 is the application's video data buffer area schematic diagram;
Fig. 4 is the structured flowchart of embodiment of the application's video code flow switching device shifter.
Embodiment
In order to make those skilled in the art person understand better technical scheme among the application, below in conjunction with the accompanying drawing in the embodiment of the present application, technical scheme in the embodiment of the present application is clearly and completely described, obviously, described embodiment only is the application's part embodiment, rather than whole embodiment.Based on the embodiment among the application, those of ordinary skills are not making the every other embodiment that obtains under the creative work prerequisite, all should belong to the scope of the application's protection.
For above-mentioned purpose, the feature and advantage that make the application can become apparent more, below in conjunction with the drawings and specific embodiments the application is described in further detail.
Referring to Fig. 1, the figure shows the flow process of an embodiment of the application's video code flow changing method.This embodiment comprises:
Step S101: after receiving the code stream handover trigger, continue the first broadcast primitive of the current code stream video in the playing video data buffer area;
The data traffic of video code flow reflecting video file within the unit interval is the pith of image quality control in the Video coding.Equal resolution, the code stream of video file is larger, and image quality is higher.In the actual play process of video, because a variety of causes may cause the switching of video code flow, to adapt to the broadcast needs.Cause the reason difference that code stream switches, also may there be difference in the triggering form that code stream switches.
Such as, when video code flow switches when being caused by specifying of user, can be by the realization of intercepting of code stream handoff notification message that the user is sent be set, the notification message when listening to the user and sending then triggers code stream and switches.Also such as, be when being caused by factors such as network environments when video code flow switches, can realize by the monitoring that arranges the network environment factor, satisfy pre-conditionedly when monitoring the network environment factor, then trigger code stream and switch.The network environment factor here can be the network bandwidth, network data transmission etc.Take the network data transmission situation as example, if the current network user is more, transfer of data is comparatively blocked up, when the transmission rate of network data transmission during less than certain pre-set threshold value, think that then needing to trigger code stream switches, and switches on the video code flow corresponding with this network transmission speed.It should be noted that: here pre-conditioned can be the plyability condition, such as, when the Internet Transmission situation is in an interval range, trigger the switching between current code stream and the first object code stream, when the Internet Transmission situation is in another interval range, trigger the switching between current code stream and the second target code stream.
The video data buffer area is for the broadcast primitive of buffer memory video file to be played.In actual play video file process, because video file is larger, usually a large video file need to be cut into several little " fragments ", the play start time of these " fragments " and concluding time consist of the complete playing duration of whole video file continuously.A kind of mode of cutting video file of standard is that a video file is resolved to a plurality of video TAG.Each " fragment " can be described as one and plays primitive, plays primitive for one and is loaded into as a whole internal memory for player plays.Can have one or several broadcast primitives in the video data buffer area, its concrete quantity plays the size of primitive by one and the size of video data buffer area determines.After receiving the code stream handover trigger, present embodiment does not stop to playing the broadcast of primitive, with the broadcast primitive of not playing in the normal mode continuation playing video data buffer area.The broadcast that does not stop broadcast primitive in the video data buffer area can realize by safeguarding the own independent video data buffer area of controlling.If there are a plurality of broadcast primitives in the video data buffer area, player will be according to the play start time played in order of playing primitive.
Step S102: before at least one the first broadcast primitive in the video data buffer area does not play, linking objective code stream video file, take first a broadcast concluding time of playing primitive of not playing or not playing as start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast;
Before whole broadcast primitives after receiving the code stream handover trigger in the video data buffer area play during this period of time in, present embodiment will be finished two operations: the one, linking objective code stream video file.Because different video code flow, the compression factor of corresponding video file is different, usually identical video file forms respectively different physical files according to different code stream needs, after receiving the code stream handover trigger, namely be connected to video physical file corresponding to target code stream, in order to therefrom obtain the broadcast primitive corresponding with the consecutive new code stream of the broadcast primitive of current broadcast.The 2nd, second of loaded targets code stream video plays primitive from target code stream video file, what the start time of the broadcast primitive that loads can be that any one is not play in the video data buffer area first plays primitive, is perhaps playing but the first broadcast concluding time of playing primitive of not playing.After second of target code stream video file play primitive and be loaded into the video data buffer area, player will be play corresponding broadcast primitive according to the time order and function (play start time) of playing primitive itself.Finished by a video code flow (being aforesaid current code stream) to the switching another video code flow (target code stream) by aforementioned two operations.
Present embodiment is put first of current code stream video in the video data buffer area and is play primitive receiving the follow-up continued broadcasting of video code flow handover trigger, before at least one first broadcast primitive did not play, second of the physical file of linking objective video code flow and loaded targets code stream video play primitive for playing.Compared with prior art, because before the first broadcast primitive of the embodiment of the present application in the video data buffer area plays, load second of target code stream video and play primitive, thereby so that the broadcast of current code stream video and target code stream video is continuous, realized seamlessly transitting, avoided appearance " card pauses ", even " blank screen " phenomenon.
In the aforementioned embodiment, although in the video data buffer area, select arbitrarily first a broadcast primitive of not playing and it play concluding time as the second mode of playing the load time starting point of primitive is not hindered the realization of the present application purpose, but, in actual application, if there are a plurality of the first broadcast primitives of not playing in the video data buffer area, if what select is that first after leaning on the time play primitive, so after finishing the linking objective video file and loading the operation of the second broadcast primitive, in the video data buffer area first play primitive and also do not played, and caused improper " delays " to the response of video code flow switching.In order to address this problem, the application provides another embodiment, this embodiment exists in the video data buffer area in the situation of a plurality of the first broadcast primitives of not playing, has provided the strategy of selecting the first broadcast primitive, thus the response time that " compression " switches video code flow.
Referring to Fig. 2, the figure shows the flow process of the video code flow changing method of this another embodiment.This embodiment comprises:
Step S201: receive the code stream handover trigger;
Step S202: trigger follow-up continued broadcasting and put first of current code stream video in the video data buffer area and play primitive receiving code stream;
Step S203: calculate the poor of each first broadcast concluding time of playing primitive and pre-set threshold value, the time that described pre-set threshold value is play primitive according to second of linking objective code stream video file and loaded targets code stream video is definite;
The broadcast concluding time of each the first broadcast primitive in the video data buffer area is different, therefore, each the first broadcast concluding time and pre-set threshold value of playing primitive can be asked poor, in order to therefrom select suitable broadcast primitive, play the concluding time as the start time that loads the second broadcast primitive with it.The pre-set threshold value here can arrange according to experience, also can determine according to the second time of playing primitive of target code stream video file and loaded targets code stream video.
Step S204: selecting difference is positive number and the first minimum broadcast concluding time of playing primitive to be defined as start time;
Through after the aforementioned calculating, these result of calculations are compared, therefrom select first of difference minimum and play primitive, it is play the concluding time as start time.By select playing the broadcast primitive that concluding time and preset value difference are positive number and minimum, so that at linking objective code stream video file and load second and play after two operations of primitive finish, the broadcast that the residue first of original bit stream video is play primitive can finish as early as possible, and within the short time interval, be transitioned into second of target code stream video is play the broadcast of primitive, thereby shortened the response time that code stream is switched.
Step S205: second of target code stream video that will be corresponding with the start time of determining from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
Present embodiment is by calculating the interior a plurality of broadcast primitives of video data buffer area and the difference of pre-set threshold value, and then the broadcast concluding time of the broadcast primitive of selection difference minimum is as the start time that loads the second broadcast primitive, shortened from reception code stream handover trigger to the time interval the switching that really is accomplished to the target code stream, thereby accelerated the speed that code stream switches.
For ease of understanding, the below describes present embodiment for example: referring to Fig. 3, the figure shows the schematic diagram of video data buffer area.Exist in the figure 3 first of the original bit stream video to play primitive in the video data buffer area, be labeled as respectively A, B, C, 3 first playing duration (playing the concluding time to the time period between the play start time) of playing primitive are all identical, the broadcast concluding time is followed successively by 8s, 16s, 24s (taking the current time as benchmark as 0s), namely according to the normal play order, should be that the first broadcast primitive A plays at first, first plays primitive C plays at last.Suppose again linking objective code stream video file and load the second broadcast primitive that the operating time that needs is 14s (pre-set threshold value).
Player is being play first and is being play primitive A now, receives the code stream switching notice when supposing to be played to 1s, does not at this moment stop the broadcast to A, but carries out linking objective code stream video file and load the second operation of playing primitive.Loading second plays primitive and need to select the start time that loads, so that on can continuing with the first broadcast primitive of having play, at this moment calculate 3 first and play the concluding time of primitive and the difference between the pre-set threshold value 14s, be respectively-6s, 2s, 10s, here first play the difference of primitive A broadcast concluding time and pre-set threshold value for negative, explanation is play first and is also had little time when primitive A plays end the second broadcast primitive is loaded into the video data buffer area, can't realize taking over seamlessly, can not select the broadcast concluding time of this broadcast primitive as the load time starting point.That different is the first broadcast primitive B therewith, the difference that C plays concluding time and pre-set threshold value just is, explanation is when playing primitive broadcast end for these two, second plays primitive all can be loaded into the video data buffer area, in this case, can play primitive as second of start time loaded targets code stream video with the first broadcast concluding time of playing primitive B, make first to play the second broadcast primitive that continues after primitive B plays, also can play primitive as second of start time loaded targets code stream video with the second broadcast concluding time of playing primitive C, make first to play the second broadcast primitive that continues after primitive C plays.But, selected for the first broadcast concluding time of playing primitive C obviously need to wait as the mode of load time starting point by the time could realize really after the 24s that code stream switches, and selected for the first broadcast concluding time of playing primitive B only needed to wait by the time can realize really behind the 16s that code stream switches as the mode of load time starting point.The response time of switching for shortening code stream, it is that first of positive number and numerical value minimum play primitive that this example is selected the difference of broadcast concluding time and pre-set threshold value, namely first play primitive B, play the concluding time with it and play primitive as start time loading second, thereby accelerated the code stream switching.
In the present embodiment, based on some special requirement, can also improve to obtain better technique effect.Such as, if there are a plurality of the first broadcast primitives of not playing or not playing in the video data buffer area, behind the first broadcast primitive that determines as the load time starting point, the the second broadcast primitive that loads will continue and play behind this first broadcast primitive, at this moment other the first broadcast primitives just no longer have meaning, for saving the storage resources of video data buffer area, these first broadcast primitives of not playing of the application's preferably deletion.With precedent, after selecting for the first broadcast concluding time of playing primitive B play the start time of primitive as loading second, the first broadcast primitive B broadcast end namely continues and plays the second broadcast primitive that loads, at this moment the first broadcast primitive C that exists in the video data buffer area is just no longer played, for vacateing the second follow-up broadcast primitive of more spaces storage, can play primitive C with first and be deleted.
Above content is the description to the application's embodiment of the method, and correspondingly, the application also provides device embodiment.Referring to Fig. 4, the figure shows the structured flowchart of the application's video code flow switching.This device embodiment comprises: trigger receiving element 401, video playback unit 402, file linkage unit 403 and loading unit 404, wherein:
Trigger receiving element 401, be used for receiving the code stream handover trigger;
Video playback unit 402 is used for after receiving the code stream handover trigger, continues the first broadcast primitive of the current code stream video in the playing video data buffer area;
File linkage unit 403, at least one that is used in the video data buffer area first play before primitive do not play linking objective code stream video file;
Loading unit 404, at least one that is used in the video data buffer area first play before primitive do not play, take first a broadcast concluding time of playing primitive of not playing or not playing as start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
The course of work of this device embodiment is: after triggering receiving element 401 receives the code stream handover trigger, video playback unit 402 continues the first broadcast primitive of the current code stream video in the playing video data buffer area, before file linkage unit 403 at least one first broadcast primitive in the video data buffer area does not play simultaneously, linking objective code stream video file, then by loading unit 404 take first a broadcast concluding time of playing primitive of not playing or not playing as start time, second of target code stream video that will be corresponding with this start time from target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
This device embodiment is put first of current code stream video in the video data buffer area and is play primitive receiving the follow-up continued broadcasting of video code flow handover trigger, before at least one first broadcast primitive did not play, second of the physical file of linking objective video code flow and loaded targets code stream video play primitive for playing.Compared with prior art, because before the first broadcast primitive of this device embodiment in the video data buffer area plays, load second of target code stream video and play primitive, thereby so that the broadcast of current code stream video and target code stream video is continuous, realized seamlessly transitting, avoided appearance " card pauses ", even " blank screen " phenomenon.
May there be difference in the loading unit of said apparatus embodiment its concrete structure that forms under different situations.Such as, after receiving the code stream handover trigger, if there are a plurality of the first broadcast primitives of not playing in the video data buffer area, at this moment loading unit 404 can comprise computation subunit 4041 and load subelement 4042, wherein: computation subunit 4041, be used for to calculate the poor of each first broadcast concluding time of playing primitive and pre-set threshold value, the time that described pre-set threshold value is play primitive according to second of linking objective code stream video file and loaded targets code stream video is definite; Load subelement 4042, be used for take difference as positive number and the first minimum broadcast concluding time of playing primitive is start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.The structure of this loading unit is conducive to accelerate the code stream switch speed.
Structure based on above-mentioned loading unit, this device embodiment can also comprise delete cells 405, be used for after the first broadcast concluding time of playing primitive of not playing or do not play from one of video data buffer area selection is start time the first broadcast primitive that other are not play in the deletion video data buffer area.By the first useless broadcast unit is deleted in the video data buffer area, can vacate more memory space buffer memory second and play primitive.
Need to prove, the code stream handover trigger that the triggering receiving element of said apparatus embodiment receives is based on different code stream switch reasons, can there be difference in its concrete triggering form, such as, can be by the component retrieval code stream handover trigger of the code stream handoff notification message that listen for user sends is set, when listening to notification message, these parts produce the code stream handover trigger, can also be by the component retrieval code stream handover trigger of automatic monitoring network environmental factors be set, satisfy and produce the code stream handover trigger when pre-conditioned when these parts monitor the network data transmission situation.This dual mode can use separately, also can merge use, specifically adopts which kind of mode to select according to the practical application needs.In addition, the application is for ease of the broadcast primitive of distinguishing current code stream video and the broadcast primitive of target code stream video, they are called respectively is that the first broadcast primitive, second is play primitive, in fact, the literal differentiation that the description needs are done is only satisfied in this differentiation, it can be the broadcast primitive of same nature, same alike result that two classes are play primitive, and such as being video TAG, video TAG is the minimum data unit in the video playback.
For the convenience of describing, be divided into various unit with function when describing above device and describe respectively.Certainly, when implementing the application, can in same or a plurality of softwares and/or hardware, realize the function of each unit.
As seen through the above description of the embodiments, those skilled in the art can be well understood to the application and can realize by the mode that software adds essential general hardware platform.Based on such understanding, the part that the application's technical scheme contributes to prior art in essence in other words can embody with the form of software product, this computer software product can be stored in the storage medium, such as ROM/RAM, magnetic disc, CD etc., comprise that some instructions are with so that a computer equipment (can be personal computer, server, the perhaps network equipment etc.) carry out the described method of some part of each embodiment of the application or embodiment.
Each embodiment in this specification all adopts the mode of going forward one by one to describe, and identical similar part is mutually referring to getting final product between each embodiment, and each embodiment stresses is difference with other embodiment.Especially, for system embodiment, because its basic simlarity is in embodiment of the method, so describe fairly simplely, relevant part gets final product referring to the part explanation of embodiment of the method.System embodiment described above only is schematic, wherein said unit as the separating component explanation can or can not be physically to separate also, the parts that show as the unit can be or can not be physical locations also, namely can be positioned at a place, perhaps also can be distributed on a plurality of network element.Can select according to the actual needs wherein some or all of module to realize the purpose of present embodiment scheme.Those of ordinary skills namely can understand and implement in the situation of not paying creative work.
The application can be used in numerous general or special purpose computingasystem environment or the configuration.For example: personal computer, server computer, handheld device or portable set, plate equipment, multicomputer system, the system based on microprocessor, set top box, programmable consumer-elcetronics devices, network PC, minicom, mainframe computer, comprise distributed computing environment (DCE) of above any system or equipment etc.
The application can describe in the general context of the computer executable instructions of being carried out by computer, for example program module.Usually, program module comprises the routine carrying out particular task or realize particular abstract data type, program, object, assembly, data structure etc.Also can in distributed computing environment (DCE), put into practice the application, in these distributed computing environment (DCE), be executed the task by the teleprocessing equipment that is connected by communication network.In distributed computing environment (DCE), program module can be arranged in the local and remote computer-readable storage medium that comprises memory device.
The above only is the application's embodiment; should be pointed out that for those skilled in the art, under the prerequisite that does not break away from the application's principle; can also make some improvements and modifications, these improvements and modifications also should be considered as the application's protection range.

Claims (10)

1. video code flow changing method is characterized in that the method comprises:
After receiving the code stream handover trigger, continue the first broadcast primitive of the current code stream video in the playing video data buffer area;
Before at least one first broadcast primitive in the video data buffer area does not play, linking objective code stream video file, take first a broadcast concluding time of playing primitive of not playing or not playing as start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
2. method according to claim 1 is characterized in that, after receiving the code stream handover trigger, if there are a plurality of the first broadcast primitives of not playing in the video data buffer area, then:
Calculate the poor of each first broadcast concluding time of playing primitive and pre-set threshold value, the time that described pre-set threshold value is play primitive according to second of linking objective code stream video file and loaded targets code stream video is definite;
Take difference as positive number and the first minimum broadcast concluding time of playing primitive be start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
3. method according to claim 1, it is characterized in that, after the first broadcast concluding time of playing primitive that one of selection from the video data buffer area is not play or do not played is start time, the first broadcast primitive that other are not play in the deletion video data buffer area.
4. any one described method in 3 according to claim 1 is characterized in that described code stream handover trigger comprises:
The code stream handoff notification message that listen for user is sent triggers code stream and switches after listening to notification message; And/or monitoring network transfer of data situation triggers code stream when pre-conditioned and switches when the network data transmission situation satisfies.
5. method according to claim 4 is characterized in that, it is video TAG that described the first broadcast primitive, second is play primitive.
6. a video code flow switching device shifter is characterized in that, this device comprises: trigger receiving element, video playback unit, file linkage unit and loading unit, wherein:
Described triggering receiving element is used for receiving the code stream handover trigger;
Described video playback unit is used for after receiving the code stream handover trigger, continues the first broadcast primitive of the current code stream video in the playing video data buffer area;
Described file linkage unit, at least one that is used in the video data buffer area first play before primitive do not play linking objective code stream video file;
Described loading unit, at least one that is used in the video data buffer area first play before primitive do not play, take first a broadcast concluding time of playing primitive of not playing or not playing as start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
7. device according to claim 6 is characterized in that, after receiving the code stream handover trigger, if there are a plurality of the first broadcast primitives of not playing in the video data buffer area, then described loading unit comprises computation subunit and loads subelement, wherein:
Described computation subunit be used for to be calculated the poor of each first broadcast concluding time of playing primitive and pre-set threshold value, and the time that described pre-set threshold value is play primitive according to second of linking objective code stream video file and loaded targets code stream video is definite;
Described loading subelement, be used for take difference as positive number and the first minimum broadcast concluding time of playing primitive is start time, second of target code stream video that will be corresponding with this start time from described target code stream video file is play primitive and is loaded into the video data buffer area for broadcast.
8. device according to claim 6, it is characterized in that, described device also comprises delete cells, be used for after the first broadcast concluding time of playing primitive of not playing or do not play from one of video data buffer area selection is start time the first broadcast primitive that other are not play in the deletion video data buffer area.
9. any one described device in 8 according to claim 6 is characterized in that the code stream handover trigger that described triggering receiving element receives comprises:
Listen to the code stream handover trigger after the code stream handoff notification message that the user sends; And/or, monitor the network data transmission situation and satisfy code stream handover trigger when pre-conditioned.
10. device according to claim 9 is characterized in that, it is video TAG that described the first broadcast primitive, second is play primitive.
CN201210431708.3A 2012-11-01 2012-11-01 A kind of video code flow changing method and device Active CN102905188B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210431708.3A CN102905188B (en) 2012-11-01 2012-11-01 A kind of video code flow changing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210431708.3A CN102905188B (en) 2012-11-01 2012-11-01 A kind of video code flow changing method and device

Publications (2)

Publication Number Publication Date
CN102905188A true CN102905188A (en) 2013-01-30
CN102905188B CN102905188B (en) 2015-09-30

Family

ID=47577193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210431708.3A Active CN102905188B (en) 2012-11-01 2012-11-01 A kind of video code flow changing method and device

Country Status (1)

Country Link
CN (1) CN102905188B (en)

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103474080A (en) * 2013-09-02 2013-12-25 百度在线网络技术(北京)有限公司 Processing method, device and system of audio data based on code rate switching
CN103686346A (en) * 2013-12-26 2014-03-26 乐视网信息技术(北京)股份有限公司 Video playing unsmoothness switching method and system
CN103997680A (en) * 2014-06-06 2014-08-20 北京奇艺世纪科技有限公司 Switching method and device of video bitstream
CN104219579A (en) * 2014-08-20 2014-12-17 北京奇艺世纪科技有限公司 Video switching method and video switching device
WO2015113243A1 (en) * 2014-01-29 2015-08-06 华为终端有限公司 Method, apparatus and electronic device for playing network video
CN105025344A (en) * 2015-07-22 2015-11-04 无锡天脉聚源传媒科技有限公司 Inter-cut method and device
CN105072489A (en) * 2015-07-17 2015-11-18 成都视达科信息技术有限公司 Method and system for fast reading file
CN105611393A (en) * 2015-12-21 2016-05-25 深圳Tcl数字技术有限公司 Video playing control method and device
CN105657520A (en) * 2014-11-18 2016-06-08 乐视网信息技术(北京)股份有限公司 Video definition switching method and video player
CN106375836A (en) * 2016-09-27 2017-02-01 广东小天才科技有限公司 Resolution switching method and device of video
CN106412676A (en) * 2016-10-21 2017-02-15 乐视控股(北京)有限公司 Video code stream switching method and device, and electronic device
CN106488255A (en) * 2016-10-24 2017-03-08 广州酷狗计算机科技有限公司 A kind of method and device of switching media stream
CN106664315A (en) * 2014-08-29 2017-05-10 尼尔森(美国)有限公司 Methods and apparatus to predict end of streaming media using a prediction model
CN107396193A (en) * 2017-08-30 2017-11-24 腾讯科技(深圳)有限公司 The method and apparatus of video playback
CN107547940A (en) * 2017-09-13 2018-01-05 广州酷狗计算机科技有限公司 Video playback processing method, equipment and computer-readable recording medium
WO2018086303A1 (en) * 2016-11-14 2018-05-17 武汉斗鱼网络科技有限公司 Advertisement inter-cut method and device, and readable storage medium
CN108174280A (en) * 2018-01-18 2018-06-15 湖南快乐阳光互动娱乐传媒有限公司 A kind of online playback method of audio and video and system
CN108574860A (en) * 2017-03-07 2018-09-25 合网络技术(北京)有限公司 Multimedia resource playback method and device
CN108810582A (en) * 2018-05-25 2018-11-13 联想(北京)有限公司 A kind of information processing method, electronic equipment and computer readable storage medium
CN108965907A (en) * 2018-07-11 2018-12-07 北京字节跳动网络技术有限公司 For playing the methods, devices and systems of video
CN109246462A (en) * 2018-10-11 2019-01-18 苏宁易购集团股份有限公司 A kind of video flowing seamless handover method and device
CN110545464A (en) * 2018-05-29 2019-12-06 北京字节跳动网络技术有限公司 Media file resolution switching method and device and storage medium
CN110545461A (en) * 2018-05-29 2019-12-06 北京字节跳动网络技术有限公司 Resolution switching method and device of media file and storage medium
CN110636370A (en) * 2018-06-25 2019-12-31 阿里巴巴集团控股有限公司 Video processing method and device, electronic equipment and readable medium
CN111479171A (en) * 2019-01-23 2020-07-31 上海哔哩哔哩科技有限公司 Pseudo seamless switching method, device and medium among different video sources played by Web
CN112202751A (en) * 2020-09-25 2021-01-08 腾讯科技(深圳)有限公司 Animation processing method and device, electronic equipment and storage medium
CN112235642A (en) * 2020-10-15 2021-01-15 北京百度网讯科技有限公司 Video data processing method, device, equipment and storage medium
WO2021103660A1 (en) * 2019-11-29 2021-06-03 百果园技术(新加坡)有限公司 Video data playing method, apparatus and device, and storage medium
CN113395606A (en) * 2020-03-13 2021-09-14 华为技术有限公司 URL screen projection method and device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110582012B (en) * 2018-06-11 2021-07-30 腾讯科技(深圳)有限公司 Video switching method, video processing device and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101179700A (en) * 2006-12-20 2008-05-14 腾讯科技(深圳)有限公司 Program source switch method and stream media play system
CN101521817A (en) * 2009-03-17 2009-09-02 中兴通讯股份有限公司 Method and terminal for improving mobile telephone television program broadcasting continuity
US20090222873A1 (en) * 2005-03-07 2009-09-03 Einarsson Torbjoern Multimedia Channel Switching
CN101917391A (en) * 2009-12-17 2010-12-15 新奥特(北京)视频技术有限公司 Method for playing network video and system for playing network video
CN102291599A (en) * 2011-05-07 2011-12-21 董友球 Network video playing method and network video playing device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090222873A1 (en) * 2005-03-07 2009-09-03 Einarsson Torbjoern Multimedia Channel Switching
CN101179700A (en) * 2006-12-20 2008-05-14 腾讯科技(深圳)有限公司 Program source switch method and stream media play system
CN101521817A (en) * 2009-03-17 2009-09-02 中兴通讯股份有限公司 Method and terminal for improving mobile telephone television program broadcasting continuity
CN101917391A (en) * 2009-12-17 2010-12-15 新奥特(北京)视频技术有限公司 Method for playing network video and system for playing network video
CN102291599A (en) * 2011-05-07 2011-12-21 董友球 Network video playing method and network video playing device

Cited By (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103474080A (en) * 2013-09-02 2013-12-25 百度在线网络技术(北京)有限公司 Processing method, device and system of audio data based on code rate switching
CN103686346A (en) * 2013-12-26 2014-03-26 乐视网信息技术(北京)股份有限公司 Video playing unsmoothness switching method and system
WO2015113243A1 (en) * 2014-01-29 2015-08-06 华为终端有限公司 Method, apparatus and electronic device for playing network video
CN103997680B (en) * 2014-06-06 2017-10-24 上海众源网络有限公司 The switching method and device of a kind of video code flow
CN103997680A (en) * 2014-06-06 2014-08-20 北京奇艺世纪科技有限公司 Switching method and device of video bitstream
CN104219579A (en) * 2014-08-20 2014-12-17 北京奇艺世纪科技有限公司 Video switching method and video switching device
CN104219579B (en) * 2014-08-20 2018-03-06 北京奇艺世纪科技有限公司 A kind of video switching method and device
CN111800656A (en) * 2014-08-29 2020-10-20 尼尔森(美国)有限公司 Method, device and equipment for predicting end of streaming media by using prediction model
CN111800656B (en) * 2014-08-29 2022-07-15 尼尔森(美国)有限公司 Method, apparatus and readable medium for identifying end of streaming media session
US10547534B2 (en) 2014-08-29 2020-01-28 The Nielsen Company (Us), Llc Methods and apparatus to predict end of streaming media using a prediction model
US11563664B2 (en) 2014-08-29 2023-01-24 The Nielsen Company (Us), Llc Methods and apparatus to predict end of streaming media using a prediction model
US10938704B2 (en) 2014-08-29 2021-03-02 The Nielsen Company (Us), Llc Methods and apparatus to predict end of streaming media using a prediction model
CN106664315A (en) * 2014-08-29 2017-05-10 尼尔森(美国)有限公司 Methods and apparatus to predict end of streaming media using a prediction model
CN106664315B (en) * 2014-08-29 2020-08-07 尼尔森(美国)有限公司 Method, device and equipment for predicting end of streaming media by using prediction model
US11765061B2 (en) 2014-08-29 2023-09-19 The Nielsen Company (Us), Llc Methods and apparatus to predict end of streaming media using a prediction model
US11316769B2 (en) 2014-08-29 2022-04-26 The Nielsen Company (Us), Llc Methods and apparatus to predict end of streaming media using a prediction model
CN105657520A (en) * 2014-11-18 2016-06-08 乐视网信息技术(北京)股份有限公司 Video definition switching method and video player
CN105072489A (en) * 2015-07-17 2015-11-18 成都视达科信息技术有限公司 Method and system for fast reading file
CN105072489B (en) * 2015-07-17 2018-08-03 成都视达科信息技术有限公司 A kind of method and system that rapid file is read
CN105025344A (en) * 2015-07-22 2015-11-04 无锡天脉聚源传媒科技有限公司 Inter-cut method and device
CN105611393A (en) * 2015-12-21 2016-05-25 深圳Tcl数字技术有限公司 Video playing control method and device
WO2017107385A1 (en) * 2015-12-21 2017-06-29 深圳Tcl数字技术有限公司 Video playing control method and apparatus
CN105611393B (en) * 2015-12-21 2019-04-23 深圳Tcl数字技术有限公司 Video playing control method and device
CN106375836A (en) * 2016-09-27 2017-02-01 广东小天才科技有限公司 Resolution switching method and device of video
CN106412676A (en) * 2016-10-21 2017-02-15 乐视控股(北京)有限公司 Video code stream switching method and device, and electronic device
CN106488255B (en) * 2016-10-24 2019-05-14 广州酷狗计算机科技有限公司 A kind of method and device of switching media stream
CN106488255A (en) * 2016-10-24 2017-03-08 广州酷狗计算机科技有限公司 A kind of method and device of switching media stream
WO2018086303A1 (en) * 2016-11-14 2018-05-17 武汉斗鱼网络科技有限公司 Advertisement inter-cut method and device, and readable storage medium
CN108574860B (en) * 2017-03-07 2021-12-03 阿里巴巴(中国)有限公司 Multimedia resource playing method and device
CN108574860A (en) * 2017-03-07 2018-09-25 合网络技术(北京)有限公司 Multimedia resource playback method and device
CN107396193B (en) * 2017-08-30 2018-09-04 腾讯科技(深圳)有限公司 The method and apparatus of video playing
CN107396193A (en) * 2017-08-30 2017-11-24 腾讯科技(深圳)有限公司 The method and apparatus of video playback
CN107547940A (en) * 2017-09-13 2018-01-05 广州酷狗计算机科技有限公司 Video playback processing method, equipment and computer-readable recording medium
CN108174280A (en) * 2018-01-18 2018-06-15 湖南快乐阳光互动娱乐传媒有限公司 A kind of online playback method of audio and video and system
CN108810582A (en) * 2018-05-25 2018-11-13 联想(北京)有限公司 A kind of information processing method, electronic equipment and computer readable storage medium
CN110545461A (en) * 2018-05-29 2019-12-06 北京字节跳动网络技术有限公司 Resolution switching method and device of media file and storage medium
CN110545464A (en) * 2018-05-29 2019-12-06 北京字节跳动网络技术有限公司 Media file resolution switching method and device and storage medium
CN110636370A (en) * 2018-06-25 2019-12-31 阿里巴巴集团控股有限公司 Video processing method and device, electronic equipment and readable medium
CN110636370B (en) * 2018-06-25 2022-02-01 斑马智行网络(香港)有限公司 Video processing method and device, electronic equipment and readable medium
CN108965907A (en) * 2018-07-11 2018-12-07 北京字节跳动网络技术有限公司 For playing the methods, devices and systems of video
CN109246462B (en) * 2018-10-11 2021-08-06 苏宁易购集团股份有限公司 Seamless switching method and device for video stream
CN109246462A (en) * 2018-10-11 2019-01-18 苏宁易购集团股份有限公司 A kind of video flowing seamless handover method and device
CN111479171B (en) * 2019-01-23 2022-05-20 上海哔哩哔哩科技有限公司 Pseudo seamless switching method, device and medium among different video sources played by Web
CN111479171A (en) * 2019-01-23 2020-07-31 上海哔哩哔哩科技有限公司 Pseudo seamless switching method, device and medium among different video sources played by Web
US11589119B2 (en) 2019-01-23 2023-02-21 Shanghai Bilibili Technology Co., Ltd. Pseudo seamless switching method, device and media for web playing different video sources
WO2021103660A1 (en) * 2019-11-29 2021-06-03 百果园技术(新加坡)有限公司 Video data playing method, apparatus and device, and storage medium
CN113395606A (en) * 2020-03-13 2021-09-14 华为技术有限公司 URL screen projection method and device
CN112202751B (en) * 2020-09-25 2022-06-07 腾讯科技(深圳)有限公司 Animation processing method and device, electronic equipment and storage medium
CN112202751A (en) * 2020-09-25 2021-01-08 腾讯科技(深圳)有限公司 Animation processing method and device, electronic equipment and storage medium
CN112235642A (en) * 2020-10-15 2021-01-15 北京百度网讯科技有限公司 Video data processing method, device, equipment and storage medium

Also Published As

Publication number Publication date
CN102905188B (en) 2015-09-30

Similar Documents

Publication Publication Date Title
CN102905188A (en) Video code stream switching method and device
US11457088B2 (en) Adaptive transfer rate for retrieving content from a server
CN103997680B (en) The switching method and device of a kind of video code flow
CN105808447B (en) A kind of method for recovering internal storage and device of terminal device
CN105657520A (en) Video definition switching method and video player
CN106534952A (en) Method for continuingly playing film source after source switching and smart television
CN108174280B (en) Audio and video online playing method and system
CN102903377B (en) Method and device for playing video with multiple video segments
CN104023264A (en) Method and device for playing video
CN103517154A (en) Method for preloading video files and system thereof
WO2015016719A1 (en) Multimedia cache with dynamic segmenting
CN103888832A (en) Processing method and device for switching of data sources to which to player terminal has access
CN103747339A (en) Method and apparatus for resolving no response condition of on-line video by using android device
CN106412676A (en) Video code stream switching method and device, and electronic device
CN112738633A (en) Video playing method, device, equipment and readable storage medium
CN109587511A (en) More equipment net cast methods, equipment, system and storage medium
CN103874987A (en) Embedded multimedia card partition memory space adjustment method and terminal
CN105100851A (en) Intelligent television remote controller operation instruction method and device
CN103763596A (en) State switching method and device
CN103118289A (en) Starting-up system, television and starting-up method
CN106020792A (en) Display control method and display control device
CN106385627A (en) Video coding method and device
CN106470350A (en) Code check adaptive approach based on dynamic bit rate and device
CN104853234A (en) Data processing method, system thereof and mobile terminal
CN109218809B (en) Streaming media playing method and device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant