33 #ifndef AVCODEC_MJPEGENC_H
34 #define AVCODEC_MJPEGENC_H
static void put_bits(Jpeg2000EncoderContext *s, int val, int n)
put n times val bit
MJPEG encoder and decoder.
HuffmanTableOption
Enum for the Huffman encoding strategy.
@ HUFFMAN_TABLE_OPTIMAL
Compute and use optimal Huffman tables.
@ NB_HUFFMAN_TABLE_OPTION
@ HUFFMAN_TABLE_DEFAULT
Use the default Huffman tables.
void ff_mjpeg_encode_mb(MpegEncContext *s, int16_t block[12][64])
int ff_mjpeg_encode_init(MpegEncContext *s)
int ff_mjpeg_encode_stuffing(MpegEncContext *s)
Writes the complete JPEG frame when optimal huffman tables are enabled, otherwise writes the stuffing...
void ff_mjpeg_encode_close(MpegEncContext *s)
static void put_marker(PutBitContext *p, enum JpegMarker code)
Holds JPEG frame data and Huffman table data.
uint8_t huff_size_dc_chrominance[12]
DC chrominance Huffman table size.
uint8_t huff_size_ac_chrominance[256]
AC chrominance Huffman table size.
uint8_t bits_dc_luminance[17]
DC luminance Huffman bits.
uint8_t huff_size_dc_luminance[12]
DC luminance Huffman table size.
uint8_t bits_ac_luminance[17]
AC luminance Huffman bits.
uint16_t huff_code_ac_luminance[256]
AC luminance Huffman table codes.
uint16_t huff_code_ac_chrominance[256]
AC chrominance Huffman table codes.
MJpegHuffmanCode * huff_buffer
Buffer for Huffman code values.
size_t huff_ncode
Number of current entries in the buffer.
uint8_t val_ac_luminance[256]
AC luminance Huffman values.
uint8_t val_ac_chrominance[256]
AC chrominance Huffman values.
uint16_t huff_code_dc_chrominance[12]
DC chrominance Huffman table codes.
uint8_t huff_size_ac_luminance[256]
AC luminance Huffman table size.
uint8_t bits_dc_chrominance[17]
DC chrominance Huffman bits.
uint8_t val_dc_luminance[12]
DC luminance Huffman values.
uint16_t huff_code_dc_luminance[12]
DC luminance Huffman table codes.
uint8_t uni_chroma_ac_vlc_len[64 *64 *2]
Storage for AC chrominance VLC (in MpegEncContext)
uint8_t uni_ac_vlc_len[64 *64 *2]
Storage for AC luminance VLC (in MpegEncContext)
uint8_t bits_ac_chrominance[17]
AC chrominance Huffman bits.
uint8_t val_dc_chrominance[12]
DC chrominance Huffman values.
Buffer of JPEG frame data.
uint16_t mant
The mantissa.
uint8_t table_id
The Huffman table id associated with the data.
uint8_t code
The exponent.