CN1072415C - System for dynamically allocating a scarce resource - Google Patents

System for dynamically allocating a scarce resource Download PDF

Info

Publication number
CN1072415C
CN1072415C CN94195116A CN94195116A CN1072415C CN 1072415 C CN1072415 C CN 1072415C CN 94195116 A CN94195116 A CN 94195116A CN 94195116 A CN94195116 A CN 94195116A CN 1072415 C CN1072415 C CN 1072415C
Authority
CN
China
Prior art keywords
resource
level
signal
user
distribute
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.)
Expired - Lifetime
Application number
CN94195116A
Other languages
Chinese (zh)
Other versions
CN1149367A (en
Inventor
麦哈麦特·K·奥兹肯
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.)
Technicolor USA Inc
Original Assignee
Thomson Consumer Electronics Inc
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 Thomson Consumer Electronics Inc filed Critical Thomson Consumer Electronics Inc
Priority to CN94195116A priority Critical patent/CN1072415C/en
Publication of CN1149367A publication Critical patent/CN1149367A/en
Application granted granted Critical
Publication of CN1072415C publication Critical patent/CN1072415C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

The present invention discloses a system for dynamically distributing resources, which comprises many resource users (5), and maximum utilization level resources (15, 20) which can be shared among many resource users. A plurality of requirement analyzers (10, 16) which are relevant to the corresponding resource users (5) dynamically generate all signals (complexity). Each signal represents the relevant requirement of the relevant resource users (5) for the maximum utilization level resources (15, 20). A plurality of access controllers (10, 14) which are relevant to the corresponding resource users (5) visit the maximum utilization level resources (15, 20) according to the resource users (5) which are relevant to a distribution signal (control) control phase. Response comes from a plurality of requirement indication signals (complexity) of the requirement analyzers (10, 16). Distribution signals (control) which represent utilization levels of distributed resources of the relevant resource users (5) are dynamically generated by a resource distributor (30).

Description

