Dirac decoder support via libschroedinger-1.0 libraries. More...
#include "libavutil/imgutils.h"
#include "avcodec.h"
#include "libdirac_libschro.h"
#include "libschroedinger.h"
#include <assert.h>
#include <schroedinger/schro.h>
#include <schroedinger/schrodebug.h>
#include <schroedinger/schrovideoformat.h>
Go to the source code of this file.
Dirac decoder support via libschroedinger-1.0 libraries.
More details about the Schroedinger project can be found at http://www.diracvideo.org/. The library implements Dirac Specification Version 2.2. (http://dirac.sourceforge.net/specification.html).
Definition in file libschroedingerdec.c.
typedef struct SchroDecoderParams SchroDecoderParams |
libschroedinger decoder private data
typedef struct SchroParseUnitContext SchroParseUnitContext |
static SchroBuffer* FindNextSchroParseUnit | ( | SchroParseUnitContext * | parse_ctx | ) | [static] |
Definition at line 83 of file libschroedingerdec.c.
Referenced by libschroedinger_decode_frame().
static enum PixelFormat get_chroma_format | ( | SchroChromaFormat | schro_pix_fmt | ) | [static] |
Returns FFmpeg chroma format.
Definition at line 123 of file libschroedingerdec.c.
Referenced by libschroedinger_handle_first_access_unit().
static void libschroedinger_decode_buffer_free | ( | SchroBuffer * | schro_buf, |
void * | priv | ||
) | [static] |
Definition at line 154 of file libschroedingerdec.c.
Referenced by FindNextSchroParseUnit().
static av_cold int libschroedinger_decode_close | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 315 of file libschroedingerdec.c.
static int libschroedinger_decode_frame | ( | AVCodecContext * | avccontext, |
void * | data, | ||
int * | data_size, | ||
AVPacket * | avpkt | ||
) | [static] |
Definition at line 202 of file libschroedingerdec.c.
static void libschroedinger_decode_frame_free | ( | void * | frame | ) | [static] |
Definition at line 160 of file libschroedingerdec.c.
Referenced by libschroedinger_decode_close(), libschroedinger_decode_frame(), and libschroedinger_flush().
static av_cold int libschroedinger_decode_init | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 135 of file libschroedingerdec.c.
static void libschroedinger_flush | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 331 of file libschroedingerdec.c.
static void libschroedinger_handle_first_access_unit | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 165 of file libschroedingerdec.c.
Referenced by libschroedinger_decode_frame().
static void SchroParseContextInit | ( | SchroParseUnitContext * | parse_ctx, |
const uint8_t * | buf, | ||
int | buf_size | ||
) | [static] |
Definition at line 76 of file libschroedingerdec.c.
Referenced by libschroedinger_decode_frame().
{ .name = "libschroedinger", .type = AVMEDIA_TYPE_VIDEO, .id = CODEC_ID_DIRAC, .priv_data_size = sizeof(SchroDecoderParams), .init = libschroedinger_decode_init, .close = libschroedinger_decode_close, .decode = libschroedinger_decode_frame, .capabilities = CODEC_CAP_DELAY, .flush = libschroedinger_flush, .long_name = NULL_IF_CONFIG_SMALL("libschroedinger Dirac 2.2"), }
Definition at line 347 of file libschroedingerdec.c.