#include "./args.h" #include "./ivfenc.h" #include "./tools_common.h" #include "vpx/svc_context.h" #include "vpx/vp8cx.h" #include "vpx/vpx_encoder.h" static const struct arg_enum_list encoding_mode_enum[] = { {"i", INTER_LAYER_PREDICTION_I}, {"alt-ip", ALT_INTER_LAYER_PREDICTION_IP}, {"ip", INTER_LAYER_PREDICTION_IP}, {"gf", USE_GOLDEN_FRAME}, {NULL, 0} }; static const arg_def_t encoding_mode_arg = ARG_DEF_ENUM( "m", "encoding-mode", 1, "Encoding mode algorithm", encoding_mode_enum); static const arg_def_t skip_frames_arg = ARG_DEF("s", "skip-frames", 1, "input frames to skip"); static const arg_def_t frames_arg = ARG_DEF("f", "frames", 1, "number of frames to encode"); static const arg_def_t width_arg = ARG_DEF("w", "width", 1, "source width"); static const arg_def_t height_arg = ARG_DEF("h", "height", 1, "source height"); static const arg_def_t timebase_arg = ARG_DEF("t", "timebase", 1, "timebase (num/den)"); static const arg_def_t bitrate_arg = ARG_DEF( "b", "target-bitrate", 1, "encoding bitrate, in kilobits per second"); static const arg_def_t layers_arg = ARG_DEF("l", "layers", 1, "number of SVC layers"); static const arg_def_t kf_dist_arg = ARG_DEF("k", "kf-dist", 1, "number of frames between keyframes"); static const arg_def_t scale_factors_arg =
static const arg_def_t lag_in_frame_arg = ARG_DEF(NULL, "lag-in-frames", 1, "Number of frame to input before " "generating any outputs"); static const arg_def_t rc_end_usage_arg = ARG_DEF(NULL, "rc-end-usage", 1, "0 - 3: VBR, CBR, CQ, Q"); #if CONFIG_VP9_HIGHBITDEPTH static const struct arg_enum_list bitdepth_enum[] = { {"8", VPX_BITS_8}, {"10", VPX_BITS_10}, {"12", VPX_BITS_12}, {NULL, 0} }; static const arg_def_t bitdepth_arg = ARG_DEF_ENUM("d", "bit-depth", 1, "Bit depth for codec 8, 10 or 12. ", bitdepth_enum); #endif // CONFIG_VP9_HIGHBITDEPTH static const arg_def_t *svc_args[] = { &frames_arg, &width_arg, &height_arg, &timebase_arg, &bitrate_arg, &skip_frames_arg, &spatial_layers_arg, &kf_dist_arg, &scale_factors_arg, &passes_arg, &pass_arg, &fpf_name_arg, &min_q_arg, &max_q_arg, &min_bitrate_arg, &max_bitrate_arg, &temporal_layers_arg, &lag_in_frame_arg, #if CONFIG_VP9_HIGHBITDEPTH &bitdepth_arg, #endif &rc_end_usage_arg, NULL };