The system of dynamic assignment scarce resource
The demand that the present invention relates to be used for according to from the user is indicated, the systems of dynamic assignment scarce resource in several competition users.
Usually need in several users, share a scarce resource.For example, can make up from a plurality of vision signals that may be each signal source of TV network feed, TV station or other video source and propagate into each television receiver in the consumer family by the broadcasting satellite circuit.One satellite circuit as example comprises the Digital Transmission path of can per second transmitting 24 megabits (Mbps).For efficient and the purposes maximum that makes this circuit, the plurality of video signal demand is shared this circuit.For example, may wish at least six channel video signals, to share above-mentioned satellite link.In this case, this scarce resource is bandwidth or the bit rate in the satellite link.In this transmission system, share this resource for each vision signal by certain the part bandwidth or the bit rate that distribute transmission link.
A kind of known method of carrying out multiplexed function is that each passage all uses Constant Bit Rate (CBR) encoder.In this system, will offer the CBR encoder from the vision signal of each passage.The CBR encoder produces the digitally coded bit stream that representative offers its vision signal with predetermined Constant Bit Rate.For producing the Constant Bit Rate signal, the CBR encoder is constantly changed the quantification progression that vision signal is encoded.Utilize less quantized level to need less position to represent these levels, and reduced the required total bit of expression vision signal.Otherwise, utilize more quantized level to need more position to represent these levels, and increased the required total bit of presentation video.
Yet the quantized level in the code signal of change representative image causes the respective change on the picture quality of being reproduced by code signal.Utilize less quantized level and for utilizing more quantized level, cause a low-qualityer reproduced image.Therefore, in a CBR encoder, represent on the space and/or on the time more the vision signal of complex image be encoded in such a way, promptly not too the quality of complex image is low for the mass ratio of reproduced image.
Because the CBR encoder produces a Constant Bit Rate, therefore simplified from the multiplex control of the vision signal of some this encoders.Each encoder is by the bit rate that distributes to represent the quota of its total utilized transmission link bit rate in advance.A kind of known distribution method distributes the moiety of the total bit rate of transmission link to give each encoder.Yet, represent the vision signal of different program categories itself to have different complexity.For example, the video channel of transmission Basketball Match has higher complexity than the channel that transmits panel of expert discussion.Therefore, the quality of the image that reproduces from the encoded video signal of representing Basketball Match will be than the quality low (may be in fact lower) from the image of represent the encoded video signal reproduction that panel of expert discusses.
The another kind of known allocation method of attempting to address this problem is to give each CBR encoder according to the different bit rate of desired image complexity distribution in advance of signal to be encoded.Like this, the channel discussed than transmission panel of expert of the channel allocation that can give the transmission Basketball Match total bit rate of the transmission link of vast scale more.This distribution method may cause more approaching the equating of picture quality of reproducing from the code signal of representing Basketball Match and panel of expert that the two is discussed.
Also having a kind of known distribution method is to distribute the ratio of the total bit rate of transmission link to give channel according to signal supplier's payment.This supplier pays many more to transmission channel, the ratio of the total bit rate of transmission link of distributing to this channel is big more, and the quality of the image that reproduces from the code signal by this channel is good more.
Yet the inventor has realized that the complexity of vision signal can not always specify in advance.For example, news broadcast comprises and has the very sight of low-complexity, and (for example, a newsreader is sitting in after one and reads news) intercuts has the very sight of high complexity (for example Basketball Match video is sheared).If this video channel has distributed the total bit rate of a high proportion of transmission link in advance, then the Basketball Match sight may reproduce with acceptable quality, but can the ether high quality of newsreader's sight or is in other words used than needed more position to be encoded.On the other hand, if distributed the total bit rate of transmission link of low ratio for this video channel, then newsreader's sight may utilize rational figure place to reproduce with acceptable quality, but the bit rate that is distributed may be not enough to reproduce the Basketball Match sight with acceptable quality.
The inventor recognizes that further on average, each video source can use the mode identical with above-mentioned news broadcast to characterize, and promptly almost each vision signal with commercial value all comprises the sight of the high complexity that intercuts the low-complexity sight.Recognize that also the sight of different complexity is incoherent in time.And the inventor finds that also in any given frame period, different channel image have different complexity, and these complexity variations also are incoherent in time.
It is found that best degree according to each user's request comes the scarce resource of dynamic assignment transmission link bit rate.In above-mentioned example, preferably give different passages with the bit rate dynamic assignment according to the current present image complexity of those passages.The complexity of the image of the current positive transmission of all passages is by valuation, and the ratio of the total bit rate of transmission link is assigned in some sense each passage corresponding to the relation of the total complexity of the complexity of this passage present image and all channel image.
The purpose of this invention is to provide a kind of system that is used for the dynamic assignment resource, it comprises: a plurality of resource users and have the resource that the maximum that can share is utilized level between a plurality of resource users.The a plurality of demand analysis devices that are associated with the respective resources user dynamically produce resource user that each representative the is associated corresponding signal to the relevant demand of resource.The a plurality of access controllers that are associated with the respective resources user user that control is associated according to a distributing signal is to the visit of resource.Response is represented signal from a plurality of demands of demand analysis device, and resource allocator dynamically produces the distributing signal that institute's Resources allocation of representing associated user is utilized level.
Fig. 1 is the block diagram according to multiplex system of the present invention;
Fig. 2 is the block diagram that can be used in the channel processor in the multiplex system shown in Figure 1;
Fig. 3 is the block diagram that can be used on the mpeg encoder part in the channel processor shown in Figure 2;
Fig. 4 is the block diagram that can be used in the bit rate distributor in the multiplex system shown in Figure 1;
Fig. 5 is the more detailed block diagram that can be used in the adjuster in the mpeg encoder shown in Figure 3; And
Fig. 6,7 and 8 is expression sequential charts to the sampling of complexity information.
Fig. 1 is the block diagram in conjunction with multiplex system of the present invention.In Fig. 1, all signal paths all are expressed as single-signal-line.But, those skilled in the art will be appreciated that represented signal path can transmit multistation digital signal, or parallel convey, signal path can be made up of a plurality of holding wires in this case, or serial transfer, signal path can be the forms data line and/or comprise data and clock cable in this case.From this figure, deleted for simplicity and understood other control and clock signal path that the present invention has nothing to do.
In Fig. 1, a plurality of inputs 5 are coupled to the source (not shown) of the vision signal (passage 1-passage K) that will transmit together on a data link.These a plurality of inputs 5 are connected to the corresponding data input of corresponding a plurality of channel processors 10.Each data output end of a plurality of channel processors 10 is connected to multiplexer (MUX) 20 corresponding data input 1-K.The data output end of multiplexer 20 is connected to the output 15 of multiplex system.Output 15 is connected to the application circuit (not shown) that is used for transmitting multiplexed data flow (multiplexed data) on transmission link.
In a plurality of channel processors 10 each also comprises a complexity output and a control input end.The corresponding complexity output of each is connected to the corresponding complexity input of bit rate distributor 30 in a plurality of channel processors, and the corresponding quota output of bit rate distributor 30 is connected to the corresponding control input end of a plurality of channel processors 10.
During work, each channel processor receives the signal of representing next quota period allocated to give its bit rate in its control input end.This channel processor will be encoded to digitally encoded signal with the bit rate that distributes at the signal in next quota cycle of its data input pin then.Encoded data signals offers the corresponding input of multiplexer 20.Multiplexer 20 is operated in known manner, will being multiplexed data flow from the signal combination of all channel processors.Still in a known way multiplexed data flow is offered the circuit that comprises the data link that is used to transmit then.
In cataloged procedure, channel processor 10 produces the be encoded signal of codec complexity of signal of expression at its complexity output.Bit rate distributor 30 receives the signal from the complexity output of channel processor 10, and dynamically regulates the bit rate quota in next quota cycle in a plurality of channel processors 10 according to all complexity signals.In a preferred embodiment, complicated signal is distributed higher bit rate relatively than not too complicated signal dynamics.The distinct methods of determining the vision signal complexity and distributing bit rate according to this complexity is described below.
Fig. 2 is the block diagram that can be used on the channel processor in the multiplex system shown in Figure 1.In Fig. 2, represent with identical label with the similar parts of parts among Fig. 1, and be not explained in detail hereinafter.Data input pin 5 is connected to the video signal source (not shown) in Fig. 2.Data input pin 5 is connected to the data input pin and the complexity analyzing device 16 of constant bit rate encoders (CBR) 14.The data output end of CBR encoder 14 is connected to the input of multiplexer (MUX) 20 (Fig. 1).The control input end of channel processor 10 (control) is connected to the quota input Q of CBR encoder 10.The output of complexity analyzing device 16 is connected to the complexity output (complexity) of channel processor 10.
During work, complexity analyzing device 16 is analyzed the complexity of the vision signal of data input pin 5.Output at complexity analyzing device 16 produces the signal of representing the input signal complexity.This complexity representation signal is provided to bit rate distributor 30 (Fig. 1).Respond this complexity signal (and those signals of other channel processor 10), bit rate distributor 30 provides the signal of representing the bit rate of distributing to this channel processor 10 to this channel processor 10 control input end (control) of (with other channel processor 10).CBR encoder 14 provides data path at its data input pin and generation between the data output end with the output signal of Constant Bit Rate coding.Set Constant Bit Rate according to the signal that is input to quota input Q from bit rate distributor 30 from the control input end (control) of channel processor 10.
Might complexity analyzing device 16 at the circuit that carries out also using when it is analyzed in the CBR encoder 14.In this case, as shown in phantom in Figure 2, data directly offer complexity analyzing device 16 in CBR encoder 14.This data of CBR encoder 14 can be replenished the data from input 5, or substitute it fully, and the complexity analyzing device directly is not connected with data input pin 5 in this case.
In a preferred embodiment, each CBR encoder 14 is the standard announced according to Motion Picture Experts Group (MPEG) encoders to video signal compression and coding, is referred to as mpeg encoder.Fig. 3 is the block diagram of the part of expression one mpeg encoder 14.Below the known tip assemblies of mpeg encoder 14 will be described in detail.Mpeg encoder is comprised with understand other parts that the present invention has nothing to do, left out them for simplicity in the figure.
In Fig. 3, the data input pin 5 of mpeg encoder 14 (data input) is connected to video signal source (not shown) to be compressed and coding.Input 5 is connected to the input of frame buffer 41.Frame buffer 41 comprises a plurality of frame period buffers or delay line and a plurality of output, and this output produces each signal of the part of different but temporarily adjacent frame of expression or image.A plurality of outputs of frame buffer 41 are connected to the corresponding input of motion estimator 42.The output of motion estimator is connected to discrete cosine transform (DCT) circuit 43.The output of DCT circuit 43 is connected to the data input pin of variable quantization device (Qu) circuit 46.The output of variable quantization device circuit 46 is connected to the input of variable length coder (VLC) 47.The output of VLC47 is connected to the input of output buffer 48.The data output end of output buffer 48 is connected to the data output end (data output) of mpeg encoder 14.The data output end of mpeg encoder 14 (data output) is connected to the corresponding input of multiplexer 20 (Fig. 1).
The state output end of output buffer 48 is connected to the state input of bit rate adjuster 49.The control output end of bit rate adjuster 49 is connected to the control input end of variable quantization device 46.The quota input Q of mpeg encoder 14 is connected to the corresponding quota output of bit rate distributor 30.The quota input Q of mpeg encoder 14 is connected to the control input end of adjuster 49.
In when work, mpeg encoder 14 operate in a known way, so as to its input next by norm the vision signal in cycle compress with the determined bit rate of the signal of its Q input and encode.In following example, the mpeg encoder to the encoding video signal that is divided into the group of being made up of 12 images or frame (GOP) is described.Yet should understand the image among the GOP or the quantity of frame may change.In addition, in following example, suppose that the bit rate of each mpeg encoder is assigned as every GOP renewal once, promptly the quota cycle is the GOP cycle.But, will also be understood that quota also may be different in the cycle, and itself in addition can change in time.
Frame buffer 41 receives in mode described below and storage representation need carry out 12 frame partial data among the demonstration GOP that just is carried out coding of estimating motion.These data offer motion estimator 42.In a preferred embodiment, first in 12 images or the frame is used as reference frame (I frame), and through motion estimator to DCT circuit 43.For remaining frame, each piece that relatively is called in the mpeg standard document in each image of macro block or the pieces that a plurality of 16 pixels in the frame multiply by 16 row produces motion vector in motion estimator 42, or they are separately from previous frame (P frame), perhaps from previous frame and the two interpolation of subsequent frame (B frame).As mentioned above, frame buffer 41 is preserved the required data of motion estimator, to realize from previous frame or from the valuation of previous frame and subsequent frame interpolation.Then the motion vector of the concrete frame that is produced with just compared by the real data in the frame of valuation, produce the differences in motion value signal, and offer DCT circuit 43.
In DCT circuit 43, according to the mpeg standard document, take advantage of 16 row macro blocks and be divided into piece (four luminance block that six 8 pixels are taken advantage of 8 row from 16 pixels of the spatial data of I frame from the differences in motion value signal of P frame and B frame, and the chrominance block of two double samplings), be called macro block at the remainder of this application.Each macro block is carried out discrete cosine transform.Resulting 8 take advantage of 8 DCT coefficients to offer variable quantization device 46 subsequently.8 take advantage of 8 coefficients be quantized, with zigzag order scanning and be provided to VLC47.DCT coefficient after the quantification utilizes the run-length encoding method to encode in VLC47 with other supplementary of representing GOP (with the relating to parameters of coding GOP), and is provided to output buffer 48.
Known control VLC47 output bit rate and to keep the institute of mpeg encoder 14 to distribute the direct mode of Constant Bit Rate thus be to control the quantification progression that is used to quantize each DCT coefficient block in the variable quantization device 46 (or in other words, quantization step).The control signal that offers variable quantization device 46 from bit rate adjuster 49 is carried out this controlled function.At one is that quota from the cycle between the continuous bit rate quota update signal of bit rate distributor 30 (Fig. 1) is in the cycle, bit rate adjuster 49 offers control signal variable quantization device 46 in known manner, it will change among the GOP per 16 and take advantage of 16 macro blocks to be carried out the quantification progression of quantification, so as to keep this quota cycle distribute bit rate.In following described mode, according to the codec complexity value of the vision signal of every passage in a plurality of passages, the bit rate of bit rate adjuster 49 is distributed in each GOP cycle and changes in this example.
In a preferred embodiment, bit rate distributor 30 (Fig. 1) is to have the computer system that is connected to the connector of various circuit blocks in a plurality of channel processors 10.Fig. 4 is the hardware block diagram that constitutes bit rate distributor 30.In Fig. 4, microprocessor (μ P) 31 is connected to read/writable memory device (RAM) 32 by computer system bus 35, read-only memory (ROM) 33 and I/O (I/O) controller 34.Also have other computer system part,, do not illustrate in the drawings in order to simplify such as mass storage device and user terminal.I/O controller 34 has the input (complexity) of a plurality of corresponding complexity outputs that are connected to a plurality of channel processors 10 (Fig. 1) and is connected to a plurality of outputs (by norm) of the corresponding quota input of a plurality of channel processors 10.
Microprocessor 31, RAM32, ROM33 and I/O controller 34 are in a known way as computer working, execution is stored in the program among the ROM 33, store and retrieve the data among the RAM32, and receive data and transmit data to these devices from the device that attaches to I/O controller 34.The data of representing the present encoding complexity of the vision signal of just encoding in a plurality of channel processors 10 (Fig. 1) are to receive at the corresponding output of I/O controller 34 from these channel processors through " complexity " input in mode described below.For example poll, interruption untill further notice are received this data to microprocessor 31 in a known way.Microprocessor 31 machine system bus 35 is as calculated retrieved these signals from I/O controller 34, determine the position quota in next quota cycle of every encoder, and will represent that in next quota cycle the signal of these quotas offers a plurality of channel processors 10 through " by norm " output.
For each image of GOP or all macro blocks in the frame, be used for determining that the best approach of the codec complexity of the vision signal of encoding with mpeg encoder 14 (Fig. 3) is to utilize per 16 to take advantage of the quantitative calibration factor of 16 macro blocks (to be marked as Q MB) and the figure place of this macro block that is used to encode (be marked as T MB).Fig. 5 is the bit rate adjuster 49 and the block diagram of generation according to the complexity analyzing device 16 (Fig. 2) of the codec complexity representation signal of this method of mpeg encoder 14 (Fig. 3).For simplifying this figure, various clocks and control signal have been deleted among Fig. 5.Yet those signals that need and their required sequential and voltage characteristic are intelligible.
Complexity analyzing device 16 shown in Figure 5 is examples that only are used to as shown in phantom in Figure 2 from the complexity analyzing device of the information of CBR encoder 14.In Fig. 5, bit rate adjuster 49 has the state input T of the state output end that is connected to output buffer 48 (Fig. 3) MBThe control output end Q of bit rate adjuster 49 MBBe connected to the control input end of variable quantization device 46 (Fig. 3).Bit rate adjuster 49 also has the control input end (Q) of the corresponding quota output that is connected to bit rate distributor 30 (Fig. 1).
The state input T of bit rate adjuster 49 MBBe also connected to the first input end of first adder 92.The output of first adder 92 is connected to the input of first latch 93.The output of first latch 93 is connected to the first input end of multiplier 94 and second input of first adder 92.The output of multiplier 94 is connected to the input of second latch 95.The output of second latch 95 is connected to codec complexity output X PicCodec complexity output X PicBe connected to the corresponding complexity input of bit rate distributor 30 (Fig. 1).
The control output end Q of bit rate adjuster 49 MBAlso be coupled to the first input end of second adder 96.The output of second adder 96 is coupled to the input of the 3rd latch 97.The output of the 3rd latch 97 is coupled to the molecule input N of divider 98 and second input of second adder 96.The output of divider 98 is coupled to second input of multiplier 94.Register 99 has the output that is coupled to divider 98 denominator input D.
During work, for each macro block, bit rate adjuster 49 produces the quantitative calibration factor signal Q of variable quantization device 46 in known manner according to present bit speed quota and the figure place that is used for previous image encoding MB, receive expression from output buffer 48 then and be used for figure place T this macroblock coding MBSignal.Variable quantization device 46 (Fig. 3) is according to the quantitative calibration factor Q MBQuantize the DCT coefficient in each macro block.The quantitative calibration factor Q MBRepresent quantization step, or the percentage of the whole dynamic range of DCT coefficient in each quantized level.The Q of big value MBThere is bigger quantization step in expression, and therefore, quantized level is less.Otherwise, the Q of little value MBThere is less quantization step in expression, and therefore, quantized level is more.In a preferred embodiment, Q MBIt is one five integer (having the numerical value between 1 to 31).
The average quantization scale factor of all macro blocks (is marked as Q in a complete image or frame Pic) be calculated as follows.In the beginning of each frame or image, responding a reset signal (not shown) is clearly zero with latch 93 and 97.The combination of second adder 96 and the 3rd latch 97 as an accumulator job so that continuously will be from the macro block quantitative calibration factor Q of bit rate adjuster 49 MBSummation.Simultaneously, the combination of the first adder 92 and first latch 93 as accumulator work with continuously to so far being used for figure place summation to image or frame coding.
All macro blocks in handling frame or image (are indicated as N MBQuantity) after, latch 97 comprises all macro block quantitative calibration factor Q that bit rate adjuster 49 produces MBSum, latch 93 comprise all T that are used for image or frame coding PicSum.Divider 98 produces all macro block quantitative calibration factor Q in image or the frame MBSum is by macroblock number N in image or the frame MBThe merchant who removes.This merchant is the average quantization scale factor Q in this frame or the image PicMultiplier 94 produces Q PicAnd T PicLong-pending, it (is indicated as X for the codec complexity of this image Pic), i.e. X Pic=T Pic* Q PicWhen image or frame end, the response clock signal (not shown) is with codec complexity signal X PicBe latched in second latch 95.Repeat above-mentioned circulation for each image in the vision signal of just encoding or frame then.
Then with codec complexity X PicBe provided to the complexity input of the I/O controller 34 of bit rate distributor 30 (Fig. 4) from latch 95, remain processing, to obtain the codec complexity of GOP.The codec complexity of GOP (is indicated as X GOP) be the X of all images among this GOP PicAnd.(square journey (1)). μ P31 is as retrieving each X from I/O controller 34 PicValue and in GOP on all frames or the image to the accumulator of their summations.
The total maintenance of the quantity of frame or image (being indicated as N) is constant among the GOP.When N is constant, can on the basis of mobile window, calculate X GOP, add the codec complexity value X of last image Pic, and deduct among the GOP codec complexity value of image the earliest.In this case, the X that after each frame or image, can obtain upgrading GOPValue.But N can change.If N changes, then the X of the GOP of corresponding redetermination GOPMust pass through codec complexity value X from the new quantity of previous image among the redetermination GOP PicThe summation and calculated, as equation (1).
As mentioned above, different passages are possible with different frames or image rate operation, and for example, standard video frame rates (in the U.S.) is per second 29.97 frames, and it is per second 24 frames for film image, and it is per second 15 frames for cartoon.Also having a kind of may be image or the frame that different passages have varying number among the GOP.Therefore, might have the different GOP time cycles by different passages.In order under this condition, accurately to divide coordination to give passage, by every passage (is marked as GOP from the GOP complexity value of equation (1) divided by GOP time cycle of this passage Time), in this case the GOP codec complexity value of a plurality of passages in bit rate distributor 30 by time normalization.(square journey (2)).Normalized then GOP Xnorm GOP = X GOP GO P time - - - - ( 2 ) The codec complexity value (is marked as Xnorm GOP) be used in different passages, dividing coordination (bit).To discuss the sampling sequential and the generation of value by norm of the complexity value of this system below in more detail.
Return referring to Fig. 5, as mentioned above, for each macro block, bit rate adjuster 49 produces the quantitative calibration factor signal Q of variable quantization device 46 MB, receive expression from output buffer 48 then and be used for figure place T this macroblock coding MBSignal.These signals also can directly offer the I/O controller 34 in the bit rate distributor 30 (Fig. 4).The codec complexity value that but μ P31 internal calculation is suitable then (from equation (1) or equation (1) and (2)).
And, in order to simplify transmission, can be to each image X PicThe codec complexity value carry out no-load voltage ratio and calculate.In a preferred embodiment, this value is become eight-digit number behind multiplier 94.Then the value after this no-load voltage ratio is sent to bit rate distributor 30 (Fig. 4).Owing to other reason,, also might wish the image complexity value X of this computer system with a file such as allowing under the situation that N changes calculation code complexity value again PicFor example be kept in the mass storage (not shown).Store 8 X of one hour PicValue will take 108 kilobytes (kB) for normal video, take 86kB for film.
In the following discussion, X iRepresent current obtainable X from the i channel processor GOP(if all passages have the same GOP time cycle) or Xnorm GOPIn suitable one.Bit rate distributor 30 (Fig. 1) is according to the codec complexity value X that comes all K channel processor of a plurality of channel processors 10 of self-forming iProduce corresponding quota (Q) signal of the distribution that can put in place in the transmission link of representing next quota cycle.Scheduled transmission link bit rate (being marked as R) from multiplexer 20 (Fig. 1) output distributes in a plurality of channel processors 10, and therefore i channel processor receives and be indicated as R iBit rate distribute.
Be used for distributing the bit rate of transmission link to be for a kind of method of different passages, according to the current obtainable codec complexity X in previous GOP cycle of all channel processors 10 (Fig. 1) i(on mobile window basis, linear distribution as mentioned above).In the method, each processor i receives the same ratio R of total bit capacity R iAs this encoder X iCodec complexity to provide total coding complexity of all encoders.(square journey (3)).Yet, have been found that to exist the lower limit bit rate to distribute, below this bit rate distributes again R i = X i Σ j = 1 K X j - - - - ( 3 ) The quality of existing image descends suddenly.In addition, in the embodiment shown, the bit rate in next quota cycle distributes the complexity that depends on from previous GOP to measure.Like this, if the scene change of existence from the simple image to the complicated image, because the distribution of new sight is based on previous, simple sight, it may be not enough that branch is used in the position that new, complicated sight is encoded.
Be used for distributing the bit rate of transmission link to guarantee the minimum bit rate of each encoder i is distributed RG for the other method of different passages i, and distribute remaining bit linearly as equation (3).(square journey (4)).Depend on R i = RG i + X i Σ j = 1 K X j [ R - Σ j = 1 K RG j ] - - - - ( 4 ) The expection total complexity of the video by channel transfer and/or the passage price that the vision signal supplier is proposed, every passage can have the minimum bit rate of different assurances.
Also has method that a kind of position that is used for distributing transmission link gives different passages for being that every encoder i provides weighted factor P i, and according to using weighted factor P iThe codec complexity value X of weighting iDivide coordination pari passu.(square journey (5)).As the assurance smallest allocation method of equation (4), weighted factor P iMay depend on R i = P i X i Σ j = 1 K P j X j - - - - ( 5 ) The expection total complexity of the vision signal by channel transfer and/or the passage price that the vision signal supplier is proposed.
The method for optimizing that divides coordination to give different passages in transmission link is the combining of smallest allocation method of weight assignment method and the assurance of equation (4) of equation (5).In this method, guarantee smallest allocation, and on the basis of weighting ratio, distribute remaining position every passage.(square journey (6)).As mentioned above, protect R i = RG i + P i X i Σ j = 1 K P j X j [ R - Σ j = 1 K RG j ] - - - ( 6 ) The smallest allocation of card and weighted factor may depend on the expection total complexity of the vision signal by channel transfer and/or the passage price that the vision signal supplier is proposed.
Might distribute R according to the further selected position of other parameter of system iFor example, found to exist a upper limit bit rate apportioning cost, can't see the improvement of reproduced picture quality more than the value at this.Therefore, to distribute be waste to the transmission link meta in the position that surpasses this upper limit apportioning cost.In addition, the operator of transmission link can implement maximum bit rate distribution R to every passage Max(it can react above-mentioned upper limit bit rate apportioning cost) and/or minimum bit rate distribute R Min
In addition, make the stable maximum of bit rate control in order to make bit rate control the possibility minimum of fluctuation, at a maximal increment that can apply increase α and/or reduce β the cycle, the bit rate in cycle distributed by norm to next by norm from passage.As mentioned above, the maximal increment that the numerical value of upper limit bit rate apportioning cost, minimum and maximum bit rate distribute and increase and reduce, can be different for different passages, and can be depending on the expection total complexity of the vision signal by this channel transfer and/or vision signal supplier's passage price.In addition, increase and the minimum and maximum increment that reduces might dynamically change according to the empty or full degree of buffer in the passage.
And bit rate that also can further selected distribution is so that provide buffer management, for example guarantees that the input buffer of the output buffer of CBR encoder 10 (Fig. 1) and corresponding receiver decoder (not shown) can overflow or underflow.If control coded buffer size E does not then need obviously as shown in inequality (7) E ≤ D R min R max - - - - ( 7 ) Buffer management, wherein D is the decoding buffer sizes of fixing.If select the coded buffer size according to inequality (7), bit rate distributes can be from R MinChange to R MaxAnd the overflow or the underflow of the buffer that can not cause encoding or decode.But this method has too limited the size of coded buffer, has therefore too limited the flexibility of rate controlled.
A kind of buffer management scheme of replacement is current, the instantaneous bit rate that is suitable for and utilize buffer management, rather than preset parameter R MinAnd R MaxBecause selecting the decoding buffer sizes can handle with maximum rate R MaxThe data of transmission, the bit rate distribution always can increase (to the maximum R of system Max), and the decoding buffer is overflowed.Yet, have the instantaneous minimum bit rate that must keep, to guarantee that the data in coded buffer were transferred to the decoding buffer before its decode time.Therefore, must dynamic calculation guarantee to decode buffer not the minimum bit rate of underflow distribute.
In dynamic calculation should the minimum bit rate be distributed, divide timing when reducing bit rate, must consider that new definite coded buffer is big or small and in some previous time amount, be placed on data volume in the coded buffer.Be appointed as E nThe new coded buffer size of determining of n frame determine that according to equation (8) wherein Δ is a system E n = Δ R new = R new R max D - - - ( 8 ) Be that frame of video is when arriving encoder and the constant time delay of this frame between when being presented on the decoder time of delay; D is the decoding buffer sizes of fixing; And R NewBe that the new bit rate that proposes distributes.This buffer sizes is guaranteed will not have overflow or underflow in the Code And Decode buffer under the stable state that new bit rate distributes.
But, as mentioned above,, then there is the change-over period that equals system delay time Δ if the bit rate of proposition distribution newly reduces, wherein may have too many position and in coded buffer, consequently can not successfully arrive decoder than lower rate transmissions with new.Be used for a kind of suggesting method that the bit rate of selected new proposition distributes and be at first the volume check of the system delay time Δ previous frame that is indicated as Г is indicated as the actual figure place of putting into coded buffer (buffer is saturated) of e.The saturated number of largest buffer with previous Г frame (is indicated as e then Max, Г) with the new coded buffer size E that determines that obtains by equation (8) nCompare.Guarantee that then the bit rate that reduces of minimum that successfully is transferred to the passage i of receiver decoder from all of previous Г frame distributes R ReduceProvide by equation (9).
If this restriction puts on multiplexer system, then after having calculated bit rate according to equation (3), (4), (5) or (6) and distributing, check that these bit rate branches are equipped with and determine whether they drop in the current upper and lower bound of this passage.At first, the upper and lower bound of every passage i is determined.Any quota cycle k (is expressed as R i The upper limit[k]) upper limit bit rate distribute to be minimum in following: the maximum on the previous quota cycle k-1 allowed to increase distribution; Distribute the limit with maximum bit rate.(square journey (10)).The lower limit R of any quota cycle k i The upper limit[k]=min{R i Max, (1+ α) R i[k-1] } (10) rate distribution R i Lower limit[k] is following middle maximum: minimum bit rate distributes the limit; Minimum on the quota cycle k-1 allowed distribution that reduces and the bit rate that is reduced by the minimum that equation (9) obtains to distribute in the past.(square journey (11)).Carry out the adjustment that the passage bit rate distributes then.R i Lower limit[k]=max{R i Min, (1-β) R i[k-1], e Max, Γ/ Δ } (11)
If any passage distribute bit rate to surpass arbitrary limit value, then the bit rate of this passage distributes and is set to this limit value, and redistributes available residue bit rate in other passage.For example, if as calculating with equation (3), (4), (5) or (6), distribute to the upper limit of the bit rate of a passage i greater than this passage, calculate as equation (10), then the bit rate of passage i is set at this upper limit R i The upper limit[k].If instead the lower limit that bit rate is calculated less than equation (11) then is set at bit rate this lower limit R i Lower limit[k].(square journey (12)).
Figure C9419511600171
If any bit rate of the qualification operation change of equation (10), (11) and (12) distributes, then in the passage that does not limit, redistribute the remaining bit rate that utilizes according to equation (3), (4), (5) or (6).The limit in relative then equation (10), (11) and (12) is checked these passages once more.Repeating this circulation distributes up to finishing all bit rates.In the above-described embodiments, the codec complexity cycle is to move on the window basis GOP cycle that image is one by one determined one, and it is that the variation from a quota cycle to next quota cycle generally speaking should less enough time intervals during bit rate in the passage distributed.Therefore, equation (10), (11) and (12) should seldom be quoted.
If passage just operate with the different GOP time cycles, the sequential of codec complexity sampling and be complicated based on the updated space rate generation by norm of codec complexity.There are two kinds of methods that produce the bit rate quota allocation under the sampling of precision encoding complexity and this situation.In first method, calculate the constant quota cycle by this way, promptly each passage has the quota cycle of equal amount in every GOP.In the method, sampling number and quota cycle can change from channel-to-channel among every GOP, and still, for any passage, this sampling and the quantity in quota cycle are constant in the GOP.In the second approach, get a sample, whenever any passage begins to produce new the distribution once new GOP, and consideration is from the length computation of the time cycle of the previous current sampling of the sampling figure place with new quota allocation.
Fig. 7 is that expression utilizes the sequential chart that first method is sampled and quota upgrades in system.In order to simplify this figure, only show two passages.In Fig. 7, passage 1 is the example of a passage of the normal video of the frame rate (in the U.S.) of transmission with per second 30 frames.Passage 2 is examples of a passage of the film of the frame rate of transmission with per second 24 frames.Suppose that each GOP of each passage has 12 frames.Passage 1 per 0.4 second beginning one new GOP like this, or 2.5 GOP of per second, and passage 2 began a new GOP or 2 GOP of per second in per 0.5 second.Selected sampling rate is per 0.1 second sample.Therefore, in passage 1, in each GOP, exist four samples and quota to upgrade, in passage 2, in each GOP, exist five samples and quota to upgrade.Represent sample time tS with vertical dotted line.Because the time cycle Δ t between the sample is constant (0.1 second), above-mentioned equation (3) can without any modification be used to calculate the bit rate of next sampling period to equation (12) and distribute.These bit rates distribute and can add up and be used in the channel processor 10 (Fig. 1) according to the known arrangement that is referred to as " mark and funnel (token and leaky bucket) ".
Fig. 8 is that expression utilizes the sampling of the codec complexity value in the system of above-mentioned second method and the sequential chart that quota upgrades.Each passage shown in Fig. 8 is propagated identical signal with Fig. 7.In Fig. 8, when no matter when arbitrary passage begins a new GOP, obtain sample from the present encoding complexity value of all passages.Produce new the distribution according to these sample values with from the time cycle Δ t that last sample begins.These sampling times are expressed as vertical dotted line t1-t8 in Fig. 8, t2 wherein, and t3, t4, t6 and t8 are corresponding to the beginning of GOP in the passage 1, and t1, t3, t5 and t7 are corresponding to the beginning of GOP in the passage 2.Though t3 represents the sampling time corresponding to the beginning of GOP in passage 1 and the passage 2, do not require this appearance constantly.
At each sampling time, to the present encoding complexity value in all passages (from former GOP, can be on mobile window basis one by one image ground obtain) sample.Equation (3) to equation (12) can be used for calculating next bit rate quota ratio, but when the actual number of bits of determining to can be used for distributing, the time quantum Δ t that begins from last sample must take in.In order suitably to compensate different sample cycles, obtainable bit rate R total in equation (3) to (12) substitutes with the figure place (being appointed as C) that can be used for distributing, and it is the product that always can obtain bit rate R and the Δ t of sample cycle, i.e. C=R Δ t.Then equation (3) is distributed to each channel processor 10 (Fig. 1) to the figure place that equation (12) calculates, it utilizes " mark and funnel " scheme to add up as mentioned above and uses the position of being distributed.When the vision signal from different passages 5 has different GOP during the time cycle, each in above-mentioned two kinds of methods will accurately distribute bit rate to give each channel processor 10.
If all passages are with identical frame rate work, and have identical frame number in a GOP, promptly all passages have identical GOP time cycle GOP TimeThen can simplify the sampling sequential of codec complexity value and the generation of different passage updated space rate quotas.Fig. 6 is a codec complexity sample and the sequential chart that upgrades sequential by norm in this system of expression.In Fig. 6, each horizontal line is corresponding to respective channel 1-K.Begin the moment of the coding of I frame from the upwardly extending short vertical line representative of horizontal line from this passage, it is considered to the beginning of the GOP of this passage.The time cycle GOP of GOP TimeIn all passages, equate, but as can be seen, the time started of the GOP of each passage is different.In fact, have found that the GOP of each passage preferably has different zero-times, the coding of I frame can be not overlapping like this.This complexity that has increased through different passages changes.
Found that these frames are inessential from different GOP as long as consider I frame, P frame and the B frame of similar number when calculation code complexity value.Therefore, as with shown in the solid line that extends through all channel time axles, can side by side obtain the sample of codec complexity value any time in GOP from all passages.Can produce renewal and transmission backward channel processor 10 (Fig. 1) of the bit rate quota of all passages then from this sample.
According to the above-mentioned multiplex system of having put system description in the lump.But.A plurality of channel processors 10 can be placed on the position far away of off normal rate distributor 30 and multiplexer 20.In a kind of like this system, between encoder and bit rate distributor, set up communication link.In this case, some bit position that transmits between processor 10 and multiplexer can be exclusively used in the complexity transmission of Information of processor.

