daala: daala/daalaenc.h Source File

daala 0.0-1733-g24f889a-dirty Experimental Daala video codec API reference.

Loading...
Searching...
No Matches
daalaenc.h
Go to the documentation of this file.
1/*Daala video codec
2Copyright (c) 2006-2013 Daala project contributors. All rights reserved.
3
4Redistribution and use in source and binary forms, with or without
5modification, are permitted provided that the following conditions are met:
6
7- Redistributions of source code must retain the above copyright notice, this
8 list of conditions and the following disclaimer.
9
10- Redistributions in binary form must reproduce the above copyright notice,
11 this list of conditions and the following disclaimer in the documentation
12 and/or other materials provided with the distribution.
13
14THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS”
15AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
17DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
18FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
20SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
21CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
22OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.*/
24
27#if !defined(_daala_daalaenc_H)
28# define _daala_daalaenc_H (1)
29# include "codec.h"
30
31# if defined(__cplusplus)
32extern "C" {
33# endif
34# if OD_GNUC_PREREQ(4, 0, 0)
35# pragma GCC visibility push(default)
36# endif
37
45 typedef struct daala_enc_ctx daala_enc_ctx;
47
75 daala_enc_ctx *daala_encode_create(const daala_info *info);
84 int daala_encode_ctl(daala_enc_ctx *enc,
85 int req, void *buf, size_t buf_sz);
103 int daala_encode_flush_header(daala_enc_ctx *enc,
104 daala_comment *comments, daala_packet *dp);
116 int daala_encode_img_in(daala_enc_ctx *enc, daala_image *img, int duration);
136 int daala_encode_packet_out(daala_enc_ctx *enc, int last, daala_packet *dp);
139 void daala_encode_free(daala_enc_ctx *enc);
141
152#define OD_SET_QUANT 4000
159#define OD_SET_COMPLEXITY 4002
166#define OD_GET_COMPLEXITY 4004
170#define OD_SET_ACTIVITY_MASKING 4006
174#define OD_SET_QM 4008
178#define OD_SET_DERING 4010
179
184#define OD_SET_MC_CHROMA 4100
188#define OD_SET_MV_RES_MIN 4102
194#define OD_SET_MV_LEVEL_MIN 4104
198#define OD_SET_MV_LEVEL_MAX 4106
202#define OD_SET_MC_SATD 4108
207#define OD_SET_B_FRAMES 4110
230#define OD_SET_BITRATE 4112
251#define OD_SET_RATE_FLAGS 4114
277#define OD_SET_RATE_BUFFER 4116
307#define OD_2PASS_OUT 4118
353#define OD_2PASS_IN 4120
355
364#define OD_RATECTL_DROP_FRAMES (0x1)
372#define OD_RATECTL_CAP_OVERFLOW (0x2)
379#define OD_RATECTL_CAP_UNDERFLOW (0x4)
381
382# if OD_GNUC_PREREQ(4, 0, 0)
383# pragma GCC visibility pop
384# endif
385# if defined(__cplusplus)
386}
387# endif
388
389#endif
codec.h
The shared libdaala C API.
daala_encode_packet_out
int daala_encode_packet_out(daala_enc_ctx *enc, int last, daala_packet *dp)
Retrieves encoded video data packets.
daala_encode_create
daala_enc_ctx * daala_encode_create(const daala_info *info)
Allocates and initializes an encoder instance.
daala_encode_img_in
int daala_encode_img_in(daala_enc_ctx *enc, daala_image *img, int duration)
Submits an uncompressed frame to the encoder.
daala_encode_ctl
int daala_encode_ctl(daala_enc_ctx *enc, int req, void *buf, size_t buf_sz)
Encoder control function.
daala_encode_free
void daala_encode_free(daala_enc_ctx *enc)
Frees an allocated encoder instance.
daala_encode_flush_header
int daala_encode_flush_header(daala_enc_ctx *enc, daala_comment *comments, daala_packet *dp)
Outputs the next header packet.
daala_enc_ctx
struct daala_enc_ctx daala_enc_ctx
The encoder context.
Definition daalaenc.h:45
daala_comment
The comment information.
Definition codec.h:272
daala_image
Representation of an image or video frame.
Definition codec.h:175
daala_info
Configuration parameters for a codec instance.
Definition codec.h:204
daala_packet
Definition codec.h:237