FFmpeg
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
sgirledec.c File Reference

SGI RLE 8-bit decoder. More...

#include "libavutil/intreadwrite.h"
#include "avcodec.h"
#include "bytestream.h"

Go to the source code of this file.

Macros

#define RGB332_TO_BGR8(x)   (((x << 3) & 0xC0) | ((x << 3) & 0x38) | ((x >> 5) & 7))
 Convert SGI RGB332 pixel into PIX_FMT_BGR8 SGI RGB332 is packed RGB 3:3:2, 8bpp, (msb)3R 2B 3G(lsb)
 
#define INC_XY(n)
 

Functions

static av_cold int sgirle_decode_init (AVCodecContext *avctx)
 
static av_always_inline void memcpy_rgb332_to_bgr8 (uint8_t *dst, const uint8_t *src, int size)
 
static int decode_sgirle8 (AVCodecContext *avctx, uint8_t *dst, const uint8_t *src, int src_size, int width, int height, int linesize)
 
static int sgirle_decode_frame (AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt)
 
static av_cold int sgirle_decode_end (AVCodecContext *avctx)
 

Variables

AVCodec ff_sgirle_decoder
 

Detailed Description

SGI RLE 8-bit decoder.

Definition in file sgirledec.c.

Macro Definition Documentation

#define RGB332_TO_BGR8 (   x)    (((x << 3) & 0xC0) | ((x << 3) & 0x38) | ((x >> 5) & 7))

Convert SGI RGB332 pixel into PIX_FMT_BGR8 SGI RGB332 is packed RGB 3:3:2, 8bpp, (msb)3R 2B 3G(lsb)

Definition at line 44 of file sgirledec.c.

Referenced by decode_sgirle8(), and memcpy_rgb332_to_bgr8().

#define INC_XY (   n)
Value:
x += n; \
if (x >= width) { \
y++; \
if (y >= height) \
return 0; \
x = 0; \
}

Referenced by decode_sgirle8().

Function Documentation

static av_cold int sgirle_decode_init ( AVCodecContext avctx)
static

Definition at line 31 of file sgirledec.c.

static av_always_inline void memcpy_rgb332_to_bgr8 ( uint8_t dst,
const uint8_t src,
int  size 
)
static

Definition at line 46 of file sgirledec.c.

Referenced by decode_sgirle8().

static int decode_sgirle8 ( AVCodecContext avctx,
uint8_t dst,
const uint8_t src,
int  src_size,
int  width,
int  height,
int  linesize 
)
static
Parameters
[out]dstDestination buffer
[in]srcSource buffer
src_sizeSource buffer size (bytes)
widthWidth of destination buffer (pixels)
heightHeight of destination buffer (pixels)
linesizeLine size of destination buffer (bytes)
Returns
<0 on error

Definition at line 62 of file sgirledec.c.

Referenced by sgirle_decode_frame().

static int sgirle_decode_frame ( AVCodecContext avctx,
void data,
int *  got_frame,
AVPacket avpkt 
)
static

Definition at line 105 of file sgirledec.c.

static av_cold int sgirle_decode_end ( AVCodecContext avctx)
static

Definition at line 131 of file sgirledec.c.

Variable Documentation

AVCodec ff_sgirle_decoder
Initial value:
= {
.name = "sgirle",
.capabilities = CODEC_CAP_DR1,
.long_name = NULL_IF_CONFIG_SMALL("SGI RLE 8-bit"),
}

Definition at line 139 of file sgirledec.c.