| 
    FFmpeg
    
   | 
 
MJPEG decoder. More...
#include "libavutil/imgutils.h"#include "libavutil/avassert.h"#include "libavutil/opt.h"#include "avcodec.h"#include "blockdsp.h"#include "copy_block.h"#include "idctdsp.h"#include "internal.h"#include "jpegtables.h"#include "mjpeg.h"#include "mjpegdec.h"#include "jpeglsdec.h"#include "put_bits.h"#include "tiff.h"#include "exif.h"#include "bytestream.h"Go to the source code of this file.
Macros | |
| #define | REFINE_BIT(j) | 
| #define | ZERO_RUN | 
Functions | |
| static int | build_vlc (VLC *vlc, const uint8_t *bits_table, const uint8_t *val_table, int nb_codes, int use_static, int is_ac) | 
| static void | build_basic_mjpeg_vlc (MJpegDecodeContext *s) | 
| static void | parse_avid (MJpegDecodeContext *s, uint8_t *buf, int len) | 
| av_cold int | ff_mjpeg_decode_init (AVCodecContext *avctx) | 
| int | ff_mjpeg_decode_dqt (MJpegDecodeContext *s) | 
| int | ff_mjpeg_decode_dht (MJpegDecodeContext *s) | 
| int | ff_mjpeg_decode_sof (MJpegDecodeContext *s) | 
| static int | mjpeg_decode_dc (MJpegDecodeContext *s, int dc_index) | 
| static int | decode_block (MJpegDecodeContext *s, int16_t *block, int component, int dc_index, int ac_index, int16_t *quant_matrix) | 
| static int | decode_dc_progressive (MJpegDecodeContext *s, int16_t *block, int component, int dc_index, int16_t *quant_matrix, int Al) | 
| static int | decode_block_progressive (MJpegDecodeContext *s, int16_t *block, uint8_t *last_nnz, int ac_index, int16_t *quant_matrix, int ss, int se, int Al, int *EOBRUN) | 
| static int | decode_block_refinement (MJpegDecodeContext *s, int16_t *block, uint8_t *last_nnz, int ac_index, int16_t *quant_matrix, int ss, int se, int Al, int *EOBRUN) | 
| static int | handle_rstn (MJpegDecodeContext *s, int nb_components) | 
| static int | ljpeg_decode_rgb_scan (MJpegDecodeContext *s, int nb_components, int predictor, int point_transform) | 
| static int | ljpeg_decode_yuv_scan (MJpegDecodeContext *s, int predictor, int point_transform, int nb_components) | 
| static av_always_inline void | mjpeg_copy_block (MJpegDecodeContext *s, uint8_t *dst, const uint8_t *src, int linesize, int lowres) | 
| static void | shift_output (MJpegDecodeContext *s, uint8_t *ptr, int linesize) | 
| static int | mjpeg_decode_scan (MJpegDecodeContext *s, int nb_components, int Ah, int Al, const uint8_t *mb_bitmask, int mb_bitmask_size, const AVFrame *reference) | 
| static int | mjpeg_decode_scan_progressive_ac (MJpegDecodeContext *s, int ss, int se, int Ah, int Al) | 
| int | ff_mjpeg_decode_sos (MJpegDecodeContext *s, const uint8_t *mb_bitmask, int mb_bitmask_size, const AVFrame *reference) | 
| static int | mjpeg_decode_dri (MJpegDecodeContext *s) | 
| static int | mjpeg_decode_app (MJpegDecodeContext *s) | 
| static int | mjpeg_decode_com (MJpegDecodeContext *s) | 
| static int | find_marker (const uint8_t **pbuf_ptr, const uint8_t *buf_end) | 
| int | ff_mjpeg_find_marker (MJpegDecodeContext *s, const uint8_t **buf_ptr, const uint8_t *buf_end, const uint8_t **unescaped_buf_ptr, int *unescaped_buf_size) | 
| int | ff_mjpeg_decode_frame (AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt) | 
| av_cold int | ff_mjpeg_decode_end (AVCodecContext *avctx) | 
| static void | decode_flush (AVCodecContext *avctx) | 
MJPEG decoder.
Definition in file mjpegdec.c.
| #define REFINE_BIT | ( | j | ) | 
Definition at line 800 of file mjpegdec.c.
Referenced by decode_block_refinement().
| #define ZERO_RUN | 
Definition at line 808 of file mjpegdec.c.
Referenced by decode_block_refinement().
      
  | 
  static | 
Definition at line 51 of file mjpegdec.c.
Referenced by build_basic_mjpeg_vlc(), and ff_mjpeg_decode_dht().
      
  | 
  static | 
Definition at line 74 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_init().
      
  | 
  static | 
Definition at line 90 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_init(), and mjpeg_decode_com().
| av_cold int ff_mjpeg_decode_init | ( | AVCodecContext * | avctx | ) | 
Definition at line 101 of file mjpegdec.c.
Referenced by init(), and mxpeg_decode_init().
| int ff_mjpeg_decode_dqt | ( | MJpegDecodeContext * | s | ) | 
Definition at line 160 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame(), mjpegb_decode_frame(), and mxpeg_decode_frame().
| int ff_mjpeg_decode_dht | ( | MJpegDecodeContext * | s | ) | 
Definition at line 198 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame(), ff_mjpeg_decode_init(), mjpegb_decode_frame(), and mxpeg_decode_frame().
| int ff_mjpeg_decode_sof | ( | MJpegDecodeContext * | s | ) | 
Definition at line 257 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame(), mjpegb_decode_frame(), and mxpeg_decode_frame().
      
  | 
  inlinestatic | 
Definition at line 644 of file mjpegdec.c.
Referenced by decode_block(), decode_dc_progressive(), ljpeg_decode_rgb_scan(), and ljpeg_decode_yuv_scan().
      
  | 
  static | 
Definition at line 662 of file mjpegdec.c.
Referenced by mjpeg_decode_scan().
      
  | 
  static | 
Definition at line 710 of file mjpegdec.c.
Referenced by mjpeg_decode_scan().
      
  | 
  static | 
Definition at line 728 of file mjpegdec.c.
Referenced by mjpeg_decode_scan_progressive_ac().
      
  | 
  static | 
Definition at line 826 of file mjpegdec.c.
Referenced by mjpeg_decode_scan_progressive_ac().
      
  | 
  static | 
Definition at line 891 of file mjpegdec.c.
Referenced by mjpeg_decode_scan(), and mjpeg_decode_scan_progressive_ac().
      
  | 
  static | 
Definition at line 925 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_sos().
      
  | 
  static | 
Definition at line 1040 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_sos().
      
  | 
  static | 
Definition at line 1184 of file mjpegdec.c.
Referenced by mjpeg_decode_scan().
      
  | 
  static | 
Definition at line 1200 of file mjpegdec.c.
Referenced by mjpeg_decode_scan(), and mjpeg_decode_scan_progressive_ac().
      
  | 
  static | 
Definition at line 1215 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_sos().
      
  | 
  static | 
Definition at line 1331 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_sos().
| int ff_mjpeg_decode_sos | ( | MJpegDecodeContext * | s, | 
| const uint8_t * | mb_bitmask, | ||
| int | mb_bitmask_size, | ||
| const AVFrame * | reference | ||
| ) | 
Definition at line 1396 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame(), mjpegb_decode_frame(), and mxpeg_decode_frame().
      
  | 
  static | 
Definition at line 1556 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame().
      
  | 
  static | 
Definition at line 1568 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame().
      
  | 
  static | 
Definition at line 1808 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame().
Definition at line 1843 of file mjpegdec.c.
Referenced by ff_mjpeg_find_marker().
| int ff_mjpeg_find_marker | ( | MJpegDecodeContext * | s, | 
| const uint8_t ** | buf_ptr, | ||
| const uint8_t * | buf_end, | ||
| const uint8_t ** | unescaped_buf_ptr, | ||
| int * | unescaped_buf_size | ||
| ) | 
Definition at line 1868 of file mjpegdec.c.
Referenced by ff_mjpeg_decode_frame(), and mxpeg_decode_frame().
| int ff_mjpeg_decode_frame | ( | AVCodecContext * | avctx, | 
| void * | data, | ||
| int * | got_frame, | ||
| AVPacket * | avpkt | ||
| ) | 
Definition at line 1958 of file mjpegdec.c.
Referenced by decode_frame(), and sp5x_decode_frame().
| av_cold int ff_mjpeg_decode_end | ( | AVCodecContext * | avctx | ) | 
Definition at line 2335 of file mjpegdec.c.
Referenced by end(), and mxpeg_decode_end().
      
  | 
  static | 
Definition at line 2367 of file mjpegdec.c.
 1.8.6