Dynamic bit allocation for statistical multiplexing of compressed and uncompressed digital video signals
First Claim
1. A bit allocation method for digital video, comprising the steps of:
- providing a plurality L of video programs at an encoder, each program having successive groups of pictures (GOPs);
each GOP having an associated number of pictures;
providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures;
calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;
wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point;
defining a respective complexity measure for each picture type in each lth program;
calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L;
calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; and
providing respective weighting factors, w, for the different video programs according to a relative priority thereof;
wherein;
said third target number of bits for encoding each lth picture in the associated nth super frame is calculated according to the respective weighting factor of the associated lth video program.
7 Assignments
0 Petitions
Accused Products
Abstract
The present invention relates to a method and apparatus for allocating bits in a statistical multiplexing system (stat mux). A statistical multiplexer (stat mux) accommodates both compressed and uncompressed video programs using transcoding and encoding, respectively. Hierarchical dynamic bit allocation is used, starting from a super GOP level, then to a super frame level, and then to the regular (individual) frame level. At each level, a target number of bits is determined. A target number of bits for a super frame, which is a collection of frames across all channels at a given frame instance, is adaptive and is able to address any combination of picture types. Frames of the same picture type for a program are generally assigned the same (or similar) number of bits. Relative program quality can be controlled using a program priority weighting factor. Additionally, constraints on target bit rates and minimum and maximum bit rates are provided.
-
Citations
18 Claims
-
1. A bit allocation method for digital video, comprising the steps of:
-
providing a plurality L of video programs at an encoder, each program having successive groups of pictures (GOPs); each GOP having an associated number of pictures; providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; defining a respective complexity measure for each picture type in each lth program; calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; and providing respective weighting factors, w, for the different video programs according to a relative priority thereof;
wherein;said third target number of bits for encoding each lth picture in the associated nth super frame is calculated according to the respective weighting factor of the associated lth video program.
-
-
2. A bit allocation method for digital video, comprising the steps of:
-
providing a plurality L of video programs at an encoder, each program having successive groups of pictures (GOPs); at least one of said video programs comprising uncompressed video data; each GOP having an associated number of pictures; processing pre-compressed picture data to obtain partially uncompressed data of at least a particular one of said plurality L of video programs; providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; defining a respective complexity measure for each picture type in each lth program; calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; and calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame;
wherein;said pre-compressed picture data is transcoded such that a bit rate of said pre-compressed picture data is different than a bit rate provided by the associated third target number of bits.
-
-
3. A bit allocation method for digital video, comprising the steps of:
-
providing a plurality L of video programs at an encoder, each program having successive groups of pictures (GOPs); wherein a buffer associated with said encoder receives encoded data from the video programs, each GOP having an associated number of pictures; providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; defining a respective complexity measure for each picture type in each lth program; calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; and prior to encoding the nth super frame with the associated second target number of bits, at least one of the steps of; (a) adjusting the associated second target number of bits, if necessary, to avoid falling below Rchannel(bpf) -Ben-1, wherein; Rchannel(bpf) is an average number of bits per picture transmitted over said channel; and Ben-1 is a fullness level of said buffer after the n-1st super frame has been encoded; and (b) adjusting the associated second target number of bits, if necessary, to avoid exceeding Rchannel(bpf) +Bemax -Ben-1 ; wherein Bemax is a maximum capacity of said buffer.
-
-
4. A bit allocation method for digital video, comprising the steps of:
-
providing a plurality L of video programs at an encoder, each program having successive groups of pictures (GOPs); wherein a buffer associated with said encoder receives encoded data from the video programs, and the video programs are transmitted over a channel to a decoder and stored in a buffer thereat; each GOP having an associated number of pictures; providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of said channel;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; defining a respective complexity measure for each picture type in each lth program; calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each 1th picture in the associated nth super frame, where l=1, . . . , L; calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; and prior to encoding the lth picture in the nth super frame with the associated third target number of bits, at least one of the steps of; (a) adjusting the associated third target number of bits, if necessary, to avoid falling below ##EQU31## wherein;
##EQU32## is a sum of the number of bits transmitted for the nth through (n+N'"'"')th pictures for the lth video program;N'"'"' is a decoding delay of said decoder; Bel,n-1 is a fullness level of the encoder'"'"'s buffer after the lth picture in the n-1st super frame has been encoded; and
Bdmax is a maximum capacity of the decoder'"'"'s buffer; and(b) adjusting the associated third target number of bits, if necessary, to avoid exceeding ##EQU33##
-
-
5. A bit allocation method for digital video, comprising the steps of:
- providing a plurality L of video programs at an encoder, each program having successive groups of pictures (GOPs);
each GOP having an associated number of pictures; providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; defining a respective complexity measure for each picture type in each lth program; calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; wherein Rmin is a minimum average number of bits for encoding N">
1 pictures; andprior to encoding the lth picture in the nth super frame with the associated third target number of bits, at least one of the steps of; (a) adjusting the associated third target number of bits, if necessary, to avoid falling below ##EQU34## wherein;
##EQU35## is a sum of the number of bits transmitted for the (n-N")th through (n-1)th pictures for the lth video program; and(b) adjusting the associated third target number of bits, if necessary, to avoid exceeding ##EQU36## wherein Rmax is a maximum average number of bits for encoding N">
1 pictures.
- providing a plurality L of video programs at an encoder, each program having successive groups of pictures (GOPs);
-
6. A method for encoding at least one program of uncompressed video source data, and transcoding at least one other program of pre-compressed video source data, comprising the steps of:
-
partially decompressing the pre-compressed video source data from the at least one other program to obtain corresponding partially uncompressed video data; allocating bits for encoding said uncompressed video source data from the at least one program according to a statistical multiplexing scheme; and allocating bits for transcoding said partially uncompressed video data from the at least one other program according to said statistical multiplexing scheme; wherein said pre-compressed picture data is transcoded such that a bit rate of said pre-compressed picture data is different than a bit rate provided by the associated allocated bits.
-
-
7. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, comprising:
-
means for providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; means for calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; means for defining a respective complexity measure for each picture type in each lth program; means for calculating a second target number of bits for encoding each nth super frame of pictures, where n=l,..., N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where means for calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; and means for providing respective weighting factors, w, for the different video programs according to a relative priority thereof;
wherein;said third target number of bits for encoding each lth picture in the associated nth super frame is calculated according to the respective weighting factor of the associated lth video program.
-
-
8. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), each GOP has an associated number of pictures, and at least one of said video programs comprises uncompressed video data, comprising:
-
means for processing pre-compressed picture data to obtain partially uncompressed data of at least a particular one of said plurality L of video programs; means for providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; means for calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; means for defining a respective complexity measure for each picture type in each lth program; means for calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; and means for calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits-and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame;
wherein;said pre-compressed picture data is transcoded such that a bit rate of said pre-compressed picture data is different than a bit rate provided by the associated third target number of bits.
-
-
9. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, and wherein a buffer associated with said encoder receives encoded data from the video programs, comprising:
-
means for providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; means for calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; means for defining a respective complexity measure for each picture type in each lth program; means for calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; means for calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; and at least one of; (a) means for adjusting the associated second target number of bits, if necessary, to avoid falling below Rchannel(bpf) -Ben-1, prior to the nth super frame being encoded with the associated second target number of bits, wherein; Rchannel(bpf) is an average number of bits per picture transmitted over said channel; and Ben-1 is a fullness level of said buffer after the n-1st super frame has been encoded; and (b) means for adjusting the associated second target number of bits, if necessary, to avoid exceeding Rchannel(bpf) +Bemax -Ben-1, prior to the nth super frame being encoded with the associated second target number of bits; wherein Bemax is a maximum capacity of said buffer.
-
-
10. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, and wherein a buffer associated with said encoder receives encoded data from the video programs, and the video programs are transmitted over a channel to a decoder and stored in a buffer thereat, comprising:
-
means for providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; means for calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of said channel;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; means for defining a respective complexity measure for each picture type in each lth program; means for calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; means for calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; and
at least one of;(a) means for adjusting the associated third target number of bits, if necessary, to avoid falling below ##EQU37## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits, wherein;
##EQU38## is a sum of the number of bits transmitted for the nth through (n+N'"'"')th pictures for the lth video program;N'"'"' is a decoding delay of said decoder; Bel,n-1 is a fullness level of the encoder'"'"'s buffer after the lth picture in the n-1st super frame has been encoded; and Bdmax is a maximum capacity of the decoder'"'"'s buffer; and (b) means for adjusting the associated third target number of bits, if necessary, to avoid exceeding ##EQU39## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits.
-
-
11. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, comprising:
-
means for providing a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; means for calculating a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;wherein each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; means for defining a respective complexity measure for each picture type in each lth program; means for calculating a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; means for calculating a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity measure, and a sum of the complexity measures for each picture in the associated nth super frame; wherein Rmin is a minimum average number of bits for encoding N">
1 pictures; andat least one of; (a) means for adjusting the associated third target number of bits, if necessary, to avoid falling below ##EQU40## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits, wherein;
##EQU41## is a sum of the number of bits transmitted for the (n-N")th through (n-1)th pictures for the lth video program; and(b) means for adjusting the associated third target number of bits, if necessary, to avoid exceeding ##EQU42## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits; wherein Rmax is a maximum average number of bits for encoding N">
1 pictures.
-
-
12. An apparatus for encoding at least one program of uncompressed video source data, and transcoding at least one other program of pre-compressed video source data, comprising:
-
means for partially decompressing the pre-compressed video source data from the at least one other program to obtain corresponding partially uncompressed video data; means for allocating bits for encoding said uncompressed video source data from the at least one program according to a statistical multiplexing scheme; and means for allocating bits for transcoding said partially uncompressed video data from the at least one other program according to said statistical multiplexing scheme; wherein said pre-compressed picture data is transcoded such that a bit rate of said pre-compressed picture data is different than a bit rate provided by the associated allocated bits.
-
-
13. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, comprising:
-
a rate control processor; a super GOP processor, a super frame processor, a frame processor, and a complexity processor, each of which is associated with said rate control processor;
wherein;said rate control processor is responsive to a signal defining a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; said super GOP processor is adapted to calculate a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; said complexity processor is adapted to calculate a respective complexity measure for each picture type in each lth program; said super frame processor is adapted to calculate a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the associated complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; said frame processor is adapted to calculate a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity, and a sum of the complexity measures for each picture in the associated nth super frame; said rate control processor provides respective weighting factors, w, for the different video programs according to a relative priority thereof; and said frame processor is adapted to calculate said third target number of bits for encoding each lth picture in the associated nth super frame according to the respective weighting factor of the associated lth video program.
-
-
14. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), each GOP has an associated number of pictures, and at least one of said video programs comprises uncompressed video data, comprising:
-
a transcoding processor for processing pre-compressed picture data to obtain partially uncompressed data of at least a particular one of said plurality L of video programs; a rate control processor; a super GOP processor, a super frame processor, a frame processor, and a complexity processor, each of which is associated with said rate control processor;
wherein;said rate control processor is responsive to a signal defining a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; said super GOP processor is adapted to calculate a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; said complexity processor is adapted to calculate a respective complexity measure for each picture type in each lth program; said super frame processor is adapted to calculate a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the associated complexity measure of each lth picture in the associated nt super frame, where l=1, . . . , L; said frame processor is adapted to calculate a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity, and a sum of the complexity measures for each picture in the associated nth super frame; and said pre-compressed picture data is transcoded such that a bit rate of said pre-compressed picture data is different than a bit rate provided by the associated third target number of bits.
-
-
15. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, comprising:
-
a rate control processor; a super GOP processor, a super frame processor, a frame processor, and a complexity processor, each of which is associated with said rate control processor;
wherein;said rate control processor is responsive to a signal defining a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; said super GOP processor is adapted to calculate a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; said complexity processor is adapted to calculate a respective complexity measure for each picture type in each 1 th program; said super frame processor is adapted to calculate a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the associated complexity measure of each lth picture in the associated nth super frame, where l=1, . . , L; said frame processor is adapted to calculate a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity, and a sum of the complexity measures for each picture in the associated nth super frame; a buffer associated with said encoder receives encoded data from the video programs; said super frame processor receives a signal indicative of a fullness level of said buffer; wherein at least one of; (a) said super frame processor is adapted to adjust the associated second target number of bits, if necessary, to avoid falling below Rchannel(bpf) -Ben-1 prior to the nth super frame being encoded with the associated second target number of bits; Rchannel(bpf) is an average number of bits per picture transmitted over said channel; and Ben-1 is the fullness level of said buffer after the n-1st super frame has been encoded; and (b) said super frame processor is adapted to adjust the associated second target number of bits, if necessary, to avoid exceeding Rchannel(bpf) +Bemax -Ben-1 prior to the nth super frame being encoded with the associated second target number of bits; wherein Bemax is a maximum capacity of said buffer.
-
-
16. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, comprising:
-
a rate control processor; a super GOP processor, a super frame processor, a frame processor, and a complexity processor, each of which is associated with said rate control processor;
wherein;said rate control processor is responsive to a signal defining a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; said super GOP processor is adapted to calculate a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; said complexity processor is adapted to calculate a respective complexity measure for each picture type in each lth program; said super frame processor is adapted to calculate a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the associated complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; said frame processor is adapted to calculate a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity, and a sum of the complexity measures for each picture in the associated nth super frame; a buffer associated with said encoder receives encoded data from the video programs, and the video programs are transmitted over said channel to a decoder and stored in a buffer thereat; said frame processor receives a signal indicative of a fullness level of the encoder buffer; wherein at least one of; (a) said frame processor is adapted to adjust the associated third target number of bits, if necessary, to avoid falling below ##EQU43## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits;
##EQU44## is a sum of the number of bits transmitted for the nth through (n+N'"'"')th pictures for the lth video program;N'"'"' is a decoding delay of said decoder; B1,n-1e is a fullness level of the encoder'"'"'s buffer after the lth picture in the n-1st super frame has been encoded; and
Bdmax is a maximum capacity of the decoder'"'"'s buffer; and(b) said frame processor is adapted to adjust the associated third target number of bits, if necessary, to avoid exceeding ##EQU45## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits.
-
-
17. A bit allocation apparatus for digital video, wherein a plurality L of video programs are provided at an encoder, each program has successive groups of pictures (GOPs), and each GOP has an associated number of pictures, comprising:
-
a rate control processor; a super GOP processor, a super frame processor, a frame processor, and a complexity processor, each of which is associated with said rate control processor;
wherein;said rate control processor is responsive to a signal defining a super GOP comprising at least one GOP from each of said L video programs, and having a length of N pictures; said super GOP processor is adapted to calculate a first target number of bits, T, for encoding said super GOP according to the number of pictures in said super GOP, L×
N, and an available capacity of a channel over which the video programs are transmitted;each super GOP comprises a plurality N of super frames, each super frame having L pictures at a common temporal reference point; said complexity processor is adapted to calculate a respective complexity measure for each picture type in each lth program; said super frame processor is adapted to calculate a second target number of bits for encoding each nth super frame of pictures, where n=1, . . . , N, according to said first target number of bits, T, and the associated complexity measure of each lth picture in the associated nth super frame, where l=1, . . . , L; said frame processor is adapted to calculate a third target number of bits for encoding each lth picture in the associated nth super frame according to said second target number of bits and the associated complexity, and a sum of the complexity measures for each picture in the associated nth super frame; Rmin is a minimum average number of bits for encoding N">
1 pictures;wherein at least one of; (a) said frame processor is adapted to adjust the associated third target number of bits, if necessary, to avoid falling below ##EQU46## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits; and
##EQU47## is a sum of the number of bits transmitted for the (n-N")th through (n-1)th pictures for the lth video program; and(b) said frame processor is adapted to adjust the associated third target number of bits, if necessary, to avoid exceeding ##EQU48## prior to the lth picture in the nth super frame being encoded with the associated third target number of bits; wherein Rmax is a maximum average number of bits for encoding N">
1 pictures.
-
-
18. An apparatus for encoding at least one program of uncompressed video source data, and transcoding at least one other program of pre-compressed video source data, comprising:
-
an encoder; a transcoder; a rate control processor associated with said encoder and transcoder;
wherein;said transcoder partially decompresses the pre-compressed video source data from the at least one other program to obtain corresponding partially uncompressed video data; said rate control processor allocates bits to said encoder for encoding said uncompressed video source data from the at least one program according to a statistical multiplexing scheme; said rate control processor allocates bits to said transcoder for transcoding said partially uncompressed video data from the at least one other program according to said statistical multiplexing scheme; and said pre-compressed picture data is transcoded such that a bit rate of said pre-compressed picture data is different than a bit rate provided by the associated allocated bits.
-
Specification