#include <assert.h>
#include <schroedinger/schro.h>
#include <schroedinger/schrodebug.h>
#include <schroedinger/schrovideoformat.h>
#include "avcodec.h"
#include "internal.h"
#include "libschroedinger.h"
#include "bytestream.h"
Go to the source code of this file.
Data Structures | |
struct | SchroEncoderParams |
libschroedinger encoder private data More... | |
Functions | |
static int | set_chroma_format (AVCodecContext *avccontext) |
Works out Schro-compatible chroma format. | |
static int | libschroedinger_encode_init (AVCodecContext *avccontext) |
static SchroFrame * | libschroedinger_frame_from_data (AVCodecContext *avccontext, const AVFrame *frame) |
static void | libschroedinger_free_frame (void *data) |
static int | libschroedinger_encode_frame (AVCodecContext *avccontext, AVPacket *pkt, const AVFrame *frame, int *got_packet) |
static int | libschroedinger_encode_close (AVCodecContext *avccontext) |
Variables | |
AVCodec | ff_libschroedinger_encoder |
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 libschroedingerenc.c.
static int libschroedinger_encode_close | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 417 of file libschroedingerenc.c.
static int libschroedinger_encode_frame | ( | AVCodecContext * | avccontext, | |
AVPacket * | pkt, | |||
const AVFrame * | frame, | |||
int * | got_packet | |||
) | [static] |
Definition at line 269 of file libschroedingerenc.c.
static int libschroedinger_encode_init | ( | AVCodecContext * | avccontext | ) | [static] |
Definition at line 106 of file libschroedingerenc.c.
static SchroFrame* libschroedinger_frame_from_data | ( | AVCodecContext * | avccontext, | |
const AVFrame * | frame | |||
) | [static] |
static void libschroedinger_free_frame | ( | void * | data | ) | [static] |
Definition at line 261 of file libschroedingerenc.c.
Referenced by libschroedinger_encode_close(), and libschroedinger_encode_frame().
static int set_chroma_format | ( | AVCodecContext * | avccontext | ) | [static] |
Works out Schro-compatible chroma format.
Definition at line 82 of file libschroedingerenc.c.
Referenced by libschroedinger_encode_init().
Initial value:
{ .name = "libschroedinger", .type = AVMEDIA_TYPE_VIDEO, .id = CODEC_ID_DIRAC, .priv_data_size = sizeof(SchroEncoderParams), .init = libschroedinger_encode_init, .encode2 = libschroedinger_encode_frame, .close = libschroedinger_encode_close, .capabilities = CODEC_CAP_DELAY, .pix_fmts = (const enum PixelFormat[]){ PIX_FMT_YUV420P, PIX_FMT_YUV422P, PIX_FMT_YUV444P, PIX_FMT_NONE }, .long_name = NULL_IF_CONFIG_SMALL("libschroedinger Dirac 2.2"), }
Definition at line 440 of file libschroedingerenc.c.