]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/mjpegenc.c
Get rid of INIT_VLC_USE_STATIC in rv10/rv20.
[ffmpeg] / libavcodec / mjpegenc.c
index b5e5a827d3ab7757f00a8572a84bd1fcc64d4966..bfab7cdcd49433c082b0417ba70b962583df5f77 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * MJPEG encoder
- * Copyright (c) 2000, 2001 Fabrice Bellard.
+ * Copyright (c) 2000, 2001 Fabrice Bellard
  * Copyright (c) 2003 Alex Beregszaszi
  * Copyright (c) 2003-2004 Michael Niedermayer
  *
@@ -26,7 +26,7 @@
  */
 
 /**
- * @file mjpegenc.c
+ * @file libavcodec/mjpegenc.c
  * MJPEG encoder.
  */
 
@@ -44,7 +44,7 @@
 #undef TWOMATRIXES
 
 
-int ff_mjpeg_encode_init(MpegEncContext *s)
+av_cold int ff_mjpeg_encode_init(MpegEncContext *s)
 {
     MJpegContext *m;
 
@@ -59,11 +59,11 @@ int ff_mjpeg_encode_init(MpegEncContext *s)
     ff_mjpeg_build_huffman_codes(m->huff_size_dc_luminance,
                                  m->huff_code_dc_luminance,
                                  ff_mjpeg_bits_dc_luminance,
-                                 ff_mjpeg_val_dc_luminance);
+                                 ff_mjpeg_val_dc);
     ff_mjpeg_build_huffman_codes(m->huff_size_dc_chrominance,
                                  m->huff_code_dc_chrominance,
                                  ff_mjpeg_bits_dc_chrominance,
-                                 ff_mjpeg_val_dc_chrominance);
+                                 ff_mjpeg_val_dc);
     ff_mjpeg_build_huffman_codes(m->huff_size_ac_luminance,
                                  m->huff_code_ac_luminance,
                                  ff_mjpeg_bits_ac_luminance,
@@ -139,9 +139,9 @@ static void jpeg_table_header(MpegEncContext *s)
     put_bits(p, 16, 0); /* patched later */
     size = 2;
     size += put_huffman_table(s, 0, 0, ff_mjpeg_bits_dc_luminance,
-                              ff_mjpeg_val_dc_luminance);
+                              ff_mjpeg_val_dc);
     size += put_huffman_table(s, 0, 1, ff_mjpeg_bits_dc_chrominance,
-                              ff_mjpeg_val_dc_chrominance);
+                              ff_mjpeg_val_dc);
 
     size += put_huffman_table(s, 1, 0, ff_mjpeg_bits_ac_luminance,
                               ff_mjpeg_val_ac_luminance);
@@ -369,7 +369,7 @@ void ff_mjpeg_encode_dc(MpegEncContext *s, int val,
 
         put_bits(&s->pb, huff_size[nbits], huff_code[nbits]);
 
-        put_bits(&s->pb, nbits, mant & ((1 << nbits) - 1));
+        put_sbits(&s->pb, nbits, mant);
     }
 }
 
@@ -421,7 +421,7 @@ static void encode_block(MpegEncContext *s, DCTELEM *block, int n)
 
             put_bits(&s->pb, huff_size_ac[code], huff_code_ac[code]);
 
-            put_bits(&s->pb, nbits, mant & ((1 << nbits) - 1));
+            put_sbits(&s->pb, nbits, mant);
             run = 0;
         }
     }
@@ -454,5 +454,6 @@ AVCodec mjpeg_encoder = {
     MPV_encode_init,
     MPV_encode_picture,
     MPV_encode_end,
-    .pix_fmts= (enum PixelFormat[]){PIX_FMT_YUVJ420P, PIX_FMT_YUVJ422P, -1},
+    .pix_fmts= (enum PixelFormat[]){PIX_FMT_YUVJ420P, PIX_FMT_YUVJ422P, PIX_FMT_NONE},
+    .long_name= NULL_IF_CONFIG_SMALL("MJPEG (Motion JPEG)"),
 };