@ -91,13 +91,17 @@ static void jpeg_table_header(AVCodecContext *avctx, PutBitContext *p,
{
int i , j , size ;
uint8_t * ptr ;
MpegEncContext * s = avctx - > priv_data ;
MpegEncContext * s = NULL ;
/* Since avctx->priv_data will point to LJpegEncContext in this case */
if ( avctx - > codec_id ! = AV_CODEC_ID_LJPEG )
s = avctx - > priv_data ;
if ( avctx - > codec_id ! = AV_CODEC_ID_LJPEG ) {
int matrix_count = 1 + ! ! memcmp ( luma_intra_matrix ,
chroma_intra_matrix ,
sizeof ( luma_intra_matrix [ 0 ] ) * 64 ) ;
if ( s - > force_duplicated_matrix )
if ( s & & s - > force_duplicated_matrix )
matrix_count = 2 ;
/* quant matrixes */
put_marker ( p , DQT ) ;
@ -134,7 +138,7 @@ static void jpeg_table_header(AVCodecContext *avctx, PutBitContext *p,
// Only MJPEG can have a variable Huffman variable. All other
// formats use the default Huffman table.
if ( s - > out_format = = FMT_MJPEG & & s - > huffman = = HUFFMAN_TABLE_OPTIMAL ) {
if ( s & & s - > huffman = = HUFFMAN_TABLE_OPTIMAL ) {
size + = put_huffman_table ( p , 0 , 0 , s - > mjpeg_ctx - > bits_dc_luminance ,
s - > mjpeg_ctx - > val_dc_luminance ) ;
size + = put_huffman_table ( p , 0 , 1 , s - > mjpeg_ctx - > bits_dc_chrominance ,