2013-11-22 01:46:40 +01:00
|
|
|
/*
|
|
|
|
* Copyright (c) 2013 The WebM project authors. All Rights Reserved.
|
|
|
|
*
|
|
|
|
* Use of this source code is governed by a BSD-style license
|
|
|
|
* that can be found in the LICENSE file in the root of the source
|
|
|
|
* tree. An additional intellectual property rights grant can be found
|
|
|
|
* in the file PATENTS. All contributing project authors may
|
|
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
|
|
*/
|
|
|
|
#ifndef VPXENC_H_
|
|
|
|
#define VPXENC_H_
|
|
|
|
|
|
|
|
#include "vpx/vpx_encoder.h"
|
|
|
|
|
2014-01-18 21:16:11 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2013-11-22 01:46:40 +01:00
|
|
|
enum TestDecodeFatality {
|
|
|
|
TEST_DECODE_OFF,
|
|
|
|
TEST_DECODE_FATAL,
|
|
|
|
TEST_DECODE_WARN,
|
|
|
|
};
|
|
|
|
|
2014-07-16 18:37:13 +02:00
|
|
|
typedef enum {
|
|
|
|
I420, // 4:2:0 8+ bit-depth
|
|
|
|
I422, // 4:2:2 8+ bit-depth
|
|
|
|
I444, // 4:4:4 8+ bit-depth
|
|
|
|
YV12, // 4:2:0 with uv flipped, only 8-bit depth
|
|
|
|
} ColorInputType;
|
|
|
|
|
2014-02-12 06:12:23 +01:00
|
|
|
struct VpxInterface;
|
|
|
|
|
2013-11-22 01:46:40 +01:00
|
|
|
/* Configuration elements common to all streams. */
|
|
|
|
struct VpxEncoderConfig {
|
2014-02-12 06:12:23 +01:00
|
|
|
const struct VpxInterface *codec;
|
2013-11-22 01:46:40 +01:00
|
|
|
int passes;
|
|
|
|
int pass;
|
|
|
|
int usage;
|
|
|
|
int deadline;
|
2014-07-16 18:37:13 +02:00
|
|
|
ColorInputType color_type;
|
2013-11-22 01:46:40 +01:00
|
|
|
int quiet;
|
|
|
|
int verbose;
|
|
|
|
int limit;
|
|
|
|
int skip_frames;
|
|
|
|
int show_psnr;
|
|
|
|
enum TestDecodeFatality test_decode;
|
|
|
|
int have_framerate;
|
|
|
|
struct vpx_rational framerate;
|
|
|
|
int out_part;
|
|
|
|
int debug;
|
|
|
|
int show_q_hist_buckets;
|
|
|
|
int show_rate_hist_buckets;
|
|
|
|
int disable_warnings;
|
|
|
|
int disable_warning_prompt;
|
2014-02-21 19:52:09 +01:00
|
|
|
int experimental_bitstream;
|
2013-11-22 01:46:40 +01:00
|
|
|
};
|
|
|
|
|
2014-01-18 21:16:11 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
} // extern "C"
|
|
|
|
#endif
|
|
|
|
|
2013-11-22 01:46:40 +01:00
|
|
|
#endif // VPXENC_H_
|