Claims (13)

1, a kind of system that is used for the dynamic assignment resource comprises:
A plurality of resource users (5);
Have the maximum that between a plurality of resource users (5), to share and utilize the resource (15,20) of level;
The a plurality of demand analysis devices (10,16) that are associated with respective resources user (5) are used for dynamically producing resource user (5) that each representative is associated each signal to the relevant demand of resource;
The a plurality of access controllers (10,14) that are associated with respective resources user (5) are used for the user (5) that is associated according to the distributing signal control visit to resource (15,20); And
Resource allocator (30) is used for response and represents signal from a plurality of demands of demand analysis device (10,16), dynamically produces each distributing signal of representing the level of resource utilization that is distributed;
Wherein said demand represents that signal represents the demand from the picture signal in unlike signal source respectively.
2, resource allocation system as claimed in claim 1, wherein: resource allocator (30) produces corresponding distributing signal, so that compare with the user with relatively low demand (5), makes the user (5) with relative high requirements will receive higher relatively distribution.
3, resource allocation system as claimed in claim 2, wherein resource allocator (30) produces corresponding distributing signal, so that represent that for user (5) distributes demand that the demand equal to be associated with this user (5) represents the signal representative and all demands the maximum of ratio of the integration requirement of signal representative utilizes the ratio of level.
4, resource allocation system as claimed in claim 2, wherein:
For specifying a corresponding predetermined least resource, each user (5) utilizes level; And
Resource allocator (30) produces corresponding distributing signal, utilize level so that be assigned as the predetermined least resource of its appointment for user (5), and further distribute a surplus resources to utilize the ratio of level, this surplus resources utilizes level to equal the predetermined least resource that maximum resource utilizes level to deduct previous distribution and utilizes level, and the demand that the demand that the ratio of described further distribution equals to be associated with this user (5) is represented the signal representative and all demands are represented the ratio of the integration requirement of signal representative.
5, resource allocation system as claimed in claim 2, wherein:
For each user (5) specifies a corresponding predetermined weight factor; And
Resource allocator (30) produces corresponding distributing signal, so that the maximum resource that distributes demand that the demand equal to be associated with this user (5) represents the signal representative and all demands to represent that the ratio of the integration requirement of signal representative is assigned to associated user's (5) predetermined weight factor weighting for user (5) utilizes the ratio of level.
6, resource allocation system as claimed in claim 2, wherein:
For specifying a corresponding predetermined least resource, each user (5) utilizes level and a predetermined weight factor; And
Resource allocator (30) produces corresponding distributing signal, utilize level so that be assigned as the predetermined least resource of its appointment for user (5), and further distribute a surplus resources to utilize the ratio of level, this surplus resources utilizes level to equal the predetermined least resource that maximum resource utilizes level to deduct previous distribution and utilizes level, and the demand that the ratio of described further distribution equals to be associated with this user (5) represents that the demand of signal representative and all demands represent that the ratio of the integration requirement of signal representative is assigned to associated user's (5) predetermined weight factor weighting.
7, resource allocation system as claimed in claim 2, wherein:
For specifying a corresponding predetermined resource, each user (5) utilize level to distribute the increment limit; And
After producing corresponding distributing signal, resource allocator (30) utilizes the level distribution with respective resources and is compared by the corresponding level of resource utilization distribution of the previous corresponding distributing signal representative that is right after, utilize level to distribute increment to determine respective resources, if and the predetermined resource that level of resource utilization distributes increment to surpass appointment utilizes level to distribute the increment limit, then produce a representative by having changed the distributing signal that predetermined resource utilizes level to distribute the represented level of resource utilization of the previous corresponding distributing signal that is right after of the increment limit to distribute, replace the level of resource utilization of previous this relative users that produces to distribute.
8, resource allocation system as claimed in claim 7, wherein to utilize level to distribute the increment limit be the maximal increment that level of resource utilization increases to predetermined resource.
9, resource allocation system as claimed in claim 7, wherein to utilize level to distribute the increment limit be the maximal increment that level of resource utilization reduces to predetermined resource.
10, resource allocation system as claimed in claim 1, wherein:
Described resource allocator (30) produces corresponding distributing signal, so that compare with the user with relatively low demand (5), makes the user (5) with relative high requirements will receive higher relatively distribution;
For specifying a corresponding predetermined resource utilization, each user (5) distributes the limit; And
After producing respective resources application distributing signal, resource allocator (30) utilizes level distribution and corresponding predetermined resource to utilize level to distribute the limit to compare respective resources, if and level of resource utilization distributes the predetermined resource that surpasses appointment to utilize level to distribute the limit, then produce one and represent predetermined resource to utilize level to distribute the distributing signal of the limit, replace the level of resource utilization of previous this relative users that produces to distribute.
11, resource allocation system as claimed in claim 10, wherein to utilize level to distribute the limit be that a kind of maximum resource utilizes level to distribute to predetermined resource.
12, resource allocation system as claimed in claim 10, wherein to utilize level to distribute the limit be that a kind of least resource utilizes level to distribute to predetermined resource.
13, resource allocation system as claimed in claim 1, wherein:
Each picture signal is represented a picture frame in the image sets of Motion Picture Experts Group.
CN94195116A 1994-04-22 1994-04-22 System for dynamically allocating a scarce resource Expired - Lifetime CN1072415C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN94195116A CN1072415C (en) 1994-04-22 1994-04-22 System for dynamically allocating a scarce resource

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN94195116A CN1072415C (en) 1994-04-22 1994-04-22 System for dynamically allocating a scarce resource

Publications (2)

Publication Number Publication Date
CN1149367A CN1149367A (en) 1997-05-07
CN1072415C true CN1072415C (en) 2001-10-03

Family

ID=5039631

Family Applications (1)

Application Number Title Priority Date Filing Date
CN94195116A Expired - Lifetime CN1072415C (en) 1994-04-22 1994-04-22 System for dynamically allocating a scarce resource

Country Status (1)

Country Link
CN (1) CN1072415C (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100422940C (en) * 2005-10-27 2008-10-01 国际商业机器公司 System and method of arbitrating access of threads to shared resources within a data processing system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5115309A (en) * 1990-09-10 1992-05-19 At&T Bell Laboratories Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders
US5134476A (en) * 1990-03-30 1992-07-28 At&T Bell Laboratories Video signal encoding with bit rate control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5134476A (en) * 1990-03-30 1992-07-28 At&T Bell Laboratories Video signal encoding with bit rate control
US5115309A (en) * 1990-09-10 1992-05-19 At&T Bell Laboratories Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100422940C (en) * 2005-10-27 2008-10-01 国际商业机器公司 System and method of arbitrating access of threads to shared resources within a data processing system

Also Published As

Publication number Publication date
CN1149367A (en) 1997-05-07

Similar Documents

Publication Publication Date Title
US5838686A (en) System for dynamically allocating a scarce resource
US6055270A (en) Multiplexer system using constant bit rate encoders
CN1132430C (en) Multi-coding apparatus
JP4388598B2 (en) A system for transmitting multiple video programs simultaneously via a transmission channel
KR100314329B1 (en) Multiplexer Using Constant Bit Rate Encoder
CN1072415C (en) System for dynamically allocating a scarce resource
JP3583432B2 (en) A system for dynamically allocating scarce resources
CN1067203C (en) Multiplexer system using constant bit rate encoders
CN1080960C (en) Parameter sampling apparatus
US5933450A (en) Complexity determining apparatus
KR100340827B1 (en) Complexity determining apparatus
CN1078782C (en) Asynchronous control signal generating apparatus
JP3703488B2 (en) Asynchronous control signal generator
CN1080490C (en) Complexity determining apparatus
KR100337103B1 (en) Complexity Determination Device of Data Signal
EP0756788B1 (en) Parameter sampling apparatus
CN1090858C (en) Complexity determining apparatus

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
CX01 Expiry of patent term

Expiration termination date: 20140422

Granted publication date: 20011003