daala  0.0-281-ga767b96
Experimental Daala video codec API reference.
 All Data Structures Files Functions Variables Typedefs Macros Groups
daalaenc.h
Go to the documentation of this file.
1 /*Daala video codec
2 Copyright (c) 2006-2013 Daala project contributors. All rights reserved.
3 
4 Redistribution and use in source and binary forms, with or without
5 modification, 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 
14 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS”
15 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
17 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
18 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
20 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
21 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
22 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 OF 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)
32 extern "C" {
33 # endif
34 # if OD_GNUC_PREREQ(4, 0)
35 # pragma GCC visibility push(default)
36 # endif
37 
74 extern daala_enc_ctx *daala_encode_create(const daala_info *info);
83 extern int daala_encode_ctl(daala_enc_ctx *enc,
84  int req, void *buf, size_t buf_sz);
102  daala_comment *comments, ogg_packet *op);
114 extern int daala_encode_img_in(daala_enc_ctx *enc, od_img *img, int duration);
136 extern int daala_encode_packet_out(daala_enc_ctx *enc,
137  int last, ogg_packet *op);
140 extern void daala_encode_free(daala_enc_ctx *enc);
153 #define OD_SET_QUANT 4000
154 
157 # if OD_GNUC_PREREQ(4, 0)
158 # pragma GCC visibility pop
159 # endif
160 # if defined(__cplusplus)
161 }
162 # endif
163 
164 #endif
The comment information.
Definition: codec.h:225
int daala_encode_img_in(daala_enc_ctx *enc, od_img *img, int duration)
Submits an uncompressed frame to the encoder.
Representation of an image or video frame.
Definition: codec.h:162
int daala_encode_flush_header(daala_enc_ctx *enc, daala_comment *comments, ogg_packet *op)
Outputs the next header packet.
The shared libdaala C API.
void daala_encode_free(daala_enc_ctx *enc)
Frees an allocated encoder instance.
int daala_encode_packet_out(daala_enc_ctx *enc, int last, ogg_packet *op)
Retrieves encoded video data packets.
struct daala_enc_ctx daala_enc_ctx
The encoder context.
Definition: daalaenc.h:45
int daala_encode_ctl(daala_enc_ctx *enc, int req, void *buf, size_t buf_sz)
Encoder control function.
daala_enc_ctx * daala_encode_create(const daala_info *info)
Allocates and initializes an encoder instance.
Configuration parameters for a codec instance.
Definition: codec.h:180