CN101562737A - Multi-code rate dispatching method in peer-to-peer live broadcast system - Google Patents

Multi-code rate dispatching method in peer-to-peer live broadcast system Download PDF

Info

Publication number
CN101562737A
CN101562737A CNA2009100621330A CN200910062133A CN101562737A CN 101562737 A CN101562737 A CN 101562737A CN A2009100621330 A CNA2009100621330 A CN A2009100621330A CN 200910062133 A CN200910062133 A CN 200910062133A CN 101562737 A CN101562737 A CN 101562737A
Authority
CN
China
Prior art keywords
node
data
rate
code check
video stream
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
CNA2009100621330A
Other languages
Chinese (zh)
Other versions
CN101562737B (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN2009100621330A priority Critical patent/CN101562737B/en
Publication of CN101562737A publication Critical patent/CN101562737A/en
Application granted granted Critical
Publication of CN101562737B publication Critical patent/CN101562737B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a multi-code rate dispatching method in a peer-to-peer live broadcast system, which comprises the following steps that: (1) a broadcast source codes a video source into a plurality of code rates, and registers the address and code rate number N of the video source to a server; (2) a node is added into one channel of the server to acquire the address and code rate number N of the channel, and a self buffer area of the node is set according to the code rate number; (3) the node automatically or manually selects one code rate m from the N code rates and adds the code rate m into the channel to watch programs; (4) according to the filling condition of the buffer area of the self current code rate, the node requires a neighbor node of the current code rate for data in a network and dispatches the data of the current code rate; and (5) at the same time of dispatching the data, the node detects the buffer condition of the current code rate as the basis for switching the code rates.

Description

Multi-code rate dispatching method in a kind of reciprocity live broadcast system
Technical field
The invention belongs to computer application field, be specifically related to multi-code rate dispatching method MrSM in a kind of reciprocity live broadcast system (Muliti-rate Schedule Mechanism), this method is particularly suitable for the network bandwidth and the bigger network environment of client computing capability otherness.
Background technology
Along with the continuous ripe development and the extensively utilization of Computing Technology, the peer-to-peer network flow medium live system also has greatly improved.The peer-to-peer network flow medium live system has solved traditional live broadcast system bandwidth, the server performance of server end network has been required too high problem, changes this hubbed mode of client-server that traditional distributed multimedia system mainly uses.Yet in peer-to-peer network stream media technology popular today, how to allow system adapt to different network environments, how can guarantee the playing fluency under the network topology change, these also do not have good solution.
But traditional peer-to-peer network live streaming media all adopts the design of single code check, that is to say that each program all has the stream of cbr (constant bit rate), and the code check of stream is excessive, just can not allow the less user of bandwidth use.The code check of stream is little, and the stream media quality that provides can not allow all users satisfied.Though present computer network all is based on the IP agreement mostly, the difference of hardware is often shielded by systems soft ware, and the person's that offers the applied software development is simple unified network view and development environment.But for the system of the such dependence bandwidth of live broadcast system, same is applied under the different network environments, performance often different.What the live broadcast system under the C/S model relied on is exactly the transmission speed of client and server end point-to-point transmission, if speed does not reach the requirement of stream medium data, plays so and can't go on.
Because in the peer-to-peer network flow medium live system, node some node that all may rely on very much in the topological structure provides data to it arbitrarily, and when the node deviated from network of data was provided to it, the data volume that node can be obtained tailed off.If data volume arrives to a certain degree less, player can't obtain enough data, will cause live can't normally going on.Under the situation that adopts single code check, only rely on and adjust dispatching algorithm, can't deal with problems.
Because Internet goes up the fast development of Video Applications, the target of video coding also is changed to quality how to optimize video under certain range of code rates from a certain cbr (constant bit rate) being optimized video quality.Have following several for reaching this target method commonly used:
A kind of is with the minimum speed limit of all channels video to be encoded, and can guarantee that like this all recipients can receive the video of minimum quality.
Another kind method is with high-quality video to be encoded, and utilizes server for different users the code check of having encoded to be carried out rate conversion again.The shortcoming of this method is that server carries out rate conversion complicated (comprising decoding, coding) when transmission, and rate conversion also can make the decline of video quality.
Also having a kind of method is exactly when coding, produces the code check of a plurality of different rates.For the multicast on the network, a plurality of code checks of Server Transport, total output speed just equals the speed sum of a plurality of code checks.The recipient selects a kind of code check wherein to decode.When the network bandwidth changed, the user can forward other code check to.For clean culture, code check is to be connected with the channel of server according to the user to realize that when channel speed changes, a feedback signal will be passed to server to be transformed into another code check to user's transmission.The method of this radio hookup needs to determine to produce the code check of how much quantity usually, if the code check that produces very little, then can not cover speed range with meticulousr granularity, this makes many users can not obtain the video of the best quality that can obtain from the channel that is connected, thereby causes the channel usage deficiency.If the quantity of code check is too many, the code check that then transmits in multicast is excessive.
Recent years, a kind of brand-new technology that is called fine granulation scalable coding (FGS) has been subjected to paying close attention to widely, the FGS compression becomes two bit streams to video compression: base layer bit stream and enhanced layer bit, different with the coding of SNR autgmentability, FGS adopts the bit-plane coding.It can realize continuous enhancement layer rate controlled.MPEG-4 realizes hierarchical coding by the VOL data structure.FGS is owing to used the Bit-Plane Encoding technology, comparing with non-autgmentability coding has following new characteristics: first, enhancement layer uses the Bit-Plane Encoding technology DCT residual error to be encoded the excursion of overlay network bandwidth, second, the enhancement layer code check of each frame can block in any place, the 3rd, the video quality of decoder reconstructs and the bit number of receiving are directly proportional.And basic layer uses the minimum requirements that reaches Network Transmission based on the coded system of block motion compensation and dct transform.
Japan NTT CyberSpace research institute has developed towards the MPEG-4 software codec of content transmission and video conference.Can encode to the VGA image of 30 frame/seconds with the 4Mb/s data speed.If the PC server about using operating frequency as 3GHz even if be applied to video meeting system, also can not fall frame ground image is encoded.
Why can realize above-mentioned 2 characteristics, mainly be because study at coded sequence.Particularly, basic layer and extension layer have been divided into exactly.Basic layer utilizes succinct standard of MPEG-4 (MPEG-4 Simple Profile) or the senior succinct standard of MPEG-4 (MPEG-4 AdvancedSimple Profile) to encode.Digital coding speed is 100Kb/s, and picture size is QVGA.But, if digital coding speed is dropped to 100Kb/ second, image quality also can descend naturally, so the mosaic noise clearly.What image quality reduction was compensated is the extension layer data.Adopt MPEG-4FGS to encode.Particularly, after the VGA image encoded, with picture size conversion QVGA image.Utilize this moment extension layer that the information of omitting is encoded.
No matter being hierarchical coding or multiple description coded, still all is in the experimental stage, wants really to apply to system, has got long long way to go.Only rely on practical now coding techniques, it is uneven how to tackle network environment, the topological structure dynamic change, with respect to former single code check peer-to-peer network flow medium live system, introduce the live mechanism of peer-to-peer network of the new multi-code rate dispatching of a cover, in order to solve the adaptive problem of network environment, make the live software adaptability of peer-to-peer network be improved.
Summary of the invention
The object of the present invention is to provide multi-code rate dispatching method in a kind of reciprocity live broadcast system, this method can solve the adaptability problem that the network environment otherness causes.
Multi-code rate dispatching method in the reciprocity live broadcast system provided by the invention may further comprise the steps:
The 1st step broadcast source server is encoded into identical but N the video flowing that code check is different of content with each program source, and number from low to high by code check, add a channel to registrar again, the video streams N of the address of registration program source and the different code checks of this program source correspondence, N is the positive integer more than or equal to 2;
The 2nd step user node joins in the channel of registrar, obtains the address of this channel, and the video streams N of the different code checks of this channel, and the buffering area of node oneself is set according to video streams;
The 3rd step user node selects the video flowing of a code check to watch program from N video flowing, and the video flowing sequence number of establishing this code check is m, 1≤m≤N;
The 4th step user node to the neighbor node request msg of current place channel, is dispatched the video stream data of current channel according to the filling situation of the buffer container of own current bit-rate video stream in network;
The 5th step node detects the video stream buffer situation of current code check in data dispatching, and with the foundation of this buffering situation as the other bit-rate video stream of switching;
The 6th step was waited for a node scheduling time interval, got back to for the 4th step then and continued data dispatching.
The present invention is for the problem of the bandwidth difference that solves each node in the network, same channel provides a plurality of code checks to allow different nodes select to play, and, provide a kind of dispatching method that can between multi code Rate of Chinese character, switch according to the characteristics that the node current bandwidth may change at any time.The present invention has following characteristics:
(1) adapts to the complicated diversity of computer network
Present network environment is variation very, and different user's possibility difference is very big, and optical fiber, broadband, LAN, WIFI, CDMA, GPRS are arranged.But for the system of the such dependence bandwidth of live broadcast system, same is applied under the different network environments, performance often different.Multi-code rate dispatching method then can make the complicated diversity of this network be unlikely to influence user's viewing effect, bandwidth to heterogeneous networks has corresponding code check that broadcast is provided, so no matter to be to compare the smooth program of watching under what network environment, only image quality has difference.
(2) dynamic change of adaptation topological structure
The equity live streaming media relies on the topological structure that links to each other with oneself usually very much, and topological structure often changes through regular meeting, and each node all may withdraw from, and also has new node to add, and each user can often upgrade the topological structure of oneself.The dynamic change of topological structure also can influence the buffering of live broadcast stream media data.If cannot be from the topology enough fast data that obtain, for the reciprocity live broadcast system of single code check, this can cause direct broadcast service to operate.After introducing multi-code rate dispatching method, the system that makes can influence along with changes of topology structure, adjusts the code check of self playing, and makes this dynamic change can reduce the influence that the user causes as far as possible.
(3) saved server bandwidth
Because the dispatching method of multi code Rate of Chinese character has adopted the structure of intersection topology, so make comparisons, in same program, adopt under the situation of a plurality of code checks with the method that adopts single code check, the bandwidth occupancy of server will be than issuing a plurality of programs still less.
Description of drawings
Fig. 1 is the main flow block diagram of the inventive method;
Fig. 2 is the structural representation of the data buffering management of multi code Rate of Chinese character;
The situation schematic diagram that Fig. 3 begins to play after switching for code check;
The schematic diagram that Fig. 4 judges for the code check quality;
Fig. 5 is the contrast schematic diagram of multi-code rate dispatching and the scheduling of solid size rate.
Embodiment
The present invention is according to the live characteristics of equity, introduced a kind of mechanism of multi-code rate dispatching, can select different bit-rate video stream and switch different bit-rate video streams dynamically, thereby make node better adapt to the diversity and the dynamic of the network bandwidth, improve the stability of node when broadcast program.
Contain three roles in the native system, wherein, user node is responsible for selecting program viewing, and the broadcast source server is responsible for depositing the video flowing of program and video stream data is offered user node, and registrar is in charge of broadcast source server and user node, recorded program information and nodal information.
Below in conjunction with accompanying drawing and example the present invention is done detailed explanation.
As shown in Figure 1, multi-code rate dispatching method may further comprise the steps in the present invention's equity live broadcast system:
(1) the broadcast source server is encoded into identical but a plurality of video flowings that code check is different of content with each program source, and number from low to high by code check, add a channel to registrar again, the video streams N of the address (being this channel address of place broadcast source server) of registration program source and the different code checks of this program source correspondence, N is the positive integer more than or equal to 2.
From user perspective, a channel is exactly an address on the registrar, but in fact this address is the video flowing that has a plurality of code checks, and the number of video flowing neither be fixed, but the number of video streams decision of the different code checks that provide by the broadcast source server.
(2) user node joins in certain channel of registrar, the address that obtains this channel, and the video streams N of the different code checks of this channel, and the buffering area of node oneself is set according to video streams.
The buffer management of multi code Rate of Chinese character is different from the cache management of solid size rate.The structure of buffering area must be divided into a plurality of different buffer containers, manages these buffer containers by Buffer Manager, and the quantity of buffer container equals the video streams N of different code checks.Video flowing is divided into packet, and packet is numbered in order, and each buffer container the inside is the store data bag in order, and the situation of buffer management as shown in Figure 2 like this.
(3) user node selects the video flowing of a code check to watch program from N video flowing, and the video flowing sequence number of establishing this code check is m, 1≤m≤N.
When adding channel, select the video flowing of a code check,, just should select a lower video flowing of code check to add channel if the network environment of node or self-ability are poor according to the ability of residing environment of node or node; If the network environment of node and self-ability are more intense, just should select a code check to add than higher video flowing.
(4) user node to the neighbor node request msg of current place channel, is dispatched the video stream data of current channel according to the filling situation of the buffer container of own current bit-rate video stream in network.
Concrete steps are as follows:
(4.1) judge whether buffering area has begun to roll, if then enter step (4.4), otherwise enter step (4.2);
(4.2) to the current bit-rate video stream of the program source server requests foremost W data of second, W is a fixed value, determines that according to the ability of user node general range is 35 to 45;
(4.3) whether the video flowing of judging current code check has continuous T data second, and T is a fixed value, determines start-up time according to the playing programs that system allowed, general range is 20 to 30, if having, begins to roll, and change step (4.5) over to, otherwise get back to step (4.2);
(4.4) according to priority ask the data of V second of back, V is a fixed value, determines that according to the ability of user node general range is 8 to 10, changes step (4.5) then over to;
Concrete step is as follows:
(4.4.1) (1≤i≤m) distributes a weights P (i)=1/ (1+m-i) for the video flowing of each different code check, the computing formula of these weights guarantees that the weights P (i) of video flowing i can diminish along with reducing of i, promptly for each video flowing smaller or equal to current code check, code check is high more, and weights are high more.
(4.4.2) so for j the packet i.j of video flowing i, if have the number of nodes of packet i.j in the neighbor node of this node is X (i.j), then the priority of packet i.j can use that formula F (i.j)=P (i)/(1+X (I, j)) calculates (1+X (i.j))=1/ (1+m-i).
(4.4.3) calculated like this each different code check video flowing (after each priority of data packets of 1≤i≤m), just ordering from big to small according to priority, the data of the packet of scheduling V second.
(4.5) buffering area U data second of rolling forward, U is a fixed value, identical with node scheduling X blanking time value, node scheduling interval X is the time interval between the each data dispatching of user node, generally can be made as 3 to 5, if current bit-rate video stream does not also begin to play, then judge whether to begin to play;
Concrete step is as follows:
(4.5.1) buffering area U data second of rolling forward, and judge that whether current bit-rate video stream is play, if also do not begin to play, changes step (4.5.2) over to, otherwise enters step (5).
If (4.5.2) video flowing of current scheduling code check does not also begin to play (may be newly to add channel also not begin to play, perhaps also prepare to switch to the video flowing of new code check) at the video flowing of playing original code check, then wait for continuous T second the most forward in the buffer container of current bit-rate video stream or above data front that section white space buffering area that rolled out, or till front that section white space is filled, just begin to play, situation as shown in Figure 3 at this moment, the starting point of buffer container that is the current bit-rate video stream of decision node begins whether to have continuous T data second, if have, then change step (4.5.3) over to, otherwise enter step (5).
(4.5.3) begin to play current bit-rate video stream, enter step (5) then.
(5) node detects the video stream buffer situation of current code check in data dispatching, and is used as switching the foundation that other bit-rate video flows with this buffering situation, the steps include:
(5.1) the buffering situation be divided into, in, differ from three ranks, detect the damper mass of current code check.If continuous a period of time buffering situation has been arranged all for well, has then changed step (5.2) over to; If it all is poor that continuous a period of time buffering situation has been arranged, then change step (5.3) over to; Otherwise enter step (6).
As shown in Figure 4, can do a grading for the buffering situation, divide three grades according to the percentage that the buffering area of current bit-rate video stream is filled: good, neutralize poor.When the grading of giving the buffering situation continuously several times all is difference, just think switch to the video flowing that hangs down the one-level code check.When being rated several times continuously, just think the video flowing that switch to high one-level code check, specific as follows:
(5.1.1) a good grading counting (good quality count) and a difference grading counting (bad quality count) are set, and all are initialized as 0.
(5.1.2) the filling ratio of a buffering area of calculating.If the filling ratio of buffering area is less than a default buffering ratio minimum value (can be 20%), then the buffering situation forwards to (5.14) for poor; If the filling ratio of buffering area is greater than a default buffering ratio maximum (can be 80%), then the buffering situation forwards (5.1.5) to for well; Otherwise the buffering situation forwards (5.1.3) in being.
During (5.1.3) the buffering situation is, then putting the grading counting simultaneously and difference grading counting is 0, and entering step (6).
(5.1.4) the buffering situation is for poor, and putting the grading counting is 0, and difference grading counting adds 1, judge that simultaneously whether difference grading counting is greater than default grading counting maximum (as 8 or 9), if then switching to the video flowing of lower code check and putting difference grading counting is 0, and forwards step (5.3) to; If not, then enter step (6).
(5.1.5) the buffering situation is for well, and putting difference grading counting is 0, and good grading counting adds 1, judge that simultaneously whether good grading counting is greater than default grading counting maximum (as 8 or 9), if then switching to the video flowing of higher code check and putting the grading counting is 0, and forwards step (5.2) to; If not, then enter step (6).
(5.2) if the video flowing sequence number m of the current code check of node equals N, promptly be the video flowing of high code check, then node goes to cushion the data that sequence number is the video flowing of N-1 again in the data that keep the current bit-rate video stream of buffering; If the video flowing sequence number m of the current code check of node is not equal to N, then node no longer cushions the data of current bit-rate video stream, and current bit-rate video stream is switched to high one-level, is about to current bit-rate video stream sequence number m and adds 1 (m=m+1).Enter step (6) then.
(5.3) if the video flowing sequence number m of the current code check of node equals 1, promptly be the video flowing of lowest bit rate, then node continues the data of the current bit-rate video stream of buffering; If current bit-rate video stream sequence number m is greater than 1, then node no longer cushions the data of current bit-rate video stream, and current bit-rate video stream is switched to low one-level, is about to current bit-rate video stream sequence number m and subtracts 1 (m=m-1).Enter step (6) then.
(6) wait for node scheduling time interval X second, get back to step (4) then and continue data dispatching.
Example:
The configuration of whole system is as shown in table 1, and V=10 is set, W=40, T=25, U=X=5;
Table 1 test case hardware configuration
Machine (quantity) CPU Internal memory Operating system Network interface card
Registrar (1) PIV 2.0G 512M Win 2003 Wired 100M
Broadcast source server (1) PIV 2.0G 512M Win 2003 Wired 100M
Wired desktop computer (4) Celeron 2.0G 512M Win XP Wired 100M
Wireless router (1) N/A N/A N/A Wireless 11M
Notebook (3) PIV 1.73G 256M Win XP Wireless 11M
Palmtop PC (2) SC32442300M 128M/64M WM 5.0 Wireless 11M
Program source provides three programs, and is as shown in table 2.
Three different programs of table 2
Figure A20091006213300131
Fig. 5 (a) has shown the situation of change of buffering area compactedness under two kinds of different mechanisms.For single code check, have only a video stream buffer district, when the compactedness of buffering area more and more lower, after can't being buffered to enough data and giving player, then the broadcast of player is as the very big at interval lantern slide of reproduction time, and the user cannot appreciate program at all.And for variable bit rate, along with the buffering area compactedness of main video flowing is more and more lower, this time, system can change into the lower video flowing of code check with main video flowing automatically, because the flow of 100KB/S enough cushions second video flowing, so system can play by successful second video flowing that switch to, and the buffering area compactedness of main video flowing can be As time goes on more and more higher.
Same limiting network bandwidth, for single code check, just mean that broadcast can interrupt, but after having adopted variable bit rate mechanism, under the very low situation of current bit-rate video stream buffer index, by switching to the video flowing of low code check, make the situation of buffering recover normal, broadcast can continue.
What Fig. 5 (b) described is exactly constantly to add in the process of wired node the bandwidth occupancy situation of change of broadcast source server.Put the validity of the data sharing strategy between the user in order to illustrate that different bit-rate videos spread, allow 10 radio nodes play low bit-rate video stream, constantly add the high bit-rate video stream of wired broadcast node then.For single code check, do not have data sharing between high bit-rate video stream user and the low bit-rate video stream user, and radio node is limited in one's ability, too many data are provided can not for other nodes.This time, low bit-rate video stream user's data was mainly to the broadcast source server requests, so the bandwidth occupancy of broadcast source server can be many.And, have data sharing owing to play the node of different bit-rate video streams for multi code Rate of Chinese character mechanism, so wired node can help the broadcast source server to provide data to radio node, this time, the load of broadcast source server will reduce.
As can be seen, adopt the design of multi code Rate of Chinese character, make the bandwidth occupancy of broadcast source server reduce some, this is because the stronger client of ability helps the broadcast source server that data are provided.The advantage of equity live broadcast system can embody under the more situation of user, and the route of point-to-point transmission and bandwidth is different because the transmission speed between node is understood, and very large difference is arranged.Number of nodes is many more, can find better data set provider more.Adopt the design of multi code Rate of Chinese character, make the user who plays different bit-rate video streams be in the consolidated network topology, so the chance of the data set provider that the user finds is just bigger.
Comprehensive The above results, shown the multi-code rate dispatching method in this reciprocity live broadcast system, can improve the buffer index of node and save broadcast source server end bandwidth occupancy, solve the adaptability problem that the network environment otherness causes on the whole, improve the stability of system.
The present invention not only is confined to above-mentioned embodiment; persons skilled in the art are according to content disclosed by the invention; can adopt other multiple embodiment to implement the present invention; therefore; every employing project organization of the present invention and thinking; do some simple designs that change or change, all fall into the scope of protection of the invention.

Claims (6)

1, multi-code rate dispatching method in a kind of reciprocity live broadcast system may further comprise the steps:
The 1st step broadcast source server is encoded into identical but N the video flowing that code check is different of content with each program source, and number from low to high by code check, add a channel to registrar again, the video streams N of the address of registration program source and the different code checks of this program source correspondence, N is the positive integer more than or equal to 2;
The 2nd step user node joins in the channel of registrar, obtains the address of this channel, and the video streams N of the different code checks of this channel, and the buffering area of node oneself is set according to video streams;
The 3rd step user node selects the video flowing of a code check to watch program from N video flowing, and the video flowing sequence number of establishing this code check is m, 1≤m≤N;
The 4th step user node to the neighbor node request msg of current place channel, is dispatched the video stream data of current channel according to the filling situation of the buffer container of own current bit-rate video stream in network;
The 5th step node detects the video stream buffer situation of current code check in data dispatching, and with the foundation of this buffering situation as the other bit-rate video stream of switching;
The 6th step was waited for a node scheduling time interval, got back to for the 4th step then and continued data dispatching.
2, multi-code rate dispatching method in the reciprocity live broadcast system according to claim 1 is characterized in that: the 4th step specifically comprised the steps:
The 4.1st step judged whether buffering area has begun to roll, if then entered for the 4.4th step, otherwise entered for the 4.2nd step;
The 4.2nd step, W determined according to the ability of user node to the current bit-rate video stream of the program source server requests foremost W data of second;
The 4.3rd step judged whether the video flowing of current code check has continuous T data second, and T determines according to the playing programs that system allowed start-up time, if having, begins to roll, and changes for the 4.5th step over to, otherwise got back to for the 4.2nd step;
The 4.4th step was according to priority asked the data of V second of back, and V determines according to the ability of user node, changes for the 4.5th step then over to;
The 4.5th step buffering area U data second of rolling forward, U is identical with node scheduling value blanking time, if current bit-rate video stream does not also begin to play, then judges whether to begin to play.
3, multi-code rate dispatching method in the reciprocity live broadcast system according to claim 2 is characterized in that: the 4.4th step specifically comprised the steps:
The 4.4.1 step, the video flowing i for each different code check distributed a weights P (i)=1/ (1+m-i), 1≤i≤m;
4.4.2 goes on foot j packet i for video flowing i, j, if having packet i in the neighbor node of this node, the number of nodes of j is X (i, j), packet i then, the priority of j is with formula F (i, j)=P (i)/((1+X (I, j)) calculates 1+X (i, j))=1/ (1+m-i);
4.4.3 step is calculated each priority of data packets of the video flowing of each different code check, and ordering from big to small according to priority, the data of the packet of scheduling V second.
4, multi-code rate dispatching method in the reciprocity live broadcast system according to claim 2 is characterized in that: the 4.5th step specifically comprised the steps:
4.5.1 step buffering area U data second of rolling forward, and judge that whether current bit-rate video stream is play, if also do not begin to play, changes the 4.5.2 step over to, otherwise enters for the 5th step;
4.5.2 step is waited for continuous T second the most forward in the buffer container of current bit-rate video stream or above data front that section white space buffering area that rolled out, or till front that section white space is filled, just begin to play, the starting point of buffer container that is the current bit-rate video stream of decision node begins whether to have continuous T data second, if have, then change the 4.5.3 step over to, otherwise entered for the 5th step;
The 4.5.3 step begins to play current bit-rate video stream, enters for the 5th step then.
5, according to multi-code rate dispatching method in arbitrary described reciprocity live broadcast system in the claim 1 to 4, it is characterized in that: the 5th step specifically comprised the steps:
The 5.1st step buffering situation is divided into, in, differ from three ranks, detect the damper mass of current code check, if continuous a period of time buffering situation has been arranged, then change the 5.2nd over to and go on foot all for well; If it all is poor that continuous a period of time buffering situation has been arranged, then changed for the 5.3rd step over to; Otherwise entered for the 6th step;
If the video flowing sequence number m of the 5.2nd step node current code check equals N, promptly be the video flowing of high code check, then node goes to cushion the data that sequence number is the video flowing of N-1 again in the data that keep the current bit-rate video of buffering to flow; If the video flowing sequence number m of the current code check of node is not equal to N, then node no longer cushions the data of current bit-rate video stream, and current bit-rate video stream is switched to high one-level, is about to current bit-rate video stream sequence number m and adds 1, enters for the 6th step then;
If the video flowing sequence number m of the current code check of the 5.3rd step node equals 1, promptly has been the video flowing of lowest bit rate, then node continues the data of the current bit-rate video stream of buffering; If current bit-rate video stream sequence number m is greater than 1, then node no longer cushions the data of current bit-rate video stream, and current bit-rate video stream is switched to low one-level, is about to current bit-rate video stream sequence number m and subtracts 1, enters for the 6th step then.
6, multi-code rate dispatching method in the reciprocity live broadcast system according to claim 5 is characterized in that: the 5.1st step specifically comprised the steps:
The 5.1.1 step is provided with a good grading counting and a difference grading counting, and initialization;
5.1.2 step is calculated the filling ratio of a buffering area, if the filling ratio of buffering area less than a default buffering ratio minimum value, then the buffering situation forwards the 5.14th to and goes on foot for poor; If the filling ratio of buffering area is greater than a default buffering ratio maximum, then the buffering situation forwards the 5.1.5 step to for well; Otherwise the buffering situation forwards the 5.1.3 step in being;
The 5.1.3 step puts the grading counting simultaneously and difference grading counting is 0, and enters for the 6th step;
It is 0 that the 5.1.4 step is put the grading counting, and difference grading counting adds 1, judges that simultaneously difference grading counting whether greater than default grading counting maximum, if then switching to the video flowing of lower code check and putting difference grading counting is 0, and forwarded for the 5.3rd step to; If not, then entered for the 6th step;
It is 0 that the 5.1.5 step is put difference grading counting, and good grading counting adds 1, judges that simultaneously good grading counting whether greater than default grading counting maximum, if then switching to the video flowing of higher code check and putting the grading counting is 0, and forwarded for the 5.2nd step to; If not, then entered for the 6th step.
CN2009100621330A 2009-05-19 2009-05-19 Multi-code rate dispatching method in peer-to-peer live broadcast system Expired - Fee Related CN101562737B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100621330A CN101562737B (en) 2009-05-19 2009-05-19 Multi-code rate dispatching method in peer-to-peer live broadcast system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100621330A CN101562737B (en) 2009-05-19 2009-05-19 Multi-code rate dispatching method in peer-to-peer live broadcast system

Publications (2)

Publication Number Publication Date
CN101562737A true CN101562737A (en) 2009-10-21
CN101562737B CN101562737B (en) 2010-12-29

Family

ID=41221326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100621330A Expired - Fee Related CN101562737B (en) 2009-05-19 2009-05-19 Multi-code rate dispatching method in peer-to-peer live broadcast system

Country Status (1)

Country Link
CN (1) CN101562737B (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101800885A (en) * 2010-02-26 2010-08-11 北京新岸线网络技术有限公司 Video data distribution method and system method and system for distributing video data
WO2014048244A1 (en) * 2012-09-28 2014-04-03 北京大学 Self-adaptive rate method and device for http streaming media
WO2014124555A1 (en) * 2013-02-17 2014-08-21 华为技术有限公司 Method and device for regulating streaming media data transmission
CN104125482A (en) * 2013-04-23 2014-10-29 深圳中兴网信科技有限公司 Streaming media playing method and device
CN105025330A (en) * 2014-04-30 2015-11-04 深圳Tcl新技术有限公司 Media file playing control method and apparatus based on DASH protocol
CN105263037A (en) * 2014-07-18 2016-01-20 中国科学院声学研究所 Self-adaptive streaming method based on client cache
CN105306970A (en) * 2015-11-30 2016-02-03 武汉斗鱼网络科技有限公司 Method and device for controlling stream media live broadcast transmitting speed
CN106162040A (en) * 2015-03-30 2016-11-23 北京视联动力国际信息技术有限公司 The method and apparatus that video conference accesses in many ways
CN106375790A (en) * 2016-09-23 2017-02-01 西安交通大学 QoE-driven adaptive scheduling method of multichannel HAS code rate
CN106657143A (en) * 2017-01-20 2017-05-10 中兴通讯股份有限公司 Streaming media transmission method and device, server and terminal
CN108540825A (en) * 2017-03-03 2018-09-14 北京搜狗科技发展有限公司 It is a kind of that treating method and apparatus, a kind of device for processing to be broadcast live is broadcast live
CN108810468A (en) * 2018-06-11 2018-11-13 哈尔滨工程大学 A kind of video frequency transmitter and method of optimization display effect
CN111262886A (en) * 2020-03-26 2020-06-09 桂林电子科技大学 Peer-to-peer network self-adaptive streaming media on-demand system and service quality guarantee method
CN112953922A (en) * 2021-02-03 2021-06-11 西安电子科技大学 Self-adaptive streaming media control method, system, computer equipment and application

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007528636A (en) * 2003-10-30 2007-10-11 チーク テクノロジーズ,インク. Non-blocking, deterministic multirate multicast packet scheduling
US7403488B2 (en) * 2004-02-17 2008-07-22 Mitsubishi Electric Research Labortories, Inc. Scheduling packet flows in multi-rate wireless local area networks
CN100477641C (en) * 2006-06-30 2009-04-08 华中科技大学 Data dispatching method of stream medium request broadcast system
CN101272479B (en) * 2008-03-31 2011-11-30 华为软件技术有限公司 Resource scheduling device and method, method and system and set-top box for demanding programs

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101800885A (en) * 2010-02-26 2010-08-11 北京新岸线网络技术有限公司 Video data distribution method and system method and system for distributing video data
WO2014048244A1 (en) * 2012-09-28 2014-04-03 北京大学 Self-adaptive rate method and device for http streaming media
US9722936B2 (en) 2012-09-28 2017-08-01 Peking University Method and system for rate adaption of HTTP stream media
WO2014124555A1 (en) * 2013-02-17 2014-08-21 华为技术有限公司 Method and device for regulating streaming media data transmission
CN104509061A (en) * 2013-02-17 2015-04-08 华为技术有限公司 Method and device for regulating streaming media data transmission
CN104125482B (en) * 2013-04-23 2018-01-30 深圳中兴网信科技有限公司 A kind of flow media playing method and device
CN104125482A (en) * 2013-04-23 2014-10-29 深圳中兴网信科技有限公司 Streaming media playing method and device
CN105025330A (en) * 2014-04-30 2015-11-04 深圳Tcl新技术有限公司 Media file playing control method and apparatus based on DASH protocol
CN105025330B (en) * 2014-04-30 2018-04-10 深圳Tcl新技术有限公司 Media file broadcast control method and device based on DASH agreements
CN105263037A (en) * 2014-07-18 2016-01-20 中国科学院声学研究所 Self-adaptive streaming method based on client cache
CN105263037B (en) * 2014-07-18 2018-07-03 中国科学院声学研究所 A kind of adaptive fluidizing method based on client-cache
CN106162040A (en) * 2015-03-30 2016-11-23 北京视联动力国际信息技术有限公司 The method and apparatus that video conference accesses in many ways
CN105306970A (en) * 2015-11-30 2016-02-03 武汉斗鱼网络科技有限公司 Method and device for controlling stream media live broadcast transmitting speed
CN105306970B (en) * 2015-11-30 2019-01-29 武汉斗鱼网络科技有限公司 A kind of control method and device of live streaming media transmission speed
CN106375790A (en) * 2016-09-23 2017-02-01 西安交通大学 QoE-driven adaptive scheduling method of multichannel HAS code rate
CN106375790B (en) * 2016-09-23 2019-04-09 西安交通大学 A kind of multichannel HAS code rate self-adapting dispatching method of QoE driving
CN106657143A (en) * 2017-01-20 2017-05-10 中兴通讯股份有限公司 Streaming media transmission method and device, server and terminal
CN108540825A (en) * 2017-03-03 2018-09-14 北京搜狗科技发展有限公司 It is a kind of that treating method and apparatus, a kind of device for processing to be broadcast live is broadcast live
CN108810468A (en) * 2018-06-11 2018-11-13 哈尔滨工程大学 A kind of video frequency transmitter and method of optimization display effect
CN108810468B (en) * 2018-06-11 2020-06-16 哈尔滨工程大学 Video transmission device and method for optimizing display effect
CN111262886A (en) * 2020-03-26 2020-06-09 桂林电子科技大学 Peer-to-peer network self-adaptive streaming media on-demand system and service quality guarantee method
CN112953922A (en) * 2021-02-03 2021-06-11 西安电子科技大学 Self-adaptive streaming media control method, system, computer equipment and application
CN112953922B (en) * 2021-02-03 2022-09-16 西安电子科技大学 Self-adaptive streaming media control method, system, computer equipment and application

Also Published As

Publication number Publication date
CN101562737B (en) 2010-12-29

Similar Documents

Publication Publication Date Title
CN101562737B (en) Multi-code rate dispatching method in peer-to-peer live broadcast system
Liu et al. Adaptive video multicast over the Internet
EP1472845B1 (en) Targeted scalable video multicast based on client bandwidth or capability
KR101478656B1 (en) Bit rate adjustment in an adaptive streaming system
CN101917613B (en) Acquiring and coding service system of streaming media
US20070039028A1 (en) Real time bit rate switching for internet protocol television
JP5314825B2 (en) System and method for dynamically adaptive decoding of scalable video to stabilize CPU load
CN101072337A (en) Method for fast zapping between TV channels
CN103210642B (en) Occur during expression switching, to transmit the method for the scalable HTTP streams for reproducing naturally during HTTP streamings
CN101478564A (en) Adaptive hierarchical transmission structure design method for P2P stream media network
Ban et al. An optimal spatial-temporal smoothness approach for tile-based 360-degree video streaming
Kim et al. A network-aware quality adaptation scheme for device collaboration service in home networks
CN111447511A (en) Bandwidth allocation method with user perception experience quality
Zhang et al. Cost-based cache replacement and server selection for multimedia proxy across wireless internet
Sheu et al. Dynamic layer adjustments for SVC segments in P2P streaming networks
CN109168023A (en) A kind of caching method of extensible video stream
CN102014300B (en) Device for realizing quick view function in video on demand
Yao et al. Perceptual experience oriented transmission scheduling for scalable video streaming over cognitive radio networks
Ahmed et al. P2p object-based adaptive multimedia streaming (poems)
Sun et al. MTcast: Robust and efficient P2P-based video delivery for heterogeneous users
Zhang et al. Self-adaptive peer-to-peer streaming for heterogeneous networks using scalable video coding
Hu et al. Scene aware smooth playout control for portable media players over random VBR channels
Zhang et al. Network coding based live peer-to-peer streaming towards minimizing buffering delay
Luo et al. An end-to-end video transmission framework with efficient bandwidth utilization
Zeng et al. Robust scalable video with network coding for peer-to-peer streaming

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101229

Termination date: 20130519