Data Structures | Defines | Typedefs | Functions | Variables

libavcodec/rpza.c File Reference

QT RPZA Video Decoder by Roberto Togni For more information about the RPZA format, visit: http://www.pcisys.net/~melanson/codecs/. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "libavutil/intreadwrite.h"
#include "avcodec.h"

Go to the source code of this file.

Data Structures

struct  RpzaContext

Defines

#define ADVANCE_BLOCK()

Typedefs

typedef struct RpzaContext RpzaContext

Functions

static void rpza_decode_stream (RpzaContext *s)
static av_cold int rpza_decode_init (AVCodecContext *avctx)
static int rpza_decode_frame (AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
static av_cold int rpza_decode_end (AVCodecContext *avctx)

Variables

AVCodec rpza_decoder

Detailed Description

QT RPZA Video Decoder by Roberto Togni For more information about the RPZA format, visit: http://www.pcisys.net/~melanson/codecs/.

The RPZA decoder outputs RGB555 colorspace data.

Note that this decoder reads big endian RGB555 pixel values from the bytestream, arranges them in the host's endian order, and outputs them to the final rendered map in the same host endian order. This is intended behavior as the ffmpeg documentation states that RGB555 pixels shall be stored in native CPU endianness.

Definition in file rpza.c.


Define Documentation

#define ADVANCE_BLOCK (  ) 
Value:
{ \
    pixel_ptr += 4; \
    if (pixel_ptr >= width) \
    { \
        pixel_ptr = 0; \
        row_ptr += stride * 4; \
    } \
    total_blocks--; \
    if (total_blocks < 0) \
    { \
        av_log(s->avctx, AV_LOG_ERROR, "warning: block counter just went negative (this should not happen)\n"); \
        return; \
    } \
}

Definition at line 54 of file rpza.c.

Referenced by rpza_decode_stream().


Typedef Documentation

typedef struct RpzaContext RpzaContext

Function Documentation

static av_cold int rpza_decode_end ( AVCodecContext avctx  )  [static]

Definition at line 268 of file rpza.c.

static int rpza_decode_frame ( AVCodecContext avctx,
void *  data,
int *  data_size,
AVPacket avpkt 
) [static]

Definition at line 241 of file rpza.c.

static av_cold int rpza_decode_init ( AVCodecContext avctx  )  [static]

Definition at line 229 of file rpza.c.

static void rpza_decode_stream ( RpzaContext s  )  [static]

Definition at line 70 of file rpza.c.

Referenced by rpza_decode_frame().


Variable Documentation

Initial value:
 {
    "rpza",
    AVMEDIA_TYPE_VIDEO,
    CODEC_ID_RPZA,
    sizeof(RpzaContext),
    rpza_decode_init,
    NULL,
    rpza_decode_end,
    rpza_decode_frame,
    CODEC_CAP_DR1,
    .long_name = NULL_IF_CONFIG_SMALL("QuickTime video (RPZA)"),
}

Definition at line 278 of file rpza.c.