FFmpeg
|
#include <inttypes.h>
#include <zlib.h>
#include "libavutil/imgutils.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/mem_internal.h"
#include "avcodec.h"
#include "blockdsp.h"
#include "bytestream.h"
#include "elsdec.h"
#include "get_bits.h"
#include "idctdsp.h"
#include "internal.h"
#include "jpegtables.h"
#include "mjpeg.h"
#include "mjpegdec.h"
Go to the source code of this file.
Data Structures | |
struct | ePICPixListElem |
struct | ePICPixHashElem |
struct | ePICPixHash |
struct | ePICContext |
struct | JPGContext |
struct | G2MContext |
Macros | |
#define | EPIC_PIX_STACK_SIZE 1024 |
#define | EPIC_PIX_STACK_MAX (EPIC_PIX_STACK_SIZE - 1) |
#define | EPIC_HASH_SIZE 256 |
#define | LOAD_NEIGHBOURS(x) |
#define | UPDATE_NEIGHBOURS(x) |
#define | R_shift 16 |
#define | G_shift 8 |
#define | B_shift 0 |
#define | TOSIGNED(val) (((val) >> 1) ^ -((val) & 1)) |
#define | APPLY_ALPHA(src, new, alpha) src = (src * (256 - alpha) + new * alpha) >> 8 |
Enumerations | |
enum | ChunkType { DISPLAY_INFO = 0xC8, TILE_DATA, CURSOR_POS, CURSOR_SHAPE, CHUNK_CC, CHUNK_CD, CHUNK_TYPE_DATA = 0x4424, CHUNK_TYPE_ASF_HEADER = 0x4824, CHUNK_TYPE_END = 0x4524, CHUNK_TYPE_STREAM_CHANGE = 0x4324 } |
enum | Compression { COMPR_EPIC_J_B = 2, COMPR_KEMPF_J_B } |
Functions | |
static av_cold int | jpg_init (AVCodecContext *avctx, JPGContext *c) |
static av_cold void | jpg_free_context (JPGContext *ctx) |
static void | jpg_unescape (const uint8_t *src, int src_size, uint8_t *dst, int *dst_size) |
static int | jpg_decode_block (JPGContext *c, GetBitContext *gb, int plane, int16_t *block) |
static void | yuv2rgb (uint8_t *out, int ridx, int Y, int U, int V) |
static int | jpg_decode_data (JPGContext *c, int width, int height, const uint8_t *src, int src_size, uint8_t *dst, int dst_stride, const uint8_t *mask, int mask_stride, int num_mbs, int swapuv) |
static int | djb2_hash (uint32_t key) |
static void | epic_hash_init (ePICPixHash *hash) |
static ePICPixHashElem * | epic_hash_find (const ePICPixHash *hash, uint32_t key) |
static ePICPixHashElem * | epic_hash_add (ePICPixHash *hash, uint32_t key) |
static int | epic_add_pixel_to_cache (ePICPixHash *hash, uint32_t key, uint32_t pix) |
static int | epic_cache_entries_for_pixel (const ePICPixHash *hash, uint32_t pix) |
static void | epic_free_pixel_cache (ePICPixHash *hash) |
static int | is_pixel_on_stack (const ePICContext *dc, uint32_t pix) |
static int | epic_decode_component_pred (ePICContext *dc, int N, int W, int NW) |
static uint32_t | epic_decode_pixel_pred (ePICContext *dc, int x, int y, const uint32_t *curr_row, const uint32_t *above_row) |
static int | epic_predict_pixel (ePICContext *dc, uint8_t *rung, uint32_t *pPix, uint32_t pix) |
static int | epic_handle_edges (ePICContext *dc, int x, int y, const uint32_t *curr_row, const uint32_t *above_row, uint32_t *pPix) |
static int | epic_decode_run_length (ePICContext *dc, int x, int y, int tile_width, const uint32_t *curr_row, const uint32_t *above_row, const uint32_t *above2_row, uint32_t *pPix, int *pRun) |
static int | epic_predict_pixel2 (ePICContext *dc, uint8_t *rung, uint32_t *pPix, uint32_t pix) |
static int | epic_predict_from_NW_NE (ePICContext *dc, int x, int y, int run, int tile_width, const uint32_t *curr_row, const uint32_t *above_row, uint32_t *pPix) |
static int | epic_decode_from_cache (ePICContext *dc, uint32_t W, uint32_t *pPix) |
static int | epic_decode_tile (ePICContext *dc, uint8_t *out, int tile_height, int tile_width, int stride) |
static int | epic_jb_decode_tile (G2MContext *c, int tile_x, int tile_y, const uint8_t *src, size_t src_size, AVCodecContext *avctx) |
static int | kempf_restore_buf (const uint8_t *src, int len, uint8_t *dst, int stride, const uint8_t *jpeg_tile, int tile_stride, int width, int height, const uint8_t *pal, int npal, int tidx) |
static int | kempf_decode_tile (G2MContext *c, int tile_x, int tile_y, const uint8_t *src, int src_size) |
static int | g2m_init_buffers (G2MContext *c) |
static int | g2m_load_cursor (AVCodecContext *avctx, G2MContext *c, GetByteContext *gb) |
static void | g2m_paint_cursor (G2MContext *c, uint8_t *dst, int stride) |
static int | g2m_decode_frame (AVCodecContext *avctx, void *data, int *got_picture_ptr, AVPacket *avpkt) |
static av_cold int | g2m_decode_init (AVCodecContext *avctx) |
static av_cold int | g2m_decode_end (AVCodecContext *avctx) |
Variables | |
static const uint8_t | luma_quant [64] |
static const uint8_t | chroma_quant [64] |
const AVCodec | ff_g2m_decoder |
Go2Webinar / Go2Meeting decoder
Definition in file g2meet.c.
#define EPIC_PIX_STACK_MAX (EPIC_PIX_STACK_SIZE - 1) |
#define LOAD_NEIGHBOURS | ( | x | ) |
#define UPDATE_NEIGHBOURS | ( | x | ) |
enum ChunkType |
enum Compression |
|
static |
Definition at line 163 of file g2meet.c.
Referenced by g2m_decode_init().
|
static |
Definition at line 192 of file g2meet.c.
Referenced by g2m_decode_end(), and g2m_decode_init().
|
static |
Definition at line 204 of file g2meet.c.
Referenced by jpg_decode_data().
|
static |
Definition at line 221 of file g2meet.c.
Referenced by jpg_decode_data().
Definition at line 261 of file g2meet.c.
Referenced by create_filtergraph(), jpg_decode_data(), and tonemap_opencl_init().
|
static |
Definition at line 268 of file g2meet.c.
Referenced by epic_jb_decode_tile(), and kempf_decode_tile().
|
static |
Definition at line 376 of file g2meet.c.
Referenced by epic_hash_add(), and epic_hash_find().
|
static |
Definition at line 388 of file g2meet.c.
Referenced by epic_jb_decode_tile().
|
static |
Definition at line 393 of file g2meet.c.
Referenced by epic_add_pixel_to_cache(), epic_cache_entries_for_pixel(), and epic_decode_from_cache().
|
static |
Definition at line 405 of file g2meet.c.
Referenced by epic_add_pixel_to_cache().
|
static |
Definition at line 428 of file g2meet.c.
Referenced by epic_decode_tile().
|
inlinestatic |
Definition at line 449 of file g2meet.c.
Referenced by epic_decode_tile().
|
static |
Definition at line 460 of file g2meet.c.
Referenced by epic_jb_decode_tile().
|
inlinestatic |
Definition at line 479 of file g2meet.c.
Referenced by epic_decode_from_cache(), epic_decode_run_length(), epic_decode_tile(), and epic_predict_from_NW_NE().
|
inlinestatic |
Definition at line 492 of file g2meet.c.
Referenced by epic_decode_pixel_pred().
|
static |
Definition at line 499 of file g2meet.c.
Referenced by epic_decode_tile().
|
static |
Definition at line 551 of file g2meet.c.
Referenced by epic_handle_edges().
|
static |
Definition at line 562 of file g2meet.c.
Referenced by epic_decode_tile().
|
static |
Definition at line 593 of file g2meet.c.
Referenced by epic_decode_tile().
|
static |
Definition at line 728 of file g2meet.c.
Referenced by epic_predict_from_NW_NE().
|
static |
Definition at line 739 of file g2meet.c.
Referenced by epic_decode_tile().
|
static |
Definition at line 767 of file g2meet.c.
Referenced by epic_decode_tile().
|
static |
Definition at line 796 of file g2meet.c.
Referenced by epic_jb_decode_tile().
|
static |
Definition at line 862 of file g2meet.c.
Referenced by g2m_decode_frame().
|
static |
Definition at line 1013 of file g2meet.c.
Referenced by kempf_decode_tile().
|
static |
Definition at line 1048 of file g2meet.c.
Referenced by g2m_decode_frame().
|
static |
Definition at line 1159 of file g2meet.c.
Referenced by g2m_decode_frame().
|
static |
Definition at line 1203 of file g2meet.c.
Referenced by g2m_decode_frame().
|
static |
Definition at line 1325 of file g2meet.c.
Referenced by g2m_decode_frame().
|
static |
|
static |
|
static |
|
static |
Definition at line 63 of file g2meet.c.
Referenced by jpg_decode_block().
|
static |
Definition at line 74 of file g2meet.c.
Referenced by jpg_decode_block().
const AVCodec ff_g2m_decoder |