CA2049692C - Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders - Google Patents
Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video codersInfo
- Publication number
- CA2049692C CA2049692C CA002049692A CA2049692A CA2049692C CA 2049692 C CA2049692 C CA 2049692C CA 002049692 A CA002049692 A CA 002049692A CA 2049692 A CA2049692 A CA 2049692A CA 2049692 C CA2049692 C CA 2049692C
- Authority
- CA
- Canada
- Prior art keywords
- channel sharing
- estimated channel
- frame
- video
- factors
- 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 - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/12—Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
Abstract
A dynamic channel allocation unit for specifying a bit rate for each video coder in a set of parallel video coders comprising an overall video coder is disclosed. The dynamic channel allocation unit is supplied from each individualvideo coder with an average frame quantization step size for the previous frame and the average number of bits produced per pel. For the current image frame the dynamic channel allocation unit computes a set of channel sharing factors, i.e., the percentage of the total channel bandwidth to be allocated to a particular video coder.
One channel sharing factor is computed for each individual video coder. Individual members of the set of channel sharing factors may be further refined to reflect the prior history of the channel sharing factor for their corresponding coder.
Additionally, the set of estimates may be normalized to reflect the actual number of bits that can actually be produced by each individual video coder.
One channel sharing factor is computed for each individual video coder. Individual members of the set of channel sharing factors may be further refined to reflect the prior history of the channel sharing factor for their corresponding coder.
Additionally, the set of estimates may be normalized to reflect the actual number of bits that can actually be produced by each individual video coder.
Description
20~9~2 Method and Apparatu~ for Dynamic Channel Bandwidth Allocation Among Multiple Parallel Video Coder~
Technical Field This invention relates to video image ploc~ssing and, more particularly, 5 to all5~ ng chsnnP,l bandwidth among m~ rle video coders that are ~)-ocessing in parallel various areas of a single image.
Back~round of the Invention High definition television (HDTV) promises to offer a wider viewing area and improved image quality when co~ ,d with today's television. However, 10 an uncol~p~ssed digital HDTV channel may require transmi~sion bandwidth up toone gigabit per second. It is therefore desirable to COI~ SS the ~TV signal in amanner such that image quality is not ~ ifica~ltly reduced and yet the HDTV signal can be tr~nsn~ittP~ at lower speeds. One of the main ~iffi~ ties in co~.essing HDTV signals is the relatively high co...pul-Al;~n speeds required of the digital 15 c,lc~ pe.r~l lfing the enrQ11ing plvcesses that, ~;e ve the coml.,.,ssion. This dif_culty is exacerbated when state-of^the-art colll~,iession alg~iLhllls are employed since these al~ ~s obtain il~c~ased CGu~ .,ssion only through in.,reased conlpl~Yity of calculation. Thc ir,c,ea~ c~.~ y of c~AIrlllA~n ,c~lui~s that morc coulpu~ion be ~Irc,l~d in the available timc thereby l~uilillg each 20 ~n~cc ~:r e unit to operat~ fa~stcr. The ~ ~nt of pc.ru, l ing complex co.n~ AI;rnc at high specds can si~ifir3ntly in~,leasc the cost of an HDTV coder.
The division of thc overall co..~ ;t n problem intD smaller t~sks is pl~ Qs~d to solve this problem of rcquiring cost~ c~iuill~ for achieving highly c~y~ss~d HDTV signals.
O~e po~ible solution is to dividc the H~TV image intD sub-images and to p~ce~ all the sub-images in parallel. Such a s~ ltion seelcs tD utilize slower and tW~e ch~ pro~scing circuits to ~ nlplicl the dcsired co.llp~ssion. A
single ~ndf r pe.r~n~B the entire colllpl~is~ion algcli~h~ for an individual sub-image. Only input of that portion of the ~iginq1 HDl~ signal ,~lese-~l;ng the su~
30 image and output of the e~ signals l~cs~ g the su~image after co~ss;on nced be ~.Çul~d at a high speed. This input and output activity is bursty in nature since it oecurs only for a short period of time relative to thetransmission time of the entire ~nrn--~ ,ss~ image. Actual ~ s~:ng of the pels C4~1Ai~ within each su~image by an cn~ can t_lce pl_ce at a much slower rate 35 ~l.. ~n the bursts of image signal input and output.
,~
2Q qg6~
The compl~xity of each sub-image may vary conci~erably. It is ~ksir~qb!e to Alloc~q~te more bandwidth to those sub-images that are more complex since the effectiveness of co.ll~r~,~sion qlgr~ ,..,c decreases as image complexity incrcases. Thus, a ~ m with an arr-qngemrnt as described above is how to S specify a bit rate for each enro~le~ so as to allocate the available band vidth most effiriently. Pred~.lllined bit rate ~si~n~nt is in~ffirient be~ ~ it is unable to adjust for diff. .~nces in image complexity and may thereby result in variations in the quality of dirl~ t areas of the image that is reconstructed from the co~l~ssed signal. Viewers ' ~~ lions of such variations in the quality of the reconstructed 10 image are negative. Prior a~ s to dynqmic~lly qlloc~t~ the available bandwidth among the various video coders required knowledge by an qllocqtion unit of the variance of each individual sub-image. Extensive c~.~ ing capacity at high speeds is l~uil~,d to co~llp.~le the variance of a sub-image in the limited time available bec~l~, the variance is a comrl~ cqlrul~tir,n This re4uil~ll~nt of high speed 15 cqlrlll tion~ causes dynamic qllocqtiQn units that coul~ c variances to be expensive.
Su-....~r, of the Invention The lifflculties with pri~r dynamic qllocatinn arnqngement~ are ov~ ;u~, in accordance with an aspect of the invention, by d~ .lifally ::~llr~:lting the available bandwidth based on an in~lirqtion of sub-irnage complexity as 20 ~t~n~ d from the average q~lqnti7~til)n step size and the average nulll~r of bits plu-luccd per pel employed by each video codcr for the image contq-in~d in the previous frame. In a p.~fel~d e~ a ~l&lUC chqnnPl ~llQc~q~tion unit is snppl~ with an average qusnti7~qtiQn step size and an a~ ge n~r of bits p.~iuced per pel employcd by each video codcr for the imagc cc.-.lqin~l in the 25 previous fn~. Il~r, an initial sct of c;.r~ s of the chqnnel sharing f. ctors, i.e., ~a i~ of th~ pe.~.llage of thc total chqnncl band vidth that is to be ~d to a par~cular vidco coder, is dcrived. One channcl shanng factor is ~uted f each individual vidco codcr. Individual n~m~ of the sct of estimq~S may ~eal`~r bc further refined to reflcct the prior history of the channel 30 shanng facta~s. ~lAiti~nqlly, the sct of eJ~h~t~ s may bc no~rnsli~çd to reflect the actual nu~llbt~. of bits that can actually bc produced by each individual video coder.
The dynamic chsnnel ~ tion unit supplies as an output to each individual video codcr a ch^nnel qllncqtj~ n factor which is the final eal;...~t,~ .,~1 ...he. of the e~ t, A chqnnel sharing factor sct c~ i.pohding to that vidco coder. Also, control 35 infa~madon indir~ting th~ ch~qnnel shanng factors supplied to each video coder is supplied to a muldpkxer that co..lbines thc reslllting data streams from each 2~4~
.
Technical Field This invention relates to video image ploc~ssing and, more particularly, 5 to all5~ ng chsnnP,l bandwidth among m~ rle video coders that are ~)-ocessing in parallel various areas of a single image.
Back~round of the Invention High definition television (HDTV) promises to offer a wider viewing area and improved image quality when co~ ,d with today's television. However, 10 an uncol~p~ssed digital HDTV channel may require transmi~sion bandwidth up toone gigabit per second. It is therefore desirable to COI~ SS the ~TV signal in amanner such that image quality is not ~ ifica~ltly reduced and yet the HDTV signal can be tr~nsn~ittP~ at lower speeds. One of the main ~iffi~ ties in co~.essing HDTV signals is the relatively high co...pul-Al;~n speeds required of the digital 15 c,lc~ pe.r~l lfing the enrQ11ing plvcesses that, ~;e ve the coml.,.,ssion. This dif_culty is exacerbated when state-of^the-art colll~,iession alg~iLhllls are employed since these al~ ~s obtain il~c~ased CGu~ .,ssion only through in.,reased conlpl~Yity of calculation. Thc ir,c,ea~ c~.~ y of c~AIrlllA~n ,c~lui~s that morc coulpu~ion be ~Irc,l~d in the available timc thereby l~uilillg each 20 ~n~cc ~:r e unit to operat~ fa~stcr. The ~ ~nt of pc.ru, l ing complex co.n~ AI;rnc at high specds can si~ifir3ntly in~,leasc the cost of an HDTV coder.
The division of thc overall co..~ ;t n problem intD smaller t~sks is pl~ Qs~d to solve this problem of rcquiring cost~ c~iuill~ for achieving highly c~y~ss~d HDTV signals.
O~e po~ible solution is to dividc the H~TV image intD sub-images and to p~ce~ all the sub-images in parallel. Such a s~ ltion seelcs tD utilize slower and tW~e ch~ pro~scing circuits to ~ nlplicl the dcsired co.llp~ssion. A
single ~ndf r pe.r~n~B the entire colllpl~is~ion algcli~h~ for an individual sub-image. Only input of that portion of the ~iginq1 HDl~ signal ,~lese-~l;ng the su~
30 image and output of the e~ signals l~cs~ g the su~image after co~ss;on nced be ~.Çul~d at a high speed. This input and output activity is bursty in nature since it oecurs only for a short period of time relative to thetransmission time of the entire ~nrn--~ ,ss~ image. Actual ~ s~:ng of the pels C4~1Ai~ within each su~image by an cn~ can t_lce pl_ce at a much slower rate 35 ~l.. ~n the bursts of image signal input and output.
,~
2Q qg6~
The compl~xity of each sub-image may vary conci~erably. It is ~ksir~qb!e to Alloc~q~te more bandwidth to those sub-images that are more complex since the effectiveness of co.ll~r~,~sion qlgr~ ,..,c decreases as image complexity incrcases. Thus, a ~ m with an arr-qngemrnt as described above is how to S specify a bit rate for each enro~le~ so as to allocate the available band vidth most effiriently. Pred~.lllined bit rate ~si~n~nt is in~ffirient be~ ~ it is unable to adjust for diff. .~nces in image complexity and may thereby result in variations in the quality of dirl~ t areas of the image that is reconstructed from the co~l~ssed signal. Viewers ' ~~ lions of such variations in the quality of the reconstructed 10 image are negative. Prior a~ s to dynqmic~lly qlloc~t~ the available bandwidth among the various video coders required knowledge by an qllocqtion unit of the variance of each individual sub-image. Extensive c~.~ ing capacity at high speeds is l~uil~,d to co~llp.~le the variance of a sub-image in the limited time available bec~l~, the variance is a comrl~ cqlrul~tir,n This re4uil~ll~nt of high speed 15 cqlrlll tion~ causes dynamic qllocqtiQn units that coul~ c variances to be expensive.
Su-....~r, of the Invention The lifflculties with pri~r dynamic qllocatinn arnqngement~ are ov~ ;u~, in accordance with an aspect of the invention, by d~ .lifally ::~llr~:lting the available bandwidth based on an in~lirqtion of sub-irnage complexity as 20 ~t~n~ d from the average q~lqnti7~til)n step size and the average nulll~r of bits plu-luccd per pel employed by each video codcr for the image contq-in~d in the previous frame. In a p.~fel~d e~ a ~l&lUC chqnnPl ~llQc~q~tion unit is snppl~ with an average qusnti7~qtiQn step size and an a~ ge n~r of bits p.~iuced per pel employcd by each video codcr for the imagc cc.-.lqin~l in the 25 previous fn~. Il~r, an initial sct of c;.r~ s of the chqnnel sharing f. ctors, i.e., ~a i~ of th~ pe.~.llage of thc total chqnncl band vidth that is to be ~d to a par~cular vidco coder, is dcrived. One channcl shanng factor is ~uted f each individual vidco codcr. Individual n~m~ of the sct of estimq~S may ~eal`~r bc further refined to reflcct the prior history of the channel 30 shanng facta~s. ~lAiti~nqlly, the sct of eJ~h~t~ s may bc no~rnsli~çd to reflect the actual nu~llbt~. of bits that can actually bc produced by each individual video coder.
The dynamic chsnnel ~ tion unit supplies as an output to each individual video codcr a ch^nnel qllncqtj~ n factor which is the final eal;...~t,~ .,~1 ...he. of the e~ t, A chqnnel sharing factor sct c~ i.pohding to that vidco coder. Also, control 35 infa~madon indir~ting th~ ch~qnnel shanng factors supplied to each video coder is supplied to a muldpkxer that co..lbines thc reslllting data streams from each 2~4~
.
individual video coder into a single comhin~pd output data stream.
Brief Description of the D. ~ L
In the Drawing:
Shown in ~;IG. 1 is an eYemrl-a-ry system overview, in simplified block S diagram format, of a video enro~iPr employing aSpectc of the invention;
An exçmrla-ry spacial de~o~n~oc;l;on of an image is shown in FIG. 2;
FIG. 3 depictc an exemrla-~y L~uency de~on-l osilion of an image contain~ within an HDTV frame;
Shown in FIG. 4 is an expan~e~ view of an exemp!ary impleme~t~tion 10 of a dynamic chqnne~ ocahon unit;
Depj^te~ in FIG. 5, in cimplifi~Pd block diagram format, is an exemplary imple..~.nl~l;on of an initial sharing factor e~
FIGS. 6 and 7, when cnnl)r~t~!d as shown in FIG. 8, illustrate, in flow chart form, an expmplary method for deriving the initial set of e,l;~ .t~3 chann15 sharing factors by an initial sharing factor c~;..-a~, FIGS. 9 and 10, when connPcted as shown in FIG. 11 folm a flow chart diagram of an exemplary method of ~rul ng the norrnPli7-stion of a set of channel sharing facto~s; and Shown in FIG. 12, in a high level block ~lia~m folmat, is a video 20 ~c~.
Detuiled Dcscription Shown in FIG. 1 is an exempls~y system overview, in ~imrlified block diagram fo~mat, of a video enrod~ employing aspects of the invention. The systemis comprised of video splitter 101, m..lhill'e parallel video coders 102-1 through 25 102-N, dyn~c chMnel ~ c~hon unit 103 and multiplexer 104. Video splitter 101 is ~ 1:~ with ori~inol vidleo signal VIDEO IN 105. Signal VIDEO IN 105 is a bit st~m th~t c~ s a series of frames cach COn~9;~ing an imagc. Typically signal VIDEO IN lOS would bc suppli~ by a well Icnown and co~ ,. eially availablc video signal sourcc in~luding~ without l;-,.;l~;on a video cPmt!~ a vid~ocac~ettP
30 .,c~r, or a vidr~i~ playa unit. The bandwidlth of signal VIDEO IN 105 is wide. For example, thc bandwidth of a video signal ~ ,ppli~ by a vidco camera en~ g images in th~ Zenith proposed HDTV format is applo ;~tely 37 Mhz.
Video splittcr 101 split each ~''Cc4s~ imagc of signal VIDEO IN 105 into N sub-imag~s. each sub-image comprised of one of signals SUB-VIDEO 10~1 35 through SUB-VIDEO lO~N. The splitting can bc achieved by employing a spatial ~ccunpoc~ on or, alte~tively~ by employing a sub-band frequency dec~...positiQn 2Q4~
For c~campk, each image in the Zenith HDTV format is c~mpn~A. of 720 lines of 1280 pixcls (pels) per line which can be spatially (~co~q~seA into an array of 12 sub-images. The.cf~, N=12 and each of signals SUB-VIDEO 106 co~c~n~ls to a video signal comprising one of thc 12 sub-images. An exemplary spacial 5 d~co..-l)c.sition of an image is shown in FIG. 2. Each res~llting sub-image comprises 240 lines. Sub-images 201-1 through 201-9 have 352 pels per line and sub-images 202-10 through 202-12 have 224 pels per line. The spacial deco~ sition shown was selected for inlr4.~n~tion con~eme.lce so that thc rrs~llting sub-images would be c~ pa~ible in size with the C'ommon Inte...~A~ Folmat (CIF) defined in the 10 CClIT l~co~ n~tiQn H.261 (Px64kbps standard). This sclection should not be construcd as placing any limit~tion on the invention.
FIG. 3 shows ey~mpl~ry appal~lus conl~in~d in video splitter 105 (FlG.
1) fo~ ~. r~."ling an exemrl~ry frequency dc~ pos;~ n of an image cQnt~ined within an HDTV framc supplied from signal VIDEO IN 105. Each image is 15 ~"~l ose~:l into 16 f~quency bands and"l.~,. f~l~, N=16. Thc ~co~-.posi~ion is ~cco..~ ~ in an eYenlp!~ry m~nner by employing a ,~ccess;~_ series of alt~ ing two stage filter ban~s, horizontal filter banks 301-1 through 301-5 and vertical filter bar~s 302- 1 thn)ugh 302- 10, and sub-samplers 303- 1 through 303-30 to p~ s~ ,ly d~c~.~pcse each res-)lting filtered and sub-s~mpled video signal 20 until a desired sub-image size and f.~ucnc~ distribution is obtnh-r~d Each horizontal filter banlc 301 effects a separation in the h~- ;70~tS~l dil~;liOn of the high and low Li~uelh~y cQ...~ u,nl~ of the image c~ within the video signal with which it is snpplit~ Similarly, each vertical filtcr banlc 302 effects a separation in the vcr~cal dircc~on of the high and low rl~-~ C~ )Onf ~S of the image 25 c~i~d within the video signal with which it is supplie~ For clarity puIposes some of h~ -l"l filter ban~s 301, vertical filter banl~s 302 and sub-s~rnr!ers 303 are ra *~own. IIo. c:~er, the various int~ n~ n~ .~uired will be clear to one sldlbd in the ~ Es~ch of horizontal filter banlcs 301 is c~rnrrieecl of hnri7~nt~1 low pass filter (Hlp) 304 and hori_ontal high pass filter (Hhp) 305. Each of vertical filter 30 ban~ 302 is C~liS~Xl of vertical low pass filter (Vlp) 306 and vcrtical high pass filter (Vhp) 307. Aftcr each filtering stage, the res~ltin~ video signals are sub-sampbd by 2. The sub-ssmplin~ is p~.rcl~cd by sub-samplcrs 303. Upon c~h~ n of th~ r.~..cy band ~l<~o..~l~osition, each res~l1ting 1/16th size sub-image (180 lincs by 320 pels) is s~ e to be pi~<5s~ by a video coder 35 co~T~nAine to the P~c64kbps standard. Thus, each of signals SUB-VIDEO 106 supplied a s output cam~s~onflc to a video signal c~l;sing one of the 16 sub-imagcs. It is noted that the instant invention can be applied to any video image andno limit~ ir~n should be construed by the use of HDTV as an exemrlsry system in which to practice the invention.
Each of signals SUB-VIDEO 106-1 (EIG. 1) through 106 N is supplied S to a c~l~sp~nAing one of video coders 102-1 through 102-N. Video coders 102 encode their l~,s~;li~e ones of signals SUB-VIDEO 106 and supply as an output one of DATA STREAMS 11~1 through 110-N. Each of DATA STREAMS 1 10 ~eplc3ellt~ the sub-image con~s-in~ in the c~..cspon-ling one of SUB-VIDEO 106 in an encQ~ format. Methods of pe.rolll~ing such e ~cQling~ e.g., con-liti-?ngl 10 rep!eni~hmrnt, motion CO~ teli predictive coding and the Px64kbps standard, are well know. Also enrQ-1ed into DATA STREAMS 110 is any s~l~itionsl control inforrnstiQn required to reconstruct, to the ac~u.~ inherent in the coding teel nifllle employed, each of signals SUB-VIDEO 106. The nu nbe. of bits desired to be supplied as an output by each of video coders 102 can be q~ecifi~d by control signals 15 supplied to video coders 102. The qllsnti7s~ion step size employed by the coder is then ~t~.mined based on the number of bits desired and the c~.ple~ily of the sub-image being enrQ~e~
The set comrri~ of the average number of bits per pel produced by each of video coders 102 in frame n- 1, where n is a variable inclirsting the current 20 frame, is b(i,n-l) for i=l,...N,. One n~m~ of this set is supplied to dynamicCh ~ ~n~l q-llocqtir~n unit 103 from each of video coders 102 over signal kads 107-1 through 107-N. Similarly, the set of average quar ~i7q~~n step size used by video coder 102-i in frame n- 1, q(i,n-1) for i= l ,...N, is also ~,~ppl i~ to dyn. mic chqnnel sllocsti~!n unit 103 by video coders 102 over signal leads 108-1 t}uough 108-N. In 25 accodu~e with an aspect of the invention, d~ c chqnn~l q~ xq~irA~ unit 103 utiliær tl* set~ of b(i,n-1) and q(i,n-1) to derive a set of chs~nCl sharing factors, f(i,n) f~ isl~...N~ f the current frame, n, being p..cess d by each of video coders 102. Eflch imlividual chsnn~l shanng f, ctor, f(i,n), is a n inAicvqti~n of the fr, ction of the overall chqnn~,l bandwidth, C, qllocqbsd GO video coder 102-i for supplying to the 30 chsr nel the contenU of iU sub-image for frame n. ~hqnnel qlloc~ on unit 103 sl~rFli~s the chqnl el sh~ing factors f(i,n) to each of video coders 102 over signal lead~ 109-1 through 109-N. The chqnnel sharing factors may be in . ny of severalfo~mau inchu~ g but not limited to: a s~c;l~rAt;on of the exact numb~. of bits each video codcr 102 is to produce for the current frame; a fractional number inrlir~ting 35 the p~l.~age of time a~ cat~ to each coder for trar~ ;on ~f the bits it produces fo~ tl~ cwrent ~ame; or a qusnti7cr step size, either average or fi~ced, to be 20~9~
employed.
DATA STREAMS 110 are supplied to mul~ er 104. Also, the info~ ;on contqine~ in the chqnnel sharing factors are supplied to mlll iple~er 104 over signal CONTROL 111. Mllltirlexer 104 combincs each of DATA STREAMS
5 110 into a single signal, COMPRESSED DATA OUT 112 that is supplied qs output.
Also incorporated into signal COMPRESSED DATA OUT 112 is fol"l&uing ~ç~",.~t;gn in-1icq-ting how to recover each of DATA STREAMS 110. Methods of multiplexing multiple data streams are well known.
Shown in FIG. 4 is an expqn(led view of an exemplary implem~ntqtion 10 of dynamic ch~nn~l AllocAtiQn unit 103. For yul~oses of this example, dynamicchqnnel al~Atign unit 103 comrrises initial sharing factor c~l;."At~r 401, optionAl estin~qte n~lifin~q~tion unit 402 and optional sharing factor no~rnqli7Ati~n unit 403.
In acc~lance with an aspect of the invention, for each current fr. me n, the average number of bits per pel b(i,n- 1) in the prior frame n- 1 and the average quqnti7~qtion 15 step size q(i,n-1) for every video coder 102 is supplied to initial sharing factor esfimqtnr 401. Initial sharing factor e;~ a~ 401 supplies as output an initial set of estimqt~ chqnnel sharing f. ctolY, f(i,n), i=l...N.
Shown in FIG. S, in simrlifi~l block diagram format, is exemplq-ry i."ple-~f nl~ n of initial sharing factor estimqtr~r 401 (E~IG. 4). q(i,n-l) is supplied 20 from cach of video coders 102 (FIG. 1) as input to image characteristic pa~ ~te~
c~. {?u~ unit 501 and quAnti7q-tinn step size e~ n~ unit 502 while b(i,n) is also supplied as input to image ch~D~.istic p~ cQ~.~p~ ;on unit 501.
Image characteristic parameter co~pu~;~ unit 501 co~np s for each su~image ~ ss e d by cach of ~ridco coders 102 (FIG. 1) for each current frame n, an image 25 char~ristic parameter F(i,n-l), for i=l..N, indicative of the cc~rnplexity of the cone~ g su~imagc. F(i,n- 1) is su~,pli~l to nu~l~b~ of bits for each coder es~m~or S03. Qusntization step size es~ rctor 502 sUpplies a set of initial ea~ s of the desi~d ~ ;on step size to be uscd for all video coders 102 for f a~ current frame n, q (n). Sharing facto~ cc~ ul~;Qn unit 504 receives as 30 input the set of initial estimqtes of the desired average bits per pcl b(i,n), and suppl~s as an output a alet of an initial set of estimated chsnnel sharing factors, f(i,n), on~ for each of the N ~ridco coders 102.
FIGS. 6 and 7, when conn~ as shown in FIG. 8, illustrate, in flow chart fonn, an e~enlplq~y method for deriving thc initial set of estimqte~ c~lqnnel 35 sharing factors, f(i,n), i=l...N, by initial sharing factor es inuq-tor 401 (FIG. 4). The rwtinc is cntc~d via step 801 after the pl~lces~ g of the previous frame by each of 2~96~
vidco coders 102 (FIG. 1) and their supplying of b(i,n-1) and q(i,n-l) to dynamic chqnn~,l Lqllocqtion unit 103 but prior their to proc~ssing of the current frame. When the fi~t fr me is ~ cessc~l the routine is not entered This is becvls~ there was no previous frame and lLc.~,rolc no values are available for b(i,n-1) and q(i,n-1).S Instead each chqnnel is initially a~igned an equal portion of the available bandwidth so that for n=1 f(i,n)= N The value of index i is initiqli7P~ to 1 in step 802.
I~.~allcr, in step 803, a value for F(i,n-1) is co...put~1 and stoq~ed according to F(i,n- 1) =q2 (i,n- 1) eab(i'n~ l). F(i,n-1) is an image characteristic pa~ eter for video coder 102-i that is ~1~ tc~ ed in frame n-1 and a is a coder depen(3ent 10 ~ar~ter that is often a con~tqnt number, e.g. 1.39. Next, con~litif~nql branch point 804 tests if i is equal to N, i.e., has a value been co...put~ for each video coder. If the test result in step 804 is NO, control is passed to step 805 which inc.~:mell~ the valuc of i. Control is then passed baclc to step 803. Typically, steps 802 through 805 would be pe1ru~d by image cha~ te.-stic pq~n~t~ co~- ~iOI unit 501 (FIG.
15 5).
If the test result in step 804 is YES, control is passed to step 806 which resets the value of i to 1 and sets q (n)=0. q (n) ~ ,wn~s the average of the squa~s ~f the average qll~nti7~r values suppli~ from each of video coders 102. It is uscd as an estimate of the qll~nti7~tion step si_e to be used by all video coders 102 20 (FIG. l)forf~amen. Step807~ aft~rco..~,t~sq (n)=q (n)+ Nq2(i,n-l).
Ne~ct, conAiti~nsl branch point 808 tests if i is equal to N. If the test result in step 808 is NO, control is passed to step 809 which incl~,..L. Ig the value of i. Control is then passed bacl~ to step 807. It is noted that there in no de~ ~ n~ q-~nchips in the loop f~-~ ;~ g steps 802 through 805 . nd the loop con~rnc;ng steps 806 25 th~ough 8a9. lhese loops may tl~,~fo~ be pe.r~l~d in any ordcr or in pqr.qllf~l at the fliscretion of the im~ ntor. Typically steps 806 through 809 are pe~ff~,ll,ed by q~atiza~on step size e~ 502 (FIG. S) If thc test result in step 808 is YES, control is passed to step 810 which resets the v~ue of i to 1. The.~af~r, in step 811, an c~ L of thc average nulll~r 30 of bits per pi~cel for each coder to be employed for current frame n h which q ( n ) is used as the qrq~ ti7atin ~ step si_e, is co~p~ft~l accf~ling to b(i,n)=--ln (i2 1) . Next, conAitionsl branch point 812 tests if i is equal to N. If the test result in stcp 812 is NO, control is passcd to step 813 which inw~nts ~049~
.
the value of i. Control is then passed back to step 811. Steps 810 through 813 would typically be e~ut~ by ml.,.~r of bits for each coder estimqtor 503 (FIG. 5).
If the test result in step 812 is YES, control is passed to a loop comprising steps 814 through 817 which cq-lrul~tçs and stores in a ~.u~laly S ~ ing variable bh~ (n) a total of the estimqt~ number of bits in frarne n. Thenu~r of bits e;.~illlat~d to be used for each sub-image is derived by obtaining the product of the average numb~,r of bits per pel es~ t~ for video coder 102-i, b(i,n), and the nulllbcr of pels in each sub-image num_pels(i). Step 814 resets the value of i to 1 and sets the value of bhq~t~um(n) to zero (0). Next, in step 815 the 10 value of current value of b(i,n) is multiplied by the nuu~r of pels in signal SUB-VIDEO 106-i, num pels(i), and added to the current value of bh~tsum(n) to produce an new value of bh~t~ ..(n). The,~iar~., con~litir~n~ql branch point 816 tests if i is equal to N. If the test result in step 816 is NO, control is passed to step 817 which in~.c.~h~ the value of i. Control is then passed baclc to step 815.
If the test result in step 816 is YES, control is passed to step 818 which resets the value of i to 1. Next step 819 comput~s an initial e~ te of the ~hqnne sharing factar f~r each coder i for frame n, f(i,n), according to f(i, n ) = b( ' b) ( pe) s (i ) . C~nditionql branch point 820 then tests if i is equal to N. If the test result in step 820 is NO, control is passed to step 821 which 20 in~e~nls the value of i. Control is then passed back to step 819. If the test result in step 820 is YES, the routine is exited via step 822. The csl ;~ chqr~nel sharing factors are available to be snrpli~d as output f(i,n) from initial sharing factor estimqh~ 401. Steps 814 through 822 would typically be ~lÇol..led by sharing fact~ computation unit S04 (FIG. S) Opdonal c~ fiçqtion unit 402 (F~G. 4) .~ .cs as input the e~Li.,.~ed ~ 1 sharing factors from initial sharing c~ sor 401. Opdonal cY~ ; ,.~J;fi~ufi~ unit 402 mnriifies the estimated e,~--nel sharing facton to reflect the pn~ history of the compleYi~y of each sub-image, in accordance with an aspect of the invendon. An exemplary way to u1c~,l~lat~, the pnor history of each 30 sub-image is to use a weighted average of the actually employed çhsnn~l sharing factors for the pnor k fnunes and the C~ chumel sharing factor for the cu~rent frame. One such c-..hodi~ n~ employs a set of weighting factors c~(lc) . nd c~.~put,~ s for each video coder 102 (FIG. 1) f(i,n)=~(o)f(i,n)+c~(1)f(i,n- 1)+ +c~(lc)f(i,n-~). The num~. of 35 &ames,1~, and thc values of each of the c~(lc) is ~-.~.;n~i by the imph,..~n~or. Fo~
2049~2 example, Ic=l and ~(0) = 0. 7 and co( 1 ) = 0.3. The m~ifi~ es~ 1 chsnnel shanng factors f(i,n) are supplied as output f(i,n) by ea~;n~ale m~1ific-sltion unit 402.
An a dvantage of employing optional ea~ Pte mo~lifin~s~tiQn unit 402 is that a ~..~1~ change of the chqnnel sharing factors c. n be achieved as co~,d..,d to S when initial sharing e~ o~ 401 is employed alone.
~ Ithough the chsnnP~l sharing factors f(i,n) supplied by initial sharing esflmqtn 401 or optional es~ te mc~ifirstirn unit 402 may be employed directly, it may be desirable to no~msli7e the chsnnPI sharing factors by employing optional sharing factor n- rmqli7qflon unit 403. This is desirable beca~Jse video coders 102 10 (~G. 1) may not work at rates higher than a certain limit. The.~fol~" an upper limit on each chqnnel sharing factor, f MAX is employed. Further, image ~epP. n~l~nt pdl~t~,. F(i,n-l) may have a sudden change during a scene chqngP To insure the provision of a ...;n;...---.. chqnnel bandwidth for each of video coders 102, a lower limit on each chqnnP,l sharing factor, f_MIN is employed to help reduce buffer 15 o.e.~ during scene change con~litions~ Reserving a .nini.. chqnnp~l bandwidthfor each of video codcrs 102 can also reduce disto~on effects that can arise forcoders o~.~ at very low bit rates. In accordance with an aspect of the invention, the ..~l;r~l set of chqnncl sharing factors is suppli~ as input to sharing factor norrnqli7-s-tion unit 403 which normali_es the set such that no individual channel 20 sharing factor eYc~ f_MAX nor are any individual chqnnel shanng factors less than f_MlN. This wrrrLqli7qtion is perfomled while ~ ;n~ining the spirit of the original bandwidth slloc~s~ti~n rrflected in the supplied set of chsnnel sharing f. ctors.
FIGS. 9 and 10, when con t~ as shown in FIG. 11 foIm a flow chart diagram o,f . n e~emplsry method of p,- r.~ g such a n~li7ation. For pulposes 25 of thi~ metbod. ea~h ~ ch9~nel sharing factor, f(i,n) is a fractional nu~er indica~ng ~e ~on of the total available ba~ h C that has been Lqllocqt~ to video c~der 102-i. Accordingly, the routine is entered ~ia step 1101 upon the ~cep~i~n of a ~et of ~ ' sharing factors to be na¢n~qli7ed ~ step 1102 each value of a ~ A ~ ~Tay, DONE(N) is initiqli7~1 to FALSE. Thc.~,~., in step 30 1 103 ~ vq-is~ks f_DONE and f_LEFT are set to 0.0 while ALL_DONE is set to TRUE. f_DONE Ic~.~senls that portion of the tot,l bar..l~ h for which thech^-~,l sha~ing factor has previously been p~mqnently ~ by the n~mali_ation routine. Such sharing f~ctors have their Cull~ Aing DONE(i) value set equal to TRUE. Conversely, f LEFT indicates the p~ion of the total bandwidth35 for which the chs~lnPI sharing factor has not previously been p"..~nPn~ly modified by the n~rns~li7~ation routine and for which DONE(i) is FALSE. A loop for indiex i ~ O ~ 9 ~ ~ ~
is bcgun in stcp 1104 in which i is ini~iqli7ed to one. Con~litionsl branch point 1105 tests if DONE(i) is equal to TRUE. If the test result in step 1105 is NO, as it is for each value of i for the first iteration through this loop, control is passed to step 1106 which adds the chsnn~l sharing factor, f(i,n) to a running total of f LEI;T. Control is S then passed to conditiQnql br. nch point 1107. If thc test result in step 1105 is YES, control is passed to step 1108 which adds the chqnnel shanng factor, f(i,n) to arunning total of f_DONE. Control is then passed to conditiQnql branch point 1107.
Con~ ior~ql branch point 1107 tests if i is equal to N, i.e., have all channel sharing factors been process~ through the loop. If the test result in step 10 1107 is NO control is passed to step 1109 which inc~.l~nts i. Control is then passed baclc to conditiQnql branch point 1105 and the loop is repeated If the test results in step 1107 is YES, control is passed to step 1110 which resets i for use in another loop. The.~df~, con~litiQnql branch point 1111tests if DONE(i) is equal to TRUE. If the test result in step 1111 is YES, control is 15 passed to con~ iQn~l branch point 1112 which tests if i is equal to N, i.e., has each ch~nnt l sharing factor been plvcesscd within this loop. If the test result in step 1112 is NO, control is passed to step 1113 which h~ ,~nls i and control is passed back to c~itionql branch point 1111.
If the test result in step 1111 is NO, control is passed to step 1114 which 20 scales f(in) according to the ratio of ( l-f_DONE) to f LEFT. llle first time through this loop initj~t~:l by step 1110, f_DONE is zero (0) and f_LEFT is unity so that f(i,n) lC~S unchanged. If, however, thcrc arc ~lb3~ passes through this loop, at least onc ch~-.nel sharing factor was ..~;r.~ because it was either wasgreater than f_MAX or lcss than f_MIN. Thus, thc total bandwidth irrevocably 25 -q-':Qig~, f DONE, and the ~ ining bandwidth tentatively qCSi~l~ f_LEFT, may not equal the total available bandwidth. Th~ Çc,l~, a~ps~p.;ate scaling of the charmel sharing factars that can still be n~lified must be pe.~l~d so as to ~;~e p~vyul~ions of the chqn~l sharing factors to each other as well ~ to asswe that e~cactly the entire bandwidth is q-csigr~
C~iti~n9l branch point 11 lS tests if the cu~ent value of f(in) is less than f MIN, i.e., does the chqnnel sharing factor reflect an s~ nt of less than the .~ .. allowed bandwidth. If the test result in step 11 lS is YES control is passed to step 1116 which sets f(i,n) for the cuIrent i equal to f_MIN, and setsDONE(i) to true indicating that thc chqnnel sharing factor for this ch~nnel has been 35 reset to within the permissi~l~ limits and dlat this ch^ ~el -q-11oc~qtion facto~ can not be furth~r ~ ;r~l by this routineO ~ itiN~qlly~ ALL_DONE is set to false so that 2 ~ 2 the loop initi~eA by step 1110 will be repeateA It is n~n~scz ~ to repeat thc loop to assure that proper scaling by step 1114 will be p~.Ç~l llcd based on the r~msining and &~cedly s-~si~ bandwidth. Control is then passed to conAiti~ns-l branch 1112as above. If the test result in step 1115 is NO, control is passed to step 1117 which S tests if f(i,n) is greater than f_MAX. An s-~ci~mf nt of a chsnnel shar.ing factor greater than f MAX would indics-t~p that more bandwidth has been slloc~tp~A- to sub-image i than an equitable and desirable slloc-s-tion would permit. If the test result in step 1117 is NO, control is passed to conAitionsl branch 1112 a,s described above. If the test result in step 1117 is YES, control is passed to step 1118 which sets f(i,n) 10 equal to f MAX. Setting f(i,n) to f_MAX sets the chs-nnel slloc-stion facto.r to the l~a~ pe~nicsible value. ~AAitionslly, DONE(i) is set to TRUE to inAicate that the chs -nel sharing factor for this ch~nnel has been reset to within the permissible limits. Also, ALL_DONE is set to false so as to insure that the loop initi~te~ by st~p 1110 will be l~i~ at~A Control is then passed to conAition-s-l branch 1112 as 15 described above.
If the test result in step 1112is YES, control is passed to cc?n-litionsl branch point 1119 which tests if the value of ALL_DONE is equal to TRUE. If the test result in step 1119 is YES, the routine is exited via step 1120. The chs-nnel sharing facto~s are available to be supplied as output by sharing factor n- nnqli7stion unit 403 (FIG. 4) If the test result in step 1119 is NO, control is passed baclc to step 1103 which reinitiqli7rs the b~ r vs~i~s.~'~s and repeats the above described loops.
By employing an array of values of f MlN(i) and f_MAX(i) in place of the simpler f_MIN and f_MAX a more A~tsileA s~igr n~n~ of bandwidth can be 25 . chi~ved. Such a ~h~ could be useful for images that are ~-o~ osc~d by f~qYency b~cause the lower L~u~,r~ imagcs typically contain most of the info~ on content of the image. By sllocqtinp c~ g values of f MIN(i) and f MAX(i) ba~ed on L~ue,ncy band, a morc app.uln;ate division of the available bandwidth can be ob!sit~d Shown in I;IG. 12 in a high level bloclc diagram format is a viA~o ~o~ler cap~blc of receiving the enro~A. and c~ .~d data supplied by multiplexer 104 (FIG. 1) and lcco~cl;lul;t~g a l~ senlsti~n of original VIDEO INsignal luS. Cûu~ 3S~d data 112 (FIG. 1) is supplied from a eh~ncl to A~.m~lltiplexer 1201 which s~ ,s _nd l~co~ s N data streams lep ing N
sub-images. Thc N d~a streams are supplied to video coders 1202-1 through 1202-N which ~llt thc inverse video coding of video coders 102. The res~lltin~ sub-~ D~96~2 vid00 signals are suppLiied to video merger unit 1203 which rec~hincs the sub-vidco signals into a single video signal in a manner con~;~t~ t with the inverse of the operations p.,.Ço~ Gd by video splitter 101. The res~lting signal, VIDEO OUT is supplied as output on signal lead 1204.
S It is noted that the above ~les~ibe(l bandwidth qllocqtion scheme could be employed if each video coder was pluces~;ng image streams derived from separate video sources rather than a sub-image of an original image. In one such a ~it~lqti-~n video splitter 101 (FlG. lj and video merger 1201 (FIG. 12) would not be employe~ ~nA~ each signal SUB-VIDEO 106 would bc supplied from a separate 10 source. Tl e bandwidth qllocqtion techniques however could be cmployed directly as ~rsc~i~ed above.
Brief Description of the D. ~ L
In the Drawing:
Shown in ~;IG. 1 is an eYemrl-a-ry system overview, in simplified block S diagram format, of a video enro~iPr employing aSpectc of the invention;
An exçmrla-ry spacial de~o~n~oc;l;on of an image is shown in FIG. 2;
FIG. 3 depictc an exemrla-~y L~uency de~on-l osilion of an image contain~ within an HDTV frame;
Shown in FIG. 4 is an expan~e~ view of an exemp!ary impleme~t~tion 10 of a dynamic chqnne~ ocahon unit;
Depj^te~ in FIG. 5, in cimplifi~Pd block diagram format, is an exemplary imple..~.nl~l;on of an initial sharing factor e~
FIGS. 6 and 7, when cnnl)r~t~!d as shown in FIG. 8, illustrate, in flow chart form, an expmplary method for deriving the initial set of e,l;~ .t~3 chann15 sharing factors by an initial sharing factor c~;..-a~, FIGS. 9 and 10, when connPcted as shown in FIG. 11 folm a flow chart diagram of an exemplary method of ~rul ng the norrnPli7-stion of a set of channel sharing facto~s; and Shown in FIG. 12, in a high level block ~lia~m folmat, is a video 20 ~c~.
Detuiled Dcscription Shown in FIG. 1 is an exempls~y system overview, in ~imrlified block diagram fo~mat, of a video enrod~ employing aspects of the invention. The systemis comprised of video splitter 101, m..lhill'e parallel video coders 102-1 through 25 102-N, dyn~c chMnel ~ c~hon unit 103 and multiplexer 104. Video splitter 101 is ~ 1:~ with ori~inol vidleo signal VIDEO IN 105. Signal VIDEO IN 105 is a bit st~m th~t c~ s a series of frames cach COn~9;~ing an imagc. Typically signal VIDEO IN lOS would bc suppli~ by a well Icnown and co~ ,. eially availablc video signal sourcc in~luding~ without l;-,.;l~;on a video cPmt!~ a vid~ocac~ettP
30 .,c~r, or a vidr~i~ playa unit. The bandwidlth of signal VIDEO IN 105 is wide. For example, thc bandwidth of a video signal ~ ,ppli~ by a vidco camera en~ g images in th~ Zenith proposed HDTV format is applo ;~tely 37 Mhz.
Video splittcr 101 split each ~''Cc4s~ imagc of signal VIDEO IN 105 into N sub-imag~s. each sub-image comprised of one of signals SUB-VIDEO 10~1 35 through SUB-VIDEO lO~N. The splitting can bc achieved by employing a spatial ~ccunpoc~ on or, alte~tively~ by employing a sub-band frequency dec~...positiQn 2Q4~
For c~campk, each image in the Zenith HDTV format is c~mpn~A. of 720 lines of 1280 pixcls (pels) per line which can be spatially (~co~q~seA into an array of 12 sub-images. The.cf~, N=12 and each of signals SUB-VIDEO 106 co~c~n~ls to a video signal comprising one of thc 12 sub-images. An exemplary spacial 5 d~co..-l)c.sition of an image is shown in FIG. 2. Each res~llting sub-image comprises 240 lines. Sub-images 201-1 through 201-9 have 352 pels per line and sub-images 202-10 through 202-12 have 224 pels per line. The spacial deco~ sition shown was selected for inlr4.~n~tion con~eme.lce so that thc rrs~llting sub-images would be c~ pa~ible in size with the C'ommon Inte...~A~ Folmat (CIF) defined in the 10 CClIT l~co~ n~tiQn H.261 (Px64kbps standard). This sclection should not be construcd as placing any limit~tion on the invention.
FIG. 3 shows ey~mpl~ry appal~lus conl~in~d in video splitter 105 (FlG.
1) fo~ ~. r~."ling an exemrl~ry frequency dc~ pos;~ n of an image cQnt~ined within an HDTV framc supplied from signal VIDEO IN 105. Each image is 15 ~"~l ose~:l into 16 f~quency bands and"l.~,. f~l~, N=16. Thc ~co~-.posi~ion is ~cco..~ ~ in an eYenlp!~ry m~nner by employing a ,~ccess;~_ series of alt~ ing two stage filter ban~s, horizontal filter banks 301-1 through 301-5 and vertical filter bar~s 302- 1 thn)ugh 302- 10, and sub-samplers 303- 1 through 303-30 to p~ s~ ,ly d~c~.~pcse each res-)lting filtered and sub-s~mpled video signal 20 until a desired sub-image size and f.~ucnc~ distribution is obtnh-r~d Each horizontal filter banlc 301 effects a separation in the h~- ;70~tS~l dil~;liOn of the high and low Li~uelh~y cQ...~ u,nl~ of the image c~ within the video signal with which it is snpplit~ Similarly, each vertical filtcr banlc 302 effects a separation in the vcr~cal dircc~on of the high and low rl~-~ C~ )Onf ~S of the image 25 c~i~d within the video signal with which it is supplie~ For clarity puIposes some of h~ -l"l filter ban~s 301, vertical filter banl~s 302 and sub-s~rnr!ers 303 are ra *~own. IIo. c:~er, the various int~ n~ n~ .~uired will be clear to one sldlbd in the ~ Es~ch of horizontal filter banlcs 301 is c~rnrrieecl of hnri7~nt~1 low pass filter (Hlp) 304 and hori_ontal high pass filter (Hhp) 305. Each of vertical filter 30 ban~ 302 is C~liS~Xl of vertical low pass filter (Vlp) 306 and vcrtical high pass filter (Vhp) 307. Aftcr each filtering stage, the res~ltin~ video signals are sub-sampbd by 2. The sub-ssmplin~ is p~.rcl~cd by sub-samplcrs 303. Upon c~h~ n of th~ r.~..cy band ~l<~o..~l~osition, each res~l1ting 1/16th size sub-image (180 lincs by 320 pels) is s~ e to be pi~<5s~ by a video coder 35 co~T~nAine to the P~c64kbps standard. Thus, each of signals SUB-VIDEO 106 supplied a s output cam~s~onflc to a video signal c~l;sing one of the 16 sub-imagcs. It is noted that the instant invention can be applied to any video image andno limit~ ir~n should be construed by the use of HDTV as an exemrlsry system in which to practice the invention.
Each of signals SUB-VIDEO 106-1 (EIG. 1) through 106 N is supplied S to a c~l~sp~nAing one of video coders 102-1 through 102-N. Video coders 102 encode their l~,s~;li~e ones of signals SUB-VIDEO 106 and supply as an output one of DATA STREAMS 11~1 through 110-N. Each of DATA STREAMS 1 10 ~eplc3ellt~ the sub-image con~s-in~ in the c~..cspon-ling one of SUB-VIDEO 106 in an encQ~ format. Methods of pe.rolll~ing such e ~cQling~ e.g., con-liti-?ngl 10 rep!eni~hmrnt, motion CO~ teli predictive coding and the Px64kbps standard, are well know. Also enrQ-1ed into DATA STREAMS 110 is any s~l~itionsl control inforrnstiQn required to reconstruct, to the ac~u.~ inherent in the coding teel nifllle employed, each of signals SUB-VIDEO 106. The nu nbe. of bits desired to be supplied as an output by each of video coders 102 can be q~ecifi~d by control signals 15 supplied to video coders 102. The qllsnti7s~ion step size employed by the coder is then ~t~.mined based on the number of bits desired and the c~.ple~ily of the sub-image being enrQ~e~
The set comrri~ of the average number of bits per pel produced by each of video coders 102 in frame n- 1, where n is a variable inclirsting the current 20 frame, is b(i,n-l) for i=l,...N,. One n~m~ of this set is supplied to dynamicCh ~ ~n~l q-llocqtir~n unit 103 from each of video coders 102 over signal kads 107-1 through 107-N. Similarly, the set of average quar ~i7q~~n step size used by video coder 102-i in frame n- 1, q(i,n-1) for i= l ,...N, is also ~,~ppl i~ to dyn. mic chqnnel sllocsti~!n unit 103 by video coders 102 over signal leads 108-1 t}uough 108-N. In 25 accodu~e with an aspect of the invention, d~ c chqnn~l q~ xq~irA~ unit 103 utiliær tl* set~ of b(i,n-1) and q(i,n-1) to derive a set of chs~nCl sharing factors, f(i,n) f~ isl~...N~ f the current frame, n, being p..cess d by each of video coders 102. Eflch imlividual chsnn~l shanng f, ctor, f(i,n), is a n inAicvqti~n of the fr, ction of the overall chqnn~,l bandwidth, C, qllocqbsd GO video coder 102-i for supplying to the 30 chsr nel the contenU of iU sub-image for frame n. ~hqnnel qlloc~ on unit 103 sl~rFli~s the chqnl el sh~ing factors f(i,n) to each of video coders 102 over signal lead~ 109-1 through 109-N. The chqnnel sharing factors may be in . ny of severalfo~mau inchu~ g but not limited to: a s~c;l~rAt;on of the exact numb~. of bits each video codcr 102 is to produce for the current frame; a fractional number inrlir~ting 35 the p~l.~age of time a~ cat~ to each coder for trar~ ;on ~f the bits it produces fo~ tl~ cwrent ~ame; or a qusnti7cr step size, either average or fi~ced, to be 20~9~
employed.
DATA STREAMS 110 are supplied to mul~ er 104. Also, the info~ ;on contqine~ in the chqnnel sharing factors are supplied to mlll iple~er 104 over signal CONTROL 111. Mllltirlexer 104 combincs each of DATA STREAMS
5 110 into a single signal, COMPRESSED DATA OUT 112 that is supplied qs output.
Also incorporated into signal COMPRESSED DATA OUT 112 is fol"l&uing ~ç~",.~t;gn in-1icq-ting how to recover each of DATA STREAMS 110. Methods of multiplexing multiple data streams are well known.
Shown in FIG. 4 is an expqn(led view of an exemplary implem~ntqtion 10 of dynamic ch~nn~l AllocAtiQn unit 103. For yul~oses of this example, dynamicchqnnel al~Atign unit 103 comrrises initial sharing factor c~l;."At~r 401, optionAl estin~qte n~lifin~q~tion unit 402 and optional sharing factor no~rnqli7Ati~n unit 403.
In acc~lance with an aspect of the invention, for each current fr. me n, the average number of bits per pel b(i,n- 1) in the prior frame n- 1 and the average quqnti7~qtion 15 step size q(i,n-1) for every video coder 102 is supplied to initial sharing factor esfimqtnr 401. Initial sharing factor e;~ a~ 401 supplies as output an initial set of estimqt~ chqnnel sharing f. ctolY, f(i,n), i=l...N.
Shown in FIG. S, in simrlifi~l block diagram format, is exemplq-ry i."ple-~f nl~ n of initial sharing factor estimqtr~r 401 (E~IG. 4). q(i,n-l) is supplied 20 from cach of video coders 102 (FIG. 1) as input to image characteristic pa~ ~te~
c~. {?u~ unit 501 and quAnti7q-tinn step size e~ n~ unit 502 while b(i,n) is also supplied as input to image ch~D~.istic p~ cQ~.~p~ ;on unit 501.
Image characteristic parameter co~pu~;~ unit 501 co~np s for each su~image ~ ss e d by cach of ~ridco coders 102 (FIG. 1) for each current frame n, an image 25 char~ristic parameter F(i,n-l), for i=l..N, indicative of the cc~rnplexity of the cone~ g su~imagc. F(i,n- 1) is su~,pli~l to nu~l~b~ of bits for each coder es~m~or S03. Qusntization step size es~ rctor 502 sUpplies a set of initial ea~ s of the desi~d ~ ;on step size to be uscd for all video coders 102 for f a~ current frame n, q (n). Sharing facto~ cc~ ul~;Qn unit 504 receives as 30 input the set of initial estimqtes of the desired average bits per pcl b(i,n), and suppl~s as an output a alet of an initial set of estimated chsnnel sharing factors, f(i,n), on~ for each of the N ~ridco coders 102.
FIGS. 6 and 7, when conn~ as shown in FIG. 8, illustrate, in flow chart fonn, an e~enlplq~y method for deriving thc initial set of estimqte~ c~lqnnel 35 sharing factors, f(i,n), i=l...N, by initial sharing factor es inuq-tor 401 (FIG. 4). The rwtinc is cntc~d via step 801 after the pl~lces~ g of the previous frame by each of 2~96~
vidco coders 102 (FIG. 1) and their supplying of b(i,n-1) and q(i,n-l) to dynamic chqnn~,l Lqllocqtion unit 103 but prior their to proc~ssing of the current frame. When the fi~t fr me is ~ cessc~l the routine is not entered This is becvls~ there was no previous frame and lLc.~,rolc no values are available for b(i,n-1) and q(i,n-1).S Instead each chqnnel is initially a~igned an equal portion of the available bandwidth so that for n=1 f(i,n)= N The value of index i is initiqli7P~ to 1 in step 802.
I~.~allcr, in step 803, a value for F(i,n-1) is co...put~1 and stoq~ed according to F(i,n- 1) =q2 (i,n- 1) eab(i'n~ l). F(i,n-1) is an image characteristic pa~ eter for video coder 102-i that is ~1~ tc~ ed in frame n-1 and a is a coder depen(3ent 10 ~ar~ter that is often a con~tqnt number, e.g. 1.39. Next, con~litif~nql branch point 804 tests if i is equal to N, i.e., has a value been co...put~ for each video coder. If the test result in step 804 is NO, control is passed to step 805 which inc.~:mell~ the valuc of i. Control is then passed baclc to step 803. Typically, steps 802 through 805 would be pe1ru~d by image cha~ te.-stic pq~n~t~ co~- ~iOI unit 501 (FIG.
15 5).
If the test result in step 804 is YES, control is passed to step 806 which resets the value of i to 1 and sets q (n)=0. q (n) ~ ,wn~s the average of the squa~s ~f the average qll~nti7~r values suppli~ from each of video coders 102. It is uscd as an estimate of the qll~nti7~tion step si_e to be used by all video coders 102 20 (FIG. l)forf~amen. Step807~ aft~rco..~,t~sq (n)=q (n)+ Nq2(i,n-l).
Ne~ct, conAiti~nsl branch point 808 tests if i is equal to N. If the test result in step 808 is NO, control is passed to step 809 which incl~,..L. Ig the value of i. Control is then passed bacl~ to step 807. It is noted that there in no de~ ~ n~ q-~nchips in the loop f~-~ ;~ g steps 802 through 805 . nd the loop con~rnc;ng steps 806 25 th~ough 8a9. lhese loops may tl~,~fo~ be pe.r~l~d in any ordcr or in pqr.qllf~l at the fliscretion of the im~ ntor. Typically steps 806 through 809 are pe~ff~,ll,ed by q~atiza~on step size e~ 502 (FIG. S) If thc test result in step 808 is YES, control is passed to step 810 which resets the v~ue of i to 1. The.~af~r, in step 811, an c~ L of thc average nulll~r 30 of bits per pi~cel for each coder to be employed for current frame n h which q ( n ) is used as the qrq~ ti7atin ~ step si_e, is co~p~ft~l accf~ling to b(i,n)=--ln (i2 1) . Next, conAitionsl branch point 812 tests if i is equal to N. If the test result in stcp 812 is NO, control is passcd to step 813 which inw~nts ~049~
.
the value of i. Control is then passed back to step 811. Steps 810 through 813 would typically be e~ut~ by ml.,.~r of bits for each coder estimqtor 503 (FIG. 5).
If the test result in step 812 is YES, control is passed to a loop comprising steps 814 through 817 which cq-lrul~tçs and stores in a ~.u~laly S ~ ing variable bh~ (n) a total of the estimqt~ number of bits in frarne n. Thenu~r of bits e;.~illlat~d to be used for each sub-image is derived by obtaining the product of the average numb~,r of bits per pel es~ t~ for video coder 102-i, b(i,n), and the nulllbcr of pels in each sub-image num_pels(i). Step 814 resets the value of i to 1 and sets the value of bhq~t~um(n) to zero (0). Next, in step 815 the 10 value of current value of b(i,n) is multiplied by the nuu~r of pels in signal SUB-VIDEO 106-i, num pels(i), and added to the current value of bh~tsum(n) to produce an new value of bh~t~ ..(n). The,~iar~., con~litir~n~ql branch point 816 tests if i is equal to N. If the test result in step 816 is NO, control is passed to step 817 which in~.c.~h~ the value of i. Control is then passed baclc to step 815.
If the test result in step 816 is YES, control is passed to step 818 which resets the value of i to 1. Next step 819 comput~s an initial e~ te of the ~hqnne sharing factar f~r each coder i for frame n, f(i,n), according to f(i, n ) = b( ' b) ( pe) s (i ) . C~nditionql branch point 820 then tests if i is equal to N. If the test result in step 820 is NO, control is passed to step 821 which 20 in~e~nls the value of i. Control is then passed back to step 819. If the test result in step 820 is YES, the routine is exited via step 822. The csl ;~ chqr~nel sharing factors are available to be snrpli~d as output f(i,n) from initial sharing factor estimqh~ 401. Steps 814 through 822 would typically be ~lÇol..led by sharing fact~ computation unit S04 (FIG. S) Opdonal c~ fiçqtion unit 402 (F~G. 4) .~ .cs as input the e~Li.,.~ed ~ 1 sharing factors from initial sharing c~ sor 401. Opdonal cY~ ; ,.~J;fi~ufi~ unit 402 mnriifies the estimated e,~--nel sharing facton to reflect the pn~ history of the compleYi~y of each sub-image, in accordance with an aspect of the invendon. An exemplary way to u1c~,l~lat~, the pnor history of each 30 sub-image is to use a weighted average of the actually employed çhsnn~l sharing factors for the pnor k fnunes and the C~ chumel sharing factor for the cu~rent frame. One such c-..hodi~ n~ employs a set of weighting factors c~(lc) . nd c~.~put,~ s for each video coder 102 (FIG. 1) f(i,n)=~(o)f(i,n)+c~(1)f(i,n- 1)+ +c~(lc)f(i,n-~). The num~. of 35 &ames,1~, and thc values of each of the c~(lc) is ~-.~.;n~i by the imph,..~n~or. Fo~
2049~2 example, Ic=l and ~(0) = 0. 7 and co( 1 ) = 0.3. The m~ifi~ es~ 1 chsnnel shanng factors f(i,n) are supplied as output f(i,n) by ea~;n~ale m~1ific-sltion unit 402.
An a dvantage of employing optional ea~ Pte mo~lifin~s~tiQn unit 402 is that a ~..~1~ change of the chqnnel sharing factors c. n be achieved as co~,d..,d to S when initial sharing e~ o~ 401 is employed alone.
~ Ithough the chsnnP~l sharing factors f(i,n) supplied by initial sharing esflmqtn 401 or optional es~ te mc~ifirstirn unit 402 may be employed directly, it may be desirable to no~msli7e the chsnnPI sharing factors by employing optional sharing factor n- rmqli7qflon unit 403. This is desirable beca~Jse video coders 102 10 (~G. 1) may not work at rates higher than a certain limit. The.~fol~" an upper limit on each chqnnel sharing factor, f MAX is employed. Further, image ~epP. n~l~nt pdl~t~,. F(i,n-l) may have a sudden change during a scene chqngP To insure the provision of a ...;n;...---.. chqnnel bandwidth for each of video coders 102, a lower limit on each chqnnP,l sharing factor, f_MIN is employed to help reduce buffer 15 o.e.~ during scene change con~litions~ Reserving a .nini.. chqnnp~l bandwidthfor each of video codcrs 102 can also reduce disto~on effects that can arise forcoders o~.~ at very low bit rates. In accordance with an aspect of the invention, the ..~l;r~l set of chqnncl sharing factors is suppli~ as input to sharing factor norrnqli7-s-tion unit 403 which normali_es the set such that no individual channel 20 sharing factor eYc~ f_MAX nor are any individual chqnnel shanng factors less than f_MlN. This wrrrLqli7qtion is perfomled while ~ ;n~ining the spirit of the original bandwidth slloc~s~ti~n rrflected in the supplied set of chsnnel sharing f. ctors.
FIGS. 9 and 10, when con t~ as shown in FIG. 11 foIm a flow chart diagram o,f . n e~emplsry method of p,- r.~ g such a n~li7ation. For pulposes 25 of thi~ metbod. ea~h ~ ch9~nel sharing factor, f(i,n) is a fractional nu~er indica~ng ~e ~on of the total available ba~ h C that has been Lqllocqt~ to video c~der 102-i. Accordingly, the routine is entered ~ia step 1101 upon the ~cep~i~n of a ~et of ~ ' sharing factors to be na¢n~qli7ed ~ step 1102 each value of a ~ A ~ ~Tay, DONE(N) is initiqli7~1 to FALSE. Thc.~,~., in step 30 1 103 ~ vq-is~ks f_DONE and f_LEFT are set to 0.0 while ALL_DONE is set to TRUE. f_DONE Ic~.~senls that portion of the tot,l bar..l~ h for which thech^-~,l sha~ing factor has previously been p~mqnently ~ by the n~mali_ation routine. Such sharing f~ctors have their Cull~ Aing DONE(i) value set equal to TRUE. Conversely, f LEFT indicates the p~ion of the total bandwidth35 for which the chs~lnPI sharing factor has not previously been p"..~nPn~ly modified by the n~rns~li7~ation routine and for which DONE(i) is FALSE. A loop for indiex i ~ O ~ 9 ~ ~ ~
is bcgun in stcp 1104 in which i is ini~iqli7ed to one. Con~litionsl branch point 1105 tests if DONE(i) is equal to TRUE. If the test result in step 1105 is NO, as it is for each value of i for the first iteration through this loop, control is passed to step 1106 which adds the chsnn~l sharing factor, f(i,n) to a running total of f LEI;T. Control is S then passed to conditiQnql br. nch point 1107. If thc test result in step 1105 is YES, control is passed to step 1108 which adds the chqnnel shanng factor, f(i,n) to arunning total of f_DONE. Control is then passed to conditiQnql branch point 1107.
Con~ ior~ql branch point 1107 tests if i is equal to N, i.e., have all channel sharing factors been process~ through the loop. If the test result in step 10 1107 is NO control is passed to step 1109 which inc~.l~nts i. Control is then passed baclc to conditiQnql branch point 1105 and the loop is repeated If the test results in step 1107 is YES, control is passed to step 1110 which resets i for use in another loop. The.~df~, con~litiQnql branch point 1111tests if DONE(i) is equal to TRUE. If the test result in step 1111 is YES, control is 15 passed to con~ iQn~l branch point 1112 which tests if i is equal to N, i.e., has each ch~nnt l sharing factor been plvcesscd within this loop. If the test result in step 1112 is NO, control is passed to step 1113 which h~ ,~nls i and control is passed back to c~itionql branch point 1111.
If the test result in step 1111 is NO, control is passed to step 1114 which 20 scales f(in) according to the ratio of ( l-f_DONE) to f LEFT. llle first time through this loop initj~t~:l by step 1110, f_DONE is zero (0) and f_LEFT is unity so that f(i,n) lC~S unchanged. If, however, thcrc arc ~lb3~ passes through this loop, at least onc ch~-.nel sharing factor was ..~;r.~ because it was either wasgreater than f_MAX or lcss than f_MIN. Thus, thc total bandwidth irrevocably 25 -q-':Qig~, f DONE, and the ~ ining bandwidth tentatively qCSi~l~ f_LEFT, may not equal the total available bandwidth. Th~ Çc,l~, a~ps~p.;ate scaling of the charmel sharing factars that can still be n~lified must be pe.~l~d so as to ~;~e p~vyul~ions of the chqn~l sharing factors to each other as well ~ to asswe that e~cactly the entire bandwidth is q-csigr~
C~iti~n9l branch point 11 lS tests if the cu~ent value of f(in) is less than f MIN, i.e., does the chqnnel sharing factor reflect an s~ nt of less than the .~ .. allowed bandwidth. If the test result in step 11 lS is YES control is passed to step 1116 which sets f(i,n) for the cuIrent i equal to f_MIN, and setsDONE(i) to true indicating that thc chqnnel sharing factor for this ch~nnel has been 35 reset to within the permissi~l~ limits and dlat this ch^ ~el -q-11oc~qtion facto~ can not be furth~r ~ ;r~l by this routineO ~ itiN~qlly~ ALL_DONE is set to false so that 2 ~ 2 the loop initi~eA by step 1110 will be repeateA It is n~n~scz ~ to repeat thc loop to assure that proper scaling by step 1114 will be p~.Ç~l llcd based on the r~msining and &~cedly s-~si~ bandwidth. Control is then passed to conAiti~ns-l branch 1112as above. If the test result in step 1115 is NO, control is passed to step 1117 which S tests if f(i,n) is greater than f_MAX. An s-~ci~mf nt of a chsnnel shar.ing factor greater than f MAX would indics-t~p that more bandwidth has been slloc~tp~A- to sub-image i than an equitable and desirable slloc-s-tion would permit. If the test result in step 1117 is NO, control is passed to conAitionsl branch 1112 a,s described above. If the test result in step 1117 is YES, control is passed to step 1118 which sets f(i,n) 10 equal to f MAX. Setting f(i,n) to f_MAX sets the chs-nnel slloc-stion facto.r to the l~a~ pe~nicsible value. ~AAitionslly, DONE(i) is set to TRUE to inAicate that the chs -nel sharing factor for this ch~nnel has been reset to within the permissible limits. Also, ALL_DONE is set to false so as to insure that the loop initi~te~ by st~p 1110 will be l~i~ at~A Control is then passed to conAition-s-l branch 1112 as 15 described above.
If the test result in step 1112is YES, control is passed to cc?n-litionsl branch point 1119 which tests if the value of ALL_DONE is equal to TRUE. If the test result in step 1119 is YES, the routine is exited via step 1120. The chs-nnel sharing facto~s are available to be supplied as output by sharing factor n- nnqli7stion unit 403 (FIG. 4) If the test result in step 1119 is NO, control is passed baclc to step 1103 which reinitiqli7rs the b~ r vs~i~s.~'~s and repeats the above described loops.
By employing an array of values of f MlN(i) and f_MAX(i) in place of the simpler f_MIN and f_MAX a more A~tsileA s~igr n~n~ of bandwidth can be 25 . chi~ved. Such a ~h~ could be useful for images that are ~-o~ osc~d by f~qYency b~cause the lower L~u~,r~ imagcs typically contain most of the info~ on content of the image. By sllocqtinp c~ g values of f MIN(i) and f MAX(i) ba~ed on L~ue,ncy band, a morc app.uln;ate division of the available bandwidth can be ob!sit~d Shown in I;IG. 12 in a high level bloclc diagram format is a viA~o ~o~ler cap~blc of receiving the enro~A. and c~ .~d data supplied by multiplexer 104 (FIG. 1) and lcco~cl;lul;t~g a l~ senlsti~n of original VIDEO INsignal luS. Cûu~ 3S~d data 112 (FIG. 1) is supplied from a eh~ncl to A~.m~lltiplexer 1201 which s~ ,s _nd l~co~ s N data streams lep ing N
sub-images. Thc N d~a streams are supplied to video coders 1202-1 through 1202-N which ~llt thc inverse video coding of video coders 102. The res~lltin~ sub-~ D~96~2 vid00 signals are suppLiied to video merger unit 1203 which rec~hincs the sub-vidco signals into a single video signal in a manner con~;~t~ t with the inverse of the operations p.,.Ço~ Gd by video splitter 101. The res~lting signal, VIDEO OUT is supplied as output on signal lead 1204.
S It is noted that the above ~les~ibe(l bandwidth qllocqtion scheme could be employed if each video coder was pluces~;ng image streams derived from separate video sources rather than a sub-image of an original image. In one such a ~it~lqti-~n video splitter 101 (FlG. lj and video merger 1201 (FIG. 12) would not be employe~ ~nA~ each signal SUB-VIDEO 106 would bc supplied from a separate 10 source. Tl e bandwidth qllocqtion techniques however could be cmployed directly as ~rsc~i~ed above.
Claims (12)
1. Apparatus for dynamically allocating portions of available overall channel bandwidth CHARACTERIZED BY:
a set including a plurality of individual video coders [102] each of which is processing in parallel at least a different portion of at least one video signal [105] comprised of frames wherein each frame contains an at least one image representation;
means for receiving as an input from each member of said set of individual video coders an average frame quantization step size employed in a previous frame [103, 108, 401, 502]; and means responsive to said average frame quantization step size from each of said individual video coders for generating for a current frame a set of estimated channel sharing factors [103, 401, 504].
a set including a plurality of individual video coders [102] each of which is processing in parallel at least a different portion of at least one video signal [105] comprised of frames wherein each frame contains an at least one image representation;
means for receiving as an input from each member of said set of individual video coders an average frame quantization step size employed in a previous frame [103, 108, 401, 502]; and means responsive to said average frame quantization step size from each of said individual video coders for generating for a current frame a set of estimated channel sharing factors [103, 401, 504].
2. The apparatus as defined in claim 1 further CHARACTERIZED BY
means for supplying as an output [109] a set of channel sharing factors.
means for supplying as an output [109] a set of channel sharing factors.
3. The apparatus as defined in claim 1 further CHARACTERZED BY
means for receiving as an input a set of values representative of an average number of bits produced per pel by each individual video coder for said previous frame [103, 108, 401, 501] each member of said set corresponding to at least one member of said set of individual video coders.
means for receiving as an input a set of values representative of an average number of bits produced per pel by each individual video coder for said previous frame [103, 108, 401, 501] each member of said set corresponding to at least one member of said set of individual video coders.
4. The apparatus as defined in claim 3 CHARACTERIZED IN THAT
said means for generating is also responsive to said set of values.
said means for generating is also responsive to said set of values.
5. The apparatus as defined in claim 1 further CHARACTERIZED BY
means for deriving a modified set of estimated channel sharing factors from said set of estimated channel sharing factors such that said modified set of estimated channel sharing factors reflects values of at least one estimated channel sharing factor for at least one frame prior to said current frame [402].
means for deriving a modified set of estimated channel sharing factors from said set of estimated channel sharing factors such that said modified set of estimated channel sharing factors reflects values of at least one estimated channel sharing factor for at least one frame prior to said current frame [402].
6. The apparatus as defined in claim 5 CHARACTERIZED IN THAT
said means for deriving [402] further includes means for obtaining a weighted average of an at least one of said current estimated channel sharing factors and said at least one estimated channel sharing factor for at least one frame prior to said current frame.
said means for deriving [402] further includes means for obtaining a weighted average of an at least one of said current estimated channel sharing factors and said at least one estimated channel sharing factor for at least one frame prior to said current frame.
7. The apparatus as defined in claim 1 or 5 further CHARACTERIZED
BY means for normalizing [403] either said modified set of estimated channel sharing factors, if derived, or said set of estimated channel sharing factors, if said modified set is not desired.
BY means for normalizing [403] either said modified set of estimated channel sharing factors, if derived, or said set of estimated channel sharing factors, if said modified set is not desired.
8. A method for dynamically allocating portions of available overall channel bandwidth to each member of a set including a plurality of individual video coders wherein each coder is processing in parallel at least a different portion of at least one video signal comprised of frames wherein each frame contains an at least one image representation, CHARACTERIZED BY the steps of:
receiving as an input from each member of said set of individual video coders an average frame quantization step size employed in a previous frame; andgenerating for a current frame a set of estimated channel sharing factors in response to said average frame quantization step size from each of said individual video coders.
receiving as an input from each member of said set of individual video coders an average frame quantization step size employed in a previous frame; andgenerating for a current frame a set of estimated channel sharing factors in response to said average frame quantization step size from each of said individual video coders.
9. The method as defined in claim 8 further CHARACTERIZED BY the step of supplying as an output a set of channel sharing factors.
10. The method as defined in claim 8 further CHARACTERIZED BY
the step of receiving as an input a set of values representative of an average number of bits produced per pel by each individual video coder for said previous frame, each member of said set corresponding to at least one number of said set of individual video coders wherein said step of generating is also responsive to said set of values.
the step of receiving as an input a set of values representative of an average number of bits produced per pel by each individual video coder for said previous frame, each member of said set corresponding to at least one number of said set of individual video coders wherein said step of generating is also responsive to said set of values.
11. The method as defined in claim 8 further CHARACTERIZED BY
the step of deriving a modified set of estimated channel sharing factors from said set of estimated channel sharing factors such that said modified set of estimated channel sharing factors reflects values of at least one estimated channel sharing factor for at least one frame prior to said current frame.
the step of deriving a modified set of estimated channel sharing factors from said set of estimated channel sharing factors such that said modified set of estimated channel sharing factors reflects values of at least one estimated channel sharing factor for at least one frame prior to said current frame.
12. The method as defined in claim 8 or 11 further CHARACTERIZED
BY the step of normalizing said set of modified estimated channel sharing factors, if derived or said set of estimated channel sharing factors if said modified estimated channel sharing factors are not derived.
BY the step of normalizing said set of modified estimated channel sharing factors, if derived or said set of estimated channel sharing factors if said modified estimated channel sharing factors are not derived.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US580,412 | 1990-09-10 | ||
US07/580,412 US5115309A (en) | 1990-09-10 | 1990-09-10 | Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2049692A1 CA2049692A1 (en) | 1992-03-10 |
CA2049692C true CA2049692C (en) | 1996-04-23 |
Family
ID=24321006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002049692A Expired - Fee Related CA2049692C (en) | 1990-09-09 | 1991-08-26 | Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders |
Country Status (7)
Country | Link |
---|---|
US (1) | US5115309A (en) |
EP (1) | EP0479432B1 (en) |
JP (1) | JP2504880B2 (en) |
KR (1) | KR950004111B1 (en) |
CA (1) | CA2049692C (en) |
DE (1) | DE69118639T2 (en) |
HK (1) | HK146296A (en) |
Families Citing this family (207)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6067379A (en) * | 1988-12-09 | 2000-05-23 | Cognex Corporation | Method and apparatus for locating patterns in an optical image |
US5455629A (en) * | 1991-02-27 | 1995-10-03 | Rca Thomson Licensing Corporation | Apparatus for concealing errors in a digital video processing system |
ATE149276T1 (en) * | 1991-05-08 | 1997-03-15 | Semaphore Inc | DEVICE AND METHOD FOR PARALLEL AND RULE-BASED DATA TRANSMISSION |
NL9101080A (en) * | 1991-06-24 | 1993-01-18 | Koninkl Philips Electronics Nv | DEVICE FOR SPLITTING A DIGITALLY INTERLINED TELEVISION SIGNAL IN COMPONENTS. |
EP0527632B1 (en) | 1991-08-13 | 1998-04-08 | Canon Kabushiki Kaisha | Image transmission apparatus |
GB2258963B (en) * | 1991-08-23 | 1995-06-14 | Sony Broadcast & Communication | Sub band filters |
JPH0568243A (en) * | 1991-09-09 | 1993-03-19 | Hitachi Ltd | Variable length coding controlling system |
US5351083A (en) * | 1991-10-17 | 1994-09-27 | Sony Corporation | Picture encoding and/or decoding system |
US5243419A (en) * | 1991-10-31 | 1993-09-07 | At&T Bell Laboratories | Soft coding for HDTV |
DE4135977C2 (en) * | 1991-10-31 | 1996-07-18 | Fraunhofer Ges Forschung | Method for the simultaneous transmission of signals from N signal sources |
US5509017A (en) * | 1991-10-31 | 1996-04-16 | Fraunhofer Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Process for simultaneous transmission of signals from N signal sources |
US5216503A (en) * | 1991-12-24 | 1993-06-01 | General Instrument Corporation | Statistical multiplexer for a multichannel image compression system |
US5291281A (en) * | 1992-06-18 | 1994-03-01 | General Instrument Corporation | Adaptive coding level control for video compression systems |
EP0576763A1 (en) * | 1992-06-30 | 1994-01-05 | International Business Machines Corporation | Improved method for sub-band coding video signals and device for implementing said method |
KR100309358B1 (en) * | 1992-07-30 | 2001-12-28 | 요트.게.아. 롤페즈 | Devices that display television frames in reverse playback mode |
SE470038B (en) * | 1992-11-13 | 1993-10-25 | Televerket | Method and apparatus for dynamic allocation of multiple carrier channels for multiple access through frequency multiplexing |
US5600573A (en) * | 1992-12-09 | 1997-02-04 | Discovery Communications, Inc. | Operations center with video storage for a television program packaging and delivery system |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
US5659350A (en) | 1992-12-09 | 1997-08-19 | Discovery Communications, Inc. | Operations center for a television program packaging and delivery system |
WO1994014279A1 (en) * | 1992-12-09 | 1994-06-23 | Discovery Communications, Inc. | Digital cable headend for cable television delivery system |
US7168084B1 (en) | 1992-12-09 | 2007-01-23 | Sedna Patent Services, Llc | Method and apparatus for targeting virtual objects |
US5412690A (en) * | 1993-03-08 | 1995-05-02 | Motorola, Inc. | Method and apparatus for receiving electromagnetic radiation within a frequency band |
US5404167A (en) * | 1993-03-12 | 1995-04-04 | At&T Corp. | Subband color video coding using a reduced motion information subband |
JP2500582B2 (en) * | 1993-03-17 | 1996-05-29 | 日本電気株式会社 | Method and apparatus for multiplexing transmission of moving image signal |
JP3614448B2 (en) * | 1993-07-22 | 2005-01-26 | 日本放送協会 | Image signal encoding and multiplexing method and apparatus |
GB2281672A (en) * | 1993-09-03 | 1995-03-08 | Ibm | Video conferencing system |
BE1007490A3 (en) * | 1993-09-10 | 1995-07-11 | Philips Electronics Nv | DEVICE FOR TRANSFERRING a plurality of TELEVISION SIGNALS OVER A TRANSMISSION CHANNEL. |
US5602580A (en) * | 1993-09-17 | 1997-02-11 | Tseng; Ling-Yuan | Video communication controller using FM sideband transmission |
US5526051A (en) * | 1993-10-27 | 1996-06-11 | Texas Instruments Incorporated | Digital television system |
US5475691A (en) * | 1993-11-15 | 1995-12-12 | At&T Corp. | Voice activated date rate change in simultaneous voice and data transmission |
GB9400101D0 (en) * | 1994-01-05 | 1994-03-02 | Thomson Consumer Electronics | Consumer interface for a satellite television system |
US5600365A (en) * | 1994-01-28 | 1997-02-04 | Sony Corporation | Multiple audio and video signal providing apparatus |
JP3260950B2 (en) * | 1994-02-18 | 2002-02-25 | 松下電器産業株式会社 | Data communication device |
US5550590A (en) * | 1994-03-04 | 1996-08-27 | Kokusai Denshin Denwa Kabushiki Kaisha | Bit rate controller for multiplexer of encoded video |
JP3102260B2 (en) * | 1994-03-31 | 2000-10-23 | 日本ビクター株式会社 | Video encoding device |
US5526050A (en) * | 1994-03-31 | 1996-06-11 | Cognex Corporation | Methods and apparatus for concurrently acquiring video data from multiple video data sources |
US5877814A (en) * | 1994-04-20 | 1999-03-02 | Thomson Consumer Electronics, Inc. | Asynchronous control signal generating apparatus |
US5933450A (en) * | 1994-04-20 | 1999-08-03 | Thomson Consumer Electronics, Inc. | Complexity determining apparatus |
DE69433630T2 (en) * | 1994-04-20 | 2005-02-03 | Thomson Consumer Electronics, Inc., Indianapolis | DEVICE FOR GENERATING AN ASYNCHRONOUS CONTROL SIGNAL |
CN1067203C (en) * | 1994-04-20 | 2001-06-13 | 汤姆森消费电子有限公司 | Multiplexer system using constant bit rate encoders |
CN1078782C (en) * | 1994-04-20 | 2002-01-30 | 汤姆森消费电子有限公司 | Asynchronous control signal generating apparatus |
KR100314329B1 (en) * | 1994-04-20 | 2001-12-28 | 크리트먼 어윈 엠 | Multiplexer Using Constant Bit Rate Encoder |
US6055270A (en) * | 1994-04-20 | 2000-04-25 | Thomson Cosumer Electronics, Inc. | Multiplexer system using constant bit rate encoders |
DE69430925T2 (en) * | 1994-04-22 | 2003-02-06 | Thomson Consumer Electronics | DEVICE FOR DETERMINING COMPLEXITY |
US5933451A (en) * | 1994-04-22 | 1999-08-03 | Thomson Consumer Electronics, Inc. | Complexity determining apparatus |
US5838686A (en) * | 1994-04-22 | 1998-11-17 | Thomson Consumer Electronics, Inc. | System for dynamically allocating a scarce resource |
CN1072415C (en) * | 1994-04-22 | 2001-10-03 | 汤姆森消费电子有限公司 | System for dynamically allocating a scarce resource |
US5864583A (en) * | 1994-04-22 | 1999-01-26 | Thomson Consumer Electronics, Inc. | Parameter sampling apparatus |
AU6903794A (en) * | 1994-04-22 | 1995-11-16 | Thomson Consumer Electronics, Inc | Parameter sampling apparatus |
DE69432933T2 (en) * | 1994-04-22 | 2004-06-03 | Thomson Consumer Electronics, Inc., Indianapolis | DEVICE FOR DYNAMIC ALLOCATION OF LIMITED AVAILABILITY |
USRE44685E1 (en) * | 1994-04-28 | 2013-12-31 | Opentv, Inc. | Apparatus for transmitting and receiving executable applications as for a multimedia system, and method and system to order an item using a distributed computing system |
TW374283B (en) * | 1994-05-25 | 1999-11-11 | Sony Corp | A multiple coding device |
JP3332580B2 (en) * | 1994-06-14 | 2002-10-07 | キヤノン株式会社 | Image reproducing apparatus and image reproducing method |
US5477110A (en) * | 1994-06-30 | 1995-12-19 | Motorola | Method of controlling a field emission device |
JPH0877002A (en) * | 1994-08-31 | 1996-03-22 | Sony Corp | Parallel processor device |
US5926205A (en) * | 1994-10-19 | 1999-07-20 | Imedia Corporation | Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program |
DE69515337T2 (en) | 1994-12-23 | 2000-08-24 | Imedia Corp | Providing video recorder trick functions in a video distribution system |
US5606369A (en) * | 1994-12-28 | 1997-02-25 | U.S. Philips Corporation | Buffering for digital video signal encoders using joint bit-rate control |
EP0756800B1 (en) * | 1995-02-22 | 2000-05-10 | Koninklijke Philips Electronics N.V. | System for transmitting a plurality of video programs simultaneously through a transmission channel |
US5734677A (en) * | 1995-03-15 | 1998-03-31 | The Chinese University Of Hong Kong | Method for compression of loss-tolerant video image data from multiple sources |
US5675732A (en) * | 1995-05-08 | 1997-10-07 | Lucent Technologies Inc. | Dynamic channel assignment for TCP/IP data transmitted via cable television channels by managing the channels as a single sub network |
US5621463A (en) * | 1995-05-16 | 1997-04-15 | Thomson Multimedia S.A. | Easily expandable transport stream encoder |
US5574505A (en) * | 1995-05-16 | 1996-11-12 | Thomson Multimedia S.A. | Method and apparatus for operating a transport stream encoder to produce a stream of packets carrying data representing a plurality of component signals |
US6026176A (en) | 1995-07-25 | 2000-02-15 | Cognex Corporation | Machine vision methods and articles of manufacture for ball grid array inspection |
US5835495A (en) * | 1995-10-11 | 1998-11-10 | Microsoft Corporation | System and method for scaleable streamed audio transmission over a network |
US5877812A (en) * | 1995-11-21 | 1999-03-02 | Imedia Corporation | Method and apparatus for increasing channel utilization for digital video transmission |
US5862140A (en) * | 1995-11-21 | 1999-01-19 | Imedia Corporation | Method and apparatus for multiplexing video programs for improved channel utilization |
US5956088A (en) * | 1995-11-21 | 1999-09-21 | Imedia Corporation | Method and apparatus for modifying encoded digital video for improved channel utilization |
US5784571A (en) * | 1995-12-14 | 1998-07-21 | Minerva Systems, Inc. | Method for reducing the bandwidth requirement in a system including a video decoder and a video encoder |
US5861919A (en) * | 1995-12-18 | 1999-01-19 | Divicom | Dynamic rate optimization for an ensemble of video encoders |
US5729292A (en) * | 1995-12-21 | 1998-03-17 | Thomson Multimedia, S.A. | Optimizing performance in a packet slot priority packet transport system |
US5872870A (en) * | 1996-02-16 | 1999-02-16 | Cognex Corporation | Machine vision methods for identifying extrema of objects in rotated reference frames |
US6189030B1 (en) * | 1996-02-21 | 2001-02-13 | Infoseek Corporation | Method and apparatus for redirection of server external hyper-link references |
US5909504A (en) * | 1996-03-15 | 1999-06-01 | Cognex Corporation | Method of testing a machine vision inspection system |
US6298149B1 (en) | 1996-03-21 | 2001-10-02 | Cognex Corporation | Semiconductor device image inspection with contrast enhancement |
US6259827B1 (en) | 1996-03-21 | 2001-07-10 | Cognex Corporation | Machine vision methods for enhancing the contrast between an object and its background using multiple on-axis images |
US5978502A (en) * | 1996-04-01 | 1999-11-02 | Cognex Corporation | Machine vision methods for determining characteristics of three-dimensional objects |
US5832300A (en) * | 1996-06-20 | 1998-11-03 | Intel Corporation | System for maintaining a minimum level of digitized data signal quality while allowing bandwidth dependent quality enhancement with additional enhancement data packets |
JPH1032815A (en) * | 1996-07-16 | 1998-02-03 | Toshiba Corp | Image compositing device |
US5793425A (en) * | 1996-09-13 | 1998-08-11 | Philips Electronics North America Corporation | Method and apparatus for dynamically controlling encoding parameters of multiple encoders in a multiplexed system |
US5864557A (en) * | 1996-09-25 | 1999-01-26 | Thomson Multimedia S.A. | Method and apparatus for opportunistically transferring data in a packet stream encoder |
US6137893A (en) * | 1996-10-07 | 2000-10-24 | Cognex Corporation | Machine vision calibration targets and methods of determining their location and orientation in an image |
US5960125A (en) | 1996-11-21 | 1999-09-28 | Cognex Corporation | Nonfeedback-based machine vision method for determining a calibration relationship between a camera and a moveable object |
US6243417B1 (en) * | 1996-12-12 | 2001-06-05 | Sony Corporation | Device and method for encoding image data, and image data transmission method |
US6038256A (en) | 1996-12-31 | 2000-03-14 | C-Cube Microsystems Inc. | Statistical multiplexed video encoding using pre-encoding a priori statistics and a priori and a posteriori statistics |
US5953130A (en) * | 1997-01-06 | 1999-09-14 | Cognex Corporation | Machine vision methods and apparatus for machine vision illumination of an object |
US6091455A (en) * | 1997-01-31 | 2000-07-18 | Hughes Electronics Corporation | Statistical multiplexer for recording video |
US6084910A (en) * | 1997-01-31 | 2000-07-04 | Hughes Electronics Corporation | Statistical multiplexer for video signals |
US6097435A (en) * | 1997-01-31 | 2000-08-01 | Hughes Electronics Corporation | Video system with selectable bit rate reduction |
US6005620A (en) * | 1997-01-31 | 1999-12-21 | Hughes Electronics Corporation | Statistical multiplexer for live and pre-compressed video |
US6078958A (en) * | 1997-01-31 | 2000-06-20 | Hughes Electronics Corporation | System for allocating available bandwidth of a concentrated media output |
US6188436B1 (en) | 1997-01-31 | 2001-02-13 | Hughes Electronics Corporation | Video broadcast system with video data shifting |
US6075881A (en) * | 1997-03-18 | 2000-06-13 | Cognex Corporation | Machine vision methods for identifying collinear sets of points from an image |
US5974169A (en) * | 1997-03-20 | 1999-10-26 | Cognex Corporation | Machine vision methods for determining characteristics of an object using boundary points and bounding regions |
US6032193A (en) * | 1997-03-20 | 2000-02-29 | Niobrara Research And Development Corporation | Computer system having virtual circuit address altered by local computer to switch to different physical data link to increase data transmission bandwidth |
US6240103B1 (en) | 1997-03-21 | 2001-05-29 | Scientific-Atlanta, Inc. | Method and apparatus for detecting and preventing bandwidth overflow in a statistical multiplexer |
US6418122B1 (en) * | 1997-03-21 | 2002-07-09 | Scientific-Atlanta, Inc. | Method and apparatus for assuring sufficient bandwidth of a statistical multiplexer |
US6098123A (en) * | 1997-05-08 | 2000-08-01 | International Business Machines Corporation | Method and apparatus for dynamic allocation of bandwidth to/from network adapter memory amongst active input/output ports |
US6141033A (en) * | 1997-05-15 | 2000-10-31 | Cognex Corporation | Bandwidth reduction of multichannel images for machine vision |
US6542481B2 (en) | 1998-06-01 | 2003-04-01 | Tantivy Communications, Inc. | Dynamic bandwidth allocation for multiple access communication using session queues |
US6236647B1 (en) | 1998-02-24 | 2001-05-22 | Tantivy Communications, Inc. | Dynamic frame size adjustment and selective reject on a multi-link channel to improve effective throughput and bit error rate |
US6081536A (en) | 1997-06-20 | 2000-06-27 | Tantivy Communications, Inc. | Dynamic bandwidth allocation to transmit a wireless protocol across a code division multiple access (CDMA) radio link |
US6151332A (en) | 1997-06-20 | 2000-11-21 | Tantivy Communications, Inc. | Protocol conversion and bandwidth reduction technique providing multiple nB+D ISDN basic rate interface links over a wireless code division multiple access communication system |
US6608647B1 (en) | 1997-06-24 | 2003-08-19 | Cognex Corporation | Methods and apparatus for charge coupled device image acquisition with independent integration and readout |
US5978080A (en) * | 1997-09-25 | 1999-11-02 | Cognex Corporation | Machine vision methods using feedback to determine an orientation, pixel width and pixel height of a field of view |
US6845107B1 (en) * | 1997-10-15 | 2005-01-18 | Sony Corporation | Video data multiplexer, video data multiplexing control method, method and apparatus for multiplexing encoded stream, and encoding method and apparatus |
US6208772B1 (en) | 1997-10-17 | 2001-03-27 | Acuity Imaging, Llc | Data processing system for logically adjacent data samples such as image data in a machine vision system |
WO1999022477A1 (en) * | 1997-10-24 | 1999-05-06 | The Trustees Of Columbia University In The City Of New York | Transmission control for minimizing congestion in digital communications networks |
US7394791B2 (en) * | 1997-12-17 | 2008-07-01 | Interdigital Technology Corporation | Multi-detection of heartbeat to reduce error probability |
US7936728B2 (en) | 1997-12-17 | 2011-05-03 | Tantivy Communications, Inc. | System and method for maintaining timing of synchronization messages over a reverse link of a CDMA wireless communication system |
US7496072B2 (en) * | 1997-12-17 | 2009-02-24 | Interdigital Technology Corporation | System and method for controlling signal strength over a reverse link of a CDMA wireless communication system |
US9525923B2 (en) | 1997-12-17 | 2016-12-20 | Intel Corporation | Multi-detection of heartbeat to reduce error probability |
US6222832B1 (en) | 1998-06-01 | 2001-04-24 | Tantivy Communications, Inc. | Fast Acquisition of traffic channels for a highly variable data rate reverse link of a CDMA wireless communication system |
US20040160910A1 (en) * | 1997-12-17 | 2004-08-19 | Tantivy Communications, Inc. | Dynamic bandwidth allocation to transmit a wireless protocol across a code division multiple access (CDMA) radio link |
US6157751A (en) * | 1997-12-30 | 2000-12-05 | Cognex Corporation | Method and apparatus for interleaving a parallel image processing memory |
US6307588B1 (en) | 1997-12-30 | 2001-10-23 | Cognex Corporation | Method and apparatus for address expansion in a parallel image processing memory |
US6025854A (en) * | 1997-12-31 | 2000-02-15 | Cognex Corporation | Method and apparatus for high speed image acquisition |
US5982395A (en) * | 1997-12-31 | 1999-11-09 | Cognex Corporation | Method and apparatus for parallel addressing of an image processing memory |
US6236769B1 (en) | 1998-01-28 | 2001-05-22 | Cognex Corporation | Machine vision systems and methods for morphological transformation of an image with zero or other uniform offsets |
US6282328B1 (en) | 1998-01-28 | 2001-08-28 | Cognex Corporation | Machine vision systems and methods for morphological transformation of an image with non-uniform offsets |
US6215915B1 (en) | 1998-02-20 | 2001-04-10 | Cognex Corporation | Image processing methods and apparatus for separable, general affine transformation of an image |
US6381375B1 (en) | 1998-02-20 | 2002-04-30 | Cognex Corporation | Methods and apparatus for generating a projection of an image |
US6208640B1 (en) | 1998-02-27 | 2001-03-27 | David Spell | Predictive bandwidth allocation method and apparatus |
AU764253B2 (en) * | 1998-03-26 | 2003-08-14 | Earth View Television & Datatransfer Gmbh | Device for multiplexing video signals |
US6859496B1 (en) * | 1998-05-29 | 2005-02-22 | International Business Machines Corporation | Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel |
US7773566B2 (en) | 1998-06-01 | 2010-08-10 | Tantivy Communications, Inc. | System and method for maintaining timing of synchronization messages over a reverse link of a CDMA wireless communication system |
US8134980B2 (en) | 1998-06-01 | 2012-03-13 | Ipr Licensing, Inc. | Transmittal of heartbeat signal at a lower level than heartbeat request |
US7221664B2 (en) * | 1998-06-01 | 2007-05-22 | Interdigital Technology Corporation | Transmittal of heartbeat signal at a lower level than heartbeat request |
EP0966164B1 (en) | 1998-06-18 | 2005-08-17 | Sony Corporation | Information transmitting apparatus and method, information receiving apparatus and method, apparatus for providing a computer readable program, and broadcasting system |
JP4427827B2 (en) * | 1998-07-15 | 2010-03-10 | ソニー株式会社 | Data processing method, data processing apparatus, and recording medium |
IL141104A0 (en) * | 1998-07-27 | 2002-02-10 | Webtv Networks Inc | Remote computer access |
US8189662B2 (en) * | 1999-07-27 | 2012-05-29 | Microsoft Corporation | Selection compression |
US7360230B1 (en) | 1998-07-27 | 2008-04-15 | Microsoft Corporation | Overlay management |
US6567117B1 (en) * | 1998-09-09 | 2003-05-20 | Nippon Telegraph And Telephone Corporation | Method for regulating image quality, picture communication equipment using same and recording medium having recorded therein a program for executing the method |
US6618363B1 (en) | 1998-10-09 | 2003-09-09 | Microsoft Corporation | Method for adapting video packet generation and transmission rates to available resources in a communications network |
US6445701B1 (en) * | 1998-10-09 | 2002-09-03 | Microsoft Corporation | Channel access scheme for use in network communications |
US6519004B1 (en) * | 1998-10-09 | 2003-02-11 | Microsoft Corporation | Method for transmitting video information over a communication channel |
US6289297B1 (en) | 1998-10-09 | 2001-09-11 | Microsoft Corporation | Method for reconstructing a video frame received from a video source over a communication channel |
US6754266B2 (en) | 1998-10-09 | 2004-06-22 | Microsoft Corporation | Method and apparatus for use in transmitting video information over a communication network |
US6385454B1 (en) | 1998-10-09 | 2002-05-07 | Microsoft Corporation | Apparatus and method for management of resources in cellular networks |
US6507587B1 (en) | 1998-10-09 | 2003-01-14 | Microsoft Corporation | Method of specifying the amount of bandwidth to reserve for use in network communications |
US6438136B1 (en) | 1998-10-09 | 2002-08-20 | Microsoft Corporation | Method for scheduling time slots in a communications network channel to support on-going video transmissions |
US6624761B2 (en) | 1998-12-11 | 2003-09-23 | Realtime Data, Llc | Content independent data compression method and system |
US6687402B1 (en) | 1998-12-18 | 2004-02-03 | Cognex Corporation | Machine vision methods and systems for boundary feature comparison of patterns and images |
US6381366B1 (en) | 1998-12-18 | 2002-04-30 | Cognex Corporation | Machine vision methods and system for boundary point-based comparison of patterns and images |
US7593380B1 (en) * | 1999-03-05 | 2009-09-22 | Ipr Licensing, Inc. | Variable rate forward error correction for enabling high performance communication |
US6973140B2 (en) | 1999-03-05 | 2005-12-06 | Ipr Licensing, Inc. | Maximizing data rate by adjusting codes and code rates in CDMA system |
US6785323B1 (en) * | 1999-11-22 | 2004-08-31 | Ipr Licensing, Inc. | Variable rate coding for forward link |
FR2790899B1 (en) * | 1999-03-09 | 2001-04-20 | Thomson Broadcast Systems | DEVICE AND METHOD FOR REGULATING THROUGHPUT IN A SYSTEM FOR STATISTICAL MULTIPLEXING OF STREAMS OF IMAGES CODED ACCORDING TO MPEG 2 CODING |
US6604158B1 (en) | 1999-03-11 | 2003-08-05 | Realtime Data, Llc | System and methods for accelerated data storage and retrieval |
US6601104B1 (en) | 1999-03-11 | 2003-07-29 | Realtime Data Llc | System and methods for accelerated data storage and retrieval |
US7086077B2 (en) * | 1999-04-01 | 2006-08-01 | Sedna Patent Services, Llc | Service rate change method and apparatus |
US6965778B1 (en) | 1999-04-08 | 2005-11-15 | Ipr Licensing, Inc. | Maintenance of channel usage in a wireless communication system |
US6614776B1 (en) | 1999-04-28 | 2003-09-02 | Tantivy Communications, Inc. | Forward error correction scheme for high rate data exchange in a wireless system |
US6526034B1 (en) * | 1999-09-21 | 2003-02-25 | Tantivy Communications, Inc. | Dual mode subscriber unit for short range, high rate and long range, lower rate data communications |
US6684402B1 (en) | 1999-12-01 | 2004-01-27 | Cognex Technology And Investment Corporation | Control methods and apparatus for coupling multiple image acquisition devices to a digital data processor |
EP1236357A2 (en) | 1999-12-09 | 2002-09-04 | Liberate Technologies, MoreCom Division, Inc. | Method and apparatus for two-way internet access over a catv network with channel tracking |
US20010047473A1 (en) | 2000-02-03 | 2001-11-29 | Realtime Data, Llc | Systems and methods for computer initialization |
WO2001058044A2 (en) | 2000-02-07 | 2001-08-09 | Tantivy Communications, Inc. | Minimal maintenance link to support synchronization |
US6674796B1 (en) * | 2000-02-14 | 2004-01-06 | Harmonic, Inc. | Statistical multiplexed video encoding for diverse video formats |
US6748104B1 (en) | 2000-03-24 | 2004-06-08 | Cognex Corporation | Methods and apparatus for machine vision inspection using single and multiple templates or patterns |
JP2001346201A (en) * | 2000-03-27 | 2001-12-14 | Sony Corp | Image coder and its method, image decoder and its method, image recorder, image transmitter |
JP2002112326A (en) * | 2000-10-02 | 2002-04-12 | Ntt Docomo Inc | Wireless resource assigning method and base station unit |
US7417568B2 (en) | 2000-10-03 | 2008-08-26 | Realtime Data Llc | System and method for data feed acceleration and encryption |
US9143546B2 (en) | 2000-10-03 | 2015-09-22 | Realtime Data Llc | System and method for data feed acceleration and encryption |
US8692695B2 (en) | 2000-10-03 | 2014-04-08 | Realtime Data, Llc | Methods for encoding and decoding data |
ES2611489T3 (en) * | 2000-11-16 | 2017-05-09 | Sony Corporation | Information processing device and communication device |
US8155096B1 (en) | 2000-12-01 | 2012-04-10 | Ipr Licensing Inc. | Antenna control system and method |
US7006669B1 (en) | 2000-12-31 | 2006-02-28 | Cognex Corporation | Machine vision method and apparatus for thresholding images of non-uniform materials |
US7551663B1 (en) | 2001-02-01 | 2009-06-23 | Ipr Licensing, Inc. | Use of correlation combination to achieve channel detection |
US6954448B2 (en) | 2001-02-01 | 2005-10-11 | Ipr Licensing, Inc. | Alternate channel for carrying selected message types |
US7386046B2 (en) | 2001-02-13 | 2008-06-10 | Realtime Data Llc | Bandwidth sensitive data compression and decompression |
FR2823049B1 (en) * | 2001-03-29 | 2003-06-06 | Nextream Sa | METHOD AND DEVICE FOR CONTROLLING THE QUALITY OF VIDEO DATA |
SG185139A1 (en) | 2001-06-13 | 2012-11-29 | Ipr Licensing Inc | Transmittal of heartbeat signal at a lower level than heartbeat request |
US7072393B2 (en) * | 2001-06-25 | 2006-07-04 | International Business Machines Corporation | Multiple parallel encoders and statistical analysis thereof for encoding a video sequence |
US20030007516A1 (en) * | 2001-07-06 | 2003-01-09 | Yuri Abramov | System and method for the application of a statistical multiplexing algorithm for video encoding |
US6914936B1 (en) * | 2001-07-19 | 2005-07-05 | Bigband Networks, Inc. | Method for allocating media unit sequences among a plurality of output channels |
US7793326B2 (en) | 2001-08-03 | 2010-09-07 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US7908628B2 (en) | 2001-08-03 | 2011-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
US20030070174A1 (en) * | 2001-10-09 | 2003-04-10 | Merrill Solomon | Wireless video-on-demand system |
US7738551B2 (en) * | 2002-03-18 | 2010-06-15 | International Business Machines Corporation | System and method for processing a high definition television (HDTV) image |
US7965837B2 (en) * | 2003-04-30 | 2011-06-21 | Sony Corporation | Method and system for wireless digital video presentation |
US20050062888A1 (en) * | 2003-09-19 | 2005-03-24 | Wood Anthony John | Apparatus and method for presentation of portably-stored content on an high-definition display |
US7562379B2 (en) * | 2003-12-22 | 2009-07-14 | Sony Corporation | Method and system for wireless digital multimedia presentation |
GB0428160D0 (en) * | 2004-12-22 | 2005-01-26 | British Telecomm | Variable bit rate processing |
US8107540B2 (en) * | 2005-07-11 | 2012-01-31 | Cheetah Technologies, L.P. | Image complexity computation in packet based video broadcast systems |
KR101045205B1 (en) * | 2005-07-12 | 2011-06-30 | 삼성전자주식회사 | Apparatus and method for encoding and decoding of image data |
KR100813258B1 (en) * | 2005-07-12 | 2008-03-13 | 삼성전자주식회사 | Apparatus and method for encoding and decoding of image data |
US7639861B2 (en) | 2005-09-14 | 2009-12-29 | Cognex Technology And Investment Corporation | Method and apparatus for backlighting a wafer during alignment |
US8111904B2 (en) | 2005-10-07 | 2012-02-07 | Cognex Technology And Investment Corp. | Methods and apparatus for practical 3D vision system |
NO20055945A (en) | 2005-12-14 | 2007-06-11 | Leif Melvin Nettum | Building element with insulation |
US7756136B2 (en) * | 2006-07-10 | 2010-07-13 | Cheetah Technologies, L.P. | Spatial and temporal loss determination in packet based video broadcast system in an encrypted environment |
US8162584B2 (en) | 2006-08-23 | 2012-04-24 | Cognex Corporation | Method and apparatus for semiconductor wafer alignment |
US20090110281A1 (en) * | 2007-10-29 | 2009-04-30 | Kabushiki Kaisha Toshiba | Image forming apparatus, image processing apparatus, and image processing method |
US9327193B2 (en) * | 2008-06-27 | 2016-05-03 | Microsoft Technology Licensing, Llc | Dynamic selection of voice quality over a wireless system |
US8648932B2 (en) * | 2009-08-13 | 2014-02-11 | Olive Medical Corporation | System, apparatus and methods for providing a single use imaging device for sterile environments |
CN102823232A (en) | 2010-03-25 | 2012-12-12 | 橄榄医疗公司 | System and method for providing a single use imaging device for medical applications |
KR101942337B1 (en) | 2011-05-12 | 2019-01-25 | 디퍼이 신테스 프로덕츠, 인코포레이티드 | Pixel array area optimization using stacking scheme for hybrid image sensor with minimal vertical interconnects |
BR112015001369A2 (en) | 2012-07-26 | 2017-07-04 | Olive Medical Corp | CMOS Minimum Area Monolithic Image Sensor Camera System |
US10517469B2 (en) | 2013-03-15 | 2019-12-31 | DePuy Synthes Products, Inc. | Image sensor synchronization without input clock and data transmission clock |
CA2906975A1 (en) | 2013-03-15 | 2014-09-18 | Olive Medical Corporation | Minimize image sensor i/o and conductor counts in endoscope applications |
US9280422B2 (en) | 2013-09-06 | 2016-03-08 | Seagate Technology Llc | Dynamic distribution of code words among multiple decoders |
US9323584B2 (en) | 2013-09-06 | 2016-04-26 | Seagate Technology Llc | Load adaptive data recovery pipeline |
US10944974B2 (en) | 2017-01-11 | 2021-03-09 | Raytheon Company | Method for encoding and processing raw UHD video via an existing HD video architecture |
US11190724B2 (en) | 2017-03-10 | 2021-11-30 | Raytheon Company | Adaptive bitrate streaming of UHD image data |
US11343551B1 (en) * | 2019-07-23 | 2022-05-24 | Amazon Technologies, Inc. | Bandwidth estimation for video streams |
CN114786011B (en) * | 2022-06-22 | 2022-11-15 | 苏州浪潮智能科技有限公司 | JPEG image compression method, system, equipment and storage medium |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4455649A (en) * | 1982-01-15 | 1984-06-19 | International Business Machines Corporation | Method and apparatus for efficient statistical multiplexing of voice and data signals |
IT1155557B (en) * | 1982-07-19 | 1987-01-28 | Cselt Centro Studi Lab Telecom | METHOD AND DEVICE FOR THE CODING OF THE SIGNAL OF IMAGE WITH REDUCTION OF DISTORTION REDUNDANCY LOCALLY UNIFORM |
EP0112953B1 (en) * | 1982-12-28 | 1987-04-08 | International Business Machines Corporation | Method of dynamic assignment of speeds in a multiplex transmission system |
US4638476A (en) * | 1985-06-21 | 1987-01-20 | At&T Bell Laboratories | Technique for dynamic resource allocation in a communication system |
DE3750853T2 (en) * | 1986-01-27 | 1995-05-18 | Fuji Photo Film Co Ltd | Method for coding image signals by means of orthogonal transformation. |
JP2745301B2 (en) * | 1986-04-18 | 1998-04-28 | 富士写真フイルム株式会社 | Orthogonal transform coding method for image data |
DE3613343A1 (en) * | 1986-04-19 | 1987-10-22 | Philips Patentverwaltung | HYBRID CODERS |
EP0330455A3 (en) * | 1988-02-22 | 1990-07-04 | Kabushiki Kaisha Toshiba | Image encoding apparatus |
NL8800988A (en) * | 1988-04-15 | 1989-11-01 | Philips Nv | SYSTEM FOR TRANSMISSION OF VIDEO SIGNALS WITH ADAPTIVE CODEWORD ALLOCATION, AND TRANSMITTER AND RECEIVER SUITABLE FOR THE SYSTEM. |
NL8801155A (en) * | 1988-05-03 | 1989-12-01 | Philips Nv | TELEVISION TRANSMISSION SYSTEM WITH HYBRID CODING. |
FR2633133B1 (en) * | 1988-06-17 | 1990-10-05 | Thomson Csf | METHOD FOR CONTROLLING THE FILLING OF THE BUFFER MEMORY OF AN IMAGE ENCODER, AND CONTROLLING DEVICE FOR CARRYING OUT SAID METHOD |
US4984076A (en) * | 1988-07-27 | 1991-01-08 | Kabushiki Kaisha Toshiba | Image compression coding system |
US5038209A (en) * | 1990-09-27 | 1991-08-06 | At&T Bell Laboratories | Adaptive buffer/quantizer control for transform video coders |
-
1990
- 1990-09-10 US US07/580,412 patent/US5115309A/en not_active Expired - Lifetime
-
1991
- 1991-08-26 CA CA002049692A patent/CA2049692C/en not_active Expired - Fee Related
- 1991-09-03 EP EP91308073A patent/EP0479432B1/en not_active Expired - Lifetime
- 1991-09-03 DE DE69118639T patent/DE69118639T2/en not_active Expired - Fee Related
- 1991-09-06 KR KR1019910015563A patent/KR950004111B1/en not_active IP Right Cessation
- 1991-09-09 JP JP3255952A patent/JP2504880B2/en not_active Expired - Fee Related
-
1996
- 1996-08-01 HK HK146296A patent/HK146296A/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP2504880B2 (en) | 1996-06-05 |
DE69118639T2 (en) | 1996-11-07 |
KR920007470A (en) | 1992-04-28 |
CA2049692A1 (en) | 1992-03-10 |
EP0479432A3 (en) | 1993-01-27 |
KR950004111B1 (en) | 1995-04-25 |
HK146296A (en) | 1996-08-09 |
EP0479432B1 (en) | 1996-04-10 |
US5115309A (en) | 1992-05-19 |
DE69118639D1 (en) | 1996-05-15 |
EP0479432A2 (en) | 1992-04-08 |
JPH0723347A (en) | 1995-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2049692C (en) | Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders | |
US6008848A (en) | Video compression using multiple computing agents | |
US6055270A (en) | Multiplexer system using constant bit rate encoders | |
US5629736A (en) | Coded domain picture composition for multimedia communications systems | |
KR100382136B1 (en) | Digital video compression multiplex encoder for constant bit rate transmission | |
DE4233543B4 (en) | Device for controlling the quantization of video data | |
US6259733B1 (en) | Pre-processing of bit rate allocation in a multi-channel video encoder | |
US4369464A (en) | Digital video signal encoding and decoding system | |
AU681545B2 (en) | Method and device for determining bit allocation in a video compression system | |
CA2055047A1 (en) | Hdtv encoder with forward estimation and constant rate motion vectors | |
KR100314329B1 (en) | Multiplexer Using Constant Bit Rate Encoder | |
EP0615359A2 (en) | Method and apparatus for transmission and reception of a digital signal with stuffing | |
US5933450A (en) | Complexity determining apparatus | |
EP0761048B1 (en) | A system for dynamically allocating a scarce resource | |
KR100340827B1 (en) | Complexity determining apparatus | |
EP0756790B1 (en) | Asynchronous control signal generating apparatus | |
US20040070688A1 (en) | Method of video transmission over a synchronous transmission technology network | |
JP3028828B2 (en) | Video encoding device and multipoint connection device in multipoint video transmission system | |
KR100337104B1 (en) | Parameter sampling apparatus | |
KR19980057214A (en) | Quadtree Coding Method | |
Blake | Optimized two-layer DCT-based video compression algorithm for packet-switched network transmission | |
JPH04354493A (en) | Color picture split compression coding system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |