#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.
Data Structures | |
| struct | FfmpegSchroDecoderParams |
| libschroedinger decoder private data More... | |
| struct | FfmpegSchroParseUnitContext |
Functions | |
| static void | libschroedinger_decode_buffer_free (SchroBuffer *schro_buf, void *priv) |
| static void | FfmpegSchroParseContextInit (FfmpegSchroParseUnitContext *parse_ctx, const uint8_t *buf, int buf_size) |
| static SchroBuffer * | FfmpegFindNextSchroParseUnit (FfmpegSchroParseUnitContext *parse_ctx) |
| static enum PixelFormat | GetFfmpegChromaFormat (SchroChromaFormat schro_pix_fmt) |
| Returns FFmpeg chroma format. | |
| static av_cold int | libschroedinger_decode_init (AVCodecContext *avccontext) |
| static void | libschroedinger_decode_frame_free (void *frame) |
| static void | libschroedinger_handle_first_access_unit (AVCodecContext *avccontext) |
| static int | libschroedinger_decode_frame (AVCodecContext *avccontext, void *data, int *data_size, const uint8_t *buf, int buf_size) |
| static av_cold int | libschroedinger_decode_close (AVCodecContext *avccontext) |
| static void | libschroedinger_flush (AVCodecContext *avccontext) |
Variables | |
| AVCodec | libschroedinger_decoder |
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.
| static SchroBuffer* FfmpegFindNextSchroParseUnit | ( | FfmpegSchroParseUnitContext * | parse_ctx | ) | [static] |
| static void FfmpegSchroParseContextInit | ( | FfmpegSchroParseUnitContext * | parse_ctx, | |
| const uint8_t * | buf, | |||
| int | buf_size | |||
| ) | [static] |
| static enum PixelFormat GetFfmpegChromaFormat | ( | SchroChromaFormat | schro_pix_fmt | ) | [static] |
| static void libschroedinger_decode_buffer_free | ( | SchroBuffer * | schro_buf, | |
| void * | priv | |||
| ) | [static] |
| static av_cold int libschroedinger_decode_close | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 328 of file libschroedingerdec.c.
| static int libschroedinger_decode_frame | ( | AVCodecContext * | avccontext, | |
| void * | data, | |||
| int * | data_size, | |||
| const uint8_t * | buf, | |||
| int | buf_size | |||
| ) | [static] |
Definition at line 208 of file libschroedingerdec.c.
| static void libschroedinger_decode_frame_free | ( | void * | frame | ) | [static] |
Definition at line 163 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 138 of file libschroedingerdec.c.
| static void libschroedinger_flush | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 344 of file libschroedingerdec.c.
| static void libschroedinger_handle_first_access_unit | ( | AVCodecContext * | avccontext | ) | [static] |
Initial value:
{
"libschroedinger",
CODEC_TYPE_VIDEO,
CODEC_ID_DIRAC,
sizeof(FfmpegSchroDecoderParams),
libschroedinger_decode_init,
NULL,
libschroedinger_decode_close,
libschroedinger_decode_frame,
CODEC_CAP_DELAY,
.flush = libschroedinger_flush,
.long_name = NULL_IF_CONFIG_SMALL("libschroedinger Dirac 2.2"),
}
Definition at line 360 of file libschroedingerdec.c.
1.5.8