Logo Search packages:      
Sourcecode: libtheora version File versions  Download package

theoraenc.h File Reference


Detailed Description

The libtheoraenc C encoding API.

Definition in file theoraenc.h.

#include <stddef.h>
#include <ogg/ogg.h>
#include "codec.h"

Go to the source code of this file.

Defines

#define _O_THEORA_THEORAENC_H_   (1)
th_encode_ctl() codes
These are the available request codes for th_encode_ctl(). By convention, these are even, to distinguish them from the decoder control codes. Keep any experimental or vendor-specific values above 0x8000.

#define TH_ENCCTL_GET_SPLEVEL_MAX   (12)
#define TH_ENCCTL_SET_HUFFMAN_CODES   (0)
#define TH_ENCCTL_SET_KEYFRAME_FREQUENCY_FORCE   (4)
#define TH_ENCCTL_SET_QUANT_PARAMS   (2)
#define TH_ENCCTL_SET_SPLEVEL   (14)
#define TH_ENCCTL_SET_VP3_COMPATIBLE   (10)

Typedefs

Encoder state
The following data structure is opaque, and its contents are not publicly defined by this API. Referring to its internals directly is unsupported, and may break without warning.

typedef struct th_enc_ctx th_enc_ctx

Functions

Functions for encoding
You must link to libtheoraenc and libtheoradec if you use any of the functions in this section.

The functions are listed in the order they are used in a typical encode. The basic steps are:



th_enc_ctxth_encode_alloc (const th_info *_info)
int th_encode_ctl (th_enc_ctx *_enc, int _req, void *_buf, size_t _buf_sz)
int th_encode_flushheader (th_enc_ctx *_enc, th_comment *_comments, ogg_packet *_op)
void th_encode_free (th_enc_ctx *_enc)
int th_encode_packetout (th_enc_ctx *_enc, int _last, ogg_packet *_op)
int th_encode_ycbcr_in (th_enc_ctx *_enc, th_ycbcr_buffer _ycbcr)

Variables

const th_huff_code TH_VP31_HUFF_CODES [TH_NHUFFMAN_TABLES][TH_NDCT_TOKENS]
const th_quant_info TH_VP31_QUANT_INFO


Generated by  Doxygen 1.6.0   Back to index