added MJPEG decoder + comments
Originally committed as revision 35 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
10b7b472d9
commit
4e66ab3bab
@ -111,6 +111,7 @@ extern AVCodec msmpeg4_decoder;
|
|||||||
extern AVCodec mpeg_decoder;
|
extern AVCodec mpeg_decoder;
|
||||||
extern AVCodec h263i_decoder;
|
extern AVCodec h263i_decoder;
|
||||||
extern AVCodec rv10_decoder;
|
extern AVCodec rv10_decoder;
|
||||||
|
extern AVCodec mjpeg_decoder;
|
||||||
|
|
||||||
/* dummy raw codecs */
|
/* dummy raw codecs */
|
||||||
extern AVCodec pcm_codec;
|
extern AVCodec pcm_codec;
|
||||||
|
@ -121,7 +121,7 @@ void flush_put_bits(PutBitContext *s)
|
|||||||
s->bit_buf=0;
|
s->bit_buf=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* for jpeg : espace 0xff with 0x00 after it */
|
/* for jpeg : escape 0xff with 0x00 after it */
|
||||||
void jput_bits(PutBitContext *s, int n, unsigned int value)
|
void jput_bits(PutBitContext *s, int n, unsigned int value)
|
||||||
{
|
{
|
||||||
unsigned int bit_buf, b;
|
unsigned int bit_buf, b;
|
||||||
@ -401,7 +401,27 @@ static int build_table(VLC *vlc, int table_nb_bits,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* wrap and size allow to handle most types of storage. */
|
/* Build VLC decoding tables suitable for use with get_vlc().
|
||||||
|
|
||||||
|
'nb_bits' set thee decoding table size (2^nb_bits) entries. The
|
||||||
|
bigger it is, the faster is the decoding. But it should not be too
|
||||||
|
big to save memory and L1 cache. '9' is a good compromise.
|
||||||
|
|
||||||
|
'nb_codes' : number of vlcs codes
|
||||||
|
|
||||||
|
'bits' : table which gives the size (in bits) of each vlc code.
|
||||||
|
|
||||||
|
'codes' : table which gives the bit pattern of of each vlc code.
|
||||||
|
|
||||||
|
'xxx_wrap' : give the number of bytes between each entry of the
|
||||||
|
'bits' or 'codes' tables.
|
||||||
|
|
||||||
|
'xxx_size' : gives the number of bytes of each entry of the 'bits'
|
||||||
|
or 'codes' tables.
|
||||||
|
|
||||||
|
'wrap' and 'size' allows to use any memory configuration and types
|
||||||
|
(byte/word/long) to store the 'bits' and 'codes' tables.
|
||||||
|
*/
|
||||||
int init_vlc(VLC *vlc, int nb_bits, int nb_codes,
|
int init_vlc(VLC *vlc, int nb_bits, int nb_codes,
|
||||||
const void *bits, int bits_wrap, int bits_size,
|
const void *bits, int bits_wrap, int bits_size,
|
||||||
const void *codes, int codes_wrap, int codes_size)
|
const void *codes, int codes_wrap, int codes_size)
|
||||||
|
@ -267,6 +267,7 @@ void avcodec_register_all(void)
|
|||||||
register_avcodec(&mpeg_decoder);
|
register_avcodec(&mpeg_decoder);
|
||||||
register_avcodec(&h263i_decoder);
|
register_avcodec(&h263i_decoder);
|
||||||
register_avcodec(&rv10_decoder);
|
register_avcodec(&rv10_decoder);
|
||||||
|
register_avcodec(&mjpeg_decoder);
|
||||||
#ifdef CONFIG_MPGLIB
|
#ifdef CONFIG_MPGLIB
|
||||||
register_avcodec(&mp3_decoder);
|
register_avcodec(&mp3_decoder);
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user