Go to the documentation of this file.
33 #ifndef AVCODEC_MJPEGENC_H
34 #define AVCODEC_MJPEGENC_H
uint8_t uni_ac_vlc_len[64 *64 *2]
Storage for AC luminance VLC (in MpegEncContext)
Buffer of JPEG frame data.
uint8_t bits_ac_chrominance[17]
AC chrominance Huffman bits.
static void put_bits(Jpeg2000EncoderContext *s, int val, int n)
put n times val bit
uint8_t val_dc_chrominance[12]
DC chrominance Huffman values.
uint16_t mant
The mantissa.
uint16_t huff_code_dc_chrominance[12]
DC chrominance Huffman table codes.
uint8_t table_id
The Huffman table id associated with the data.
uint8_t huff_size_dc_chrominance[12]
DC chrominance Huffman table size.
int ff_mjpeg_encode_init(MpegEncContext *s)
uint8_t uni_chroma_ac_vlc_len[64 *64 *2]
Storage for AC chrominance VLC (in MpegEncContext)
void ff_mjpeg_encode_close(MpegEncContext *s)
uint8_t bits_dc_luminance[17]
DC luminance Huffman bits.
uint8_t val_dc_luminance[12]
DC luminance Huffman values.
@ HUFFMAN_TABLE_OPTIMAL
Compute and use optimal Huffman tables.
int ff_mjpeg_encode_stuffing(MpegEncContext *s)
Writes the complete JPEG frame when optimal huffman tables are enabled, otherwise writes the stuffing...
uint8_t val_ac_chrominance[256]
AC chrominance Huffman values.
@ NB_HUFFMAN_TABLE_OPTION
size_t huff_ncode
Number of current entries in the buffer.
@ HUFFMAN_TABLE_DEFAULT
Use the default Huffman tables.
uint16_t huff_code_ac_luminance[256]
AC luminance Huffman table codes.
uint16_t huff_code_ac_chrominance[256]
AC chrominance Huffman table codes.
and forward the test the status of outputs and forward it to the corresponding return FFERROR_NOT_READY If the filters stores internally one or a few frame for some it can consider them to be part of the FIFO and delay acknowledging a status change accordingly Example code
void ff_mjpeg_encode_mb(MpegEncContext *s, int16_t block[12][64])
uint8_t bits_dc_chrominance[17]
DC chrominance Huffman bits.
uint8_t huff_size_dc_luminance[12]
DC luminance Huffman table size.
MJpegHuffmanCode * huff_buffer
Buffer for Huffman code values.
Holds JPEG frame data and Huffman table data.
static void put_marker(PutBitContext *p, enum JpegMarker code)
uint8_t huff_size_ac_chrominance[256]
AC chrominance Huffman table size.
HuffmanTableOption
Enum for the Huffman encoding strategy.
The exact code depends on how similar the blocks are and how related they are to the block
uint8_t bits_ac_luminance[17]
AC luminance Huffman bits.
uint8_t val_ac_luminance[256]
AC luminance Huffman values.
uint8_t huff_size_ac_luminance[256]
AC luminance Huffman table size.
uint8_t code
The exponent.
uint16_t huff_code_dc_luminance[12]
DC luminance Huffman table codes.