FFmpeg
Classes | Typedefs | Variables
libtheoraenc.c File Reference

Theora encoder using libtheora. More...

#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/pixdesc.h"
#include "libavutil/log.h"
#include "libavutil/base64.h"
#include "avcodec.h"
#include "internal.h"
#include <theora/theoraenc.h>

Classes

struct  TheoraContext
 

Typedefs

typedef struct TheoraContext TheoraContext
 

Variables

AVCodec ff_libtheora_encoder
 AVCodec struct exposed to libavcodec. More...
 

Detailed Description

Theora encoder using libtheora.

Author
Paul Richards paul..nosp@m.rich.nosp@m.ards@.nosp@m.gmai.nosp@m.l.com

A lot of this is copy / paste from other output codecs in libavcodec or pure guesswork (or both).

I have used t_ prefixes on variables which are libtheora types and o_ prefixes on variables which are libogg types.

Variable Documentation

§ ff_libtheora_encoder

AVCodec ff_libtheora_encoder
Initial value:
= {
.name = "libtheora",
.long_name = NULL_IF_CONFIG_SMALL("libtheora Theora"),
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_THEORA,
.priv_data_size = sizeof(TheoraContext),
.init = encode_init,
.close = encode_close,
.encode2 = encode_frame,
.capabilities = AV_CODEC_CAP_DELAY,
.pix_fmts = (const enum AVPixelFormat[]){
},
.wrapper_name = "libtheora",
}
planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
Definition: pixfmt.h:67
#define AV_CODEC_CAP_DELAY
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and cor...
Definition: avcodec.h:984
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
Definition: pixfmt.h:66
Definition: libtheoraenc.c:45
planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
Definition: pixfmt.h:62
AVPixelFormat
Pixel format.
Definition: pixfmt.h:60

AVCodec struct exposed to libavcodec.