#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.
1.5.8