#include "libavutil/intreadwrite.h"
#include "libavutil/log.h"
#include "libavutil/base64.h"
#include "avcodec.h"
#include <theora/theoraenc.h>
Go to the source code of this file.
Data Structures | |
| struct | TheoraContext | 
Functions | |
| static int | concatenate_packet (unsigned int *offset, AVCodecContext *avc_context, const ogg_packet *packet) | 
| Concatenate an ogg_packet into the extradata.   | |
| static int | get_stats (AVCodecContext *avctx, int eos) | 
| static int | submit_stats (AVCodecContext *avctx) | 
| static av_cold int | encode_init (AVCodecContext *avc_context) | 
| static int | encode_frame (AVCodecContext *avc_context, uint8_t *outbuf, int buf_size, void *data) | 
| static av_cold int | encode_close (AVCodecContext *avc_context) | 
Variables | |
| AVCodec | ff_libtheora_encoder | 
| AVCodec struct exposed to libavcodec.   | |
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.
Definition in file libtheoraenc.c.
| static int concatenate_packet | ( | unsigned int * | offset, | |
| AVCodecContext * | avc_context, | |||
| const ogg_packet * | packet | |||
| ) |  [static] | 
        
Concatenate an ogg_packet into the extradata.
Definition at line 53 of file libtheoraenc.c.
Referenced by encode_init().
| static av_cold int encode_close | ( | AVCodecContext * | avc_context | ) |  [static] | 
        
Definition at line 345 of file libtheoraenc.c.
| static int encode_frame | ( | AVCodecContext * | avc_context, | |
| uint8_t * | outbuf, | |||
| int | buf_size, | |||
| void * | data | |||
| ) |  [static] | 
        
Definition at line 263 of file libtheoraenc.c.
| static av_cold int encode_init | ( | AVCodecContext * | avc_context | ) |  [static] | 
        
Definition at line 152 of file libtheoraenc.c.
| static int get_stats | ( | AVCodecContext * | avctx, | |
| int | eos | |||
| ) |  [static] | 
        
| static int submit_stats | ( | AVCodecContext * | avctx | ) |  [static] | 
        
Initial value:
 {
    .name = "libtheora",
    .type = AVMEDIA_TYPE_VIDEO,
    .id = CODEC_ID_THEORA,
    .priv_data_size = sizeof(TheoraContext),
    .init = encode_init,
    .close = encode_close,
    .encode = encode_frame,
    .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("libtheora Theora"),
}
Definition at line 360 of file libtheoraenc.c.
 1.5.8