Describes the encoder algorithm interface to applications. More...

Classes

struct  vpx_fixed_buf
 Generic fixed size buffer structure. More...
 
struct  vpx_codec_cx_pkt
 Encoder output packet. More...
 
struct  vpx_codec_enc_output_cx_cb_pair
 Callback function pointer / user data pair storage. More...
 
struct  vpx_rational
 Rational Number. More...
 
struct  vpx_codec_enc_cfg
 Encoder configuration structure. More...
 
struct  vpx_svc_parameters
 vp9 svc extra configure parameters More...
 

Typedefs

typedef struct vpx_fixed_buf vpx_fixed_buf_t
 Generic fixed size buffer structure. More...
 
typedef int64_t vpx_codec_pts_t
 Time Stamp Type. More...
 
typedef uint32_t vpx_codec_frame_flags_t
 Compressed Frame Flags. More...
 
typedef uint32_t vpx_codec_er_flags_t
 Error Resilient flags. More...
 
typedef struct vpx_codec_cx_pkt vpx_codec_cx_pkt_t
 Encoder output packet. More...
 
typedef void(* vpx_codec_enc_output_cx_pkt_cb_fn_t) (vpx_codec_cx_pkt_t *pkt, void *user_data)
 Encoder return output buffer callback. More...
 
typedef struct vpx_codec_enc_output_cx_cb_pair vpx_codec_priv_output_cx_pkt_cb_pair_t
 Callback function pointer / user data pair storage. More...
 
typedef struct vpx_rational vpx_rational_t
 Rational Number. More...
 
typedef long vpx_enc_frame_flags_t
 Encoded Frame Flags. More...
 
typedef struct vpx_codec_enc_cfg vpx_codec_enc_cfg_t
 Encoder configuration structure. More...
 
typedef struct vpx_svc_parameters vpx_svc_extra_cfg_t
 vp9 svc extra configure parameters More...
 

Enumerations

enum  vpx_codec_cx_pkt_kind {
  VPX_CODEC_CX_FRAME_PKT , VPX_CODEC_STATS_PKT , VPX_CODEC_FPMB_STATS_PKT , VPX_CODEC_PSNR_PKT ,
  VPX_CODEC_CUSTOM_PKT = 256 , VPX_CODEC_CX_FRAME_PKT , VPX_CODEC_STATS_PKT , VPX_CODEC_FPMB_STATS_PKT ,
  VPX_CODEC_PSNR_PKT , VPX_CODEC_SPATIAL_SVC_LAYER_SIZES , VPX_CODEC_SPATIAL_SVC_LAYER_PSNR , VPX_CODEC_CUSTOM_PKT = 256
}
 Encoder output packet variants. More...
 
enum  vpx_enc_pass {
  VPX_RC_ONE_PASS , VPX_RC_FIRST_PASS , VPX_RC_LAST_PASS , VPX_RC_ONE_PASS ,
  VPX_RC_FIRST_PASS , VPX_RC_LAST_PASS
}
 Multi-pass Encoding Pass. More...
 
enum  vpx_rc_mode {
  VPX_VBR , VPX_CBR , VPX_CQ , VPX_Q ,
  VPX_VBR , VPX_CBR , VPX_CQ , VPX_Q
}
 Rate control mode. More...
 
enum  vpx_kf_mode {
  VPX_KF_FIXED , VPX_KF_AUTO , VPX_KF_DISABLED = 0 , VPX_KF_FIXED ,
  VPX_KF_AUTO , VPX_KF_DISABLED = 0
}
 Keyframe placement mode. More...
 

Functions

vpx_codec_err_t vpx_codec_enc_init_ver (vpx_codec_ctx_t *ctx, vpx_codec_iface_t *iface, const vpx_codec_enc_cfg_t *cfg, vpx_codec_flags_t flags, int ver)
 Initialize an encoder instance. More...
 
vpx_codec_err_t vpx_codec_enc_init_multi_ver (vpx_codec_ctx_t *ctx, vpx_codec_iface_t *iface, vpx_codec_enc_cfg_t *cfg, int num_enc, vpx_codec_flags_t flags, vpx_rational_t *dsf, int ver)
 Initialize multi-encoder instance. More...
 
vpx_codec_err_t vpx_codec_enc_config_default (vpx_codec_iface_t *iface, vpx_codec_enc_cfg_t *cfg, unsigned int usage)
 Get a default configuration. More...
 
vpx_codec_err_t vpx_codec_enc_config_set (vpx_codec_ctx_t *ctx, const vpx_codec_enc_cfg_t *cfg)
 Set or change configuration. More...
 
vpx_fixed_buf_tvpx_codec_get_global_headers (vpx_codec_ctx_t *ctx)
 Get global stream headers. More...
 
vpx_codec_err_t vpx_codec_encode (vpx_codec_ctx_t *ctx, const vpx_image_t *img, vpx_codec_pts_t pts, unsigned long duration, vpx_enc_frame_flags_t flags, unsigned long deadline)
 Encode a frame. More...
 
vpx_codec_err_t vpx_codec_set_cx_data_buf (vpx_codec_ctx_t *ctx, const vpx_fixed_buf_t *buf, unsigned int pad_before, unsigned int pad_after)
 Set compressed data output buffer. More...
 
const vpx_codec_cx_pkt_tvpx_codec_get_cx_data (vpx_codec_ctx_t *ctx, vpx_codec_iter_t *iter)
 Encoded data iterator. More...
 
const vpx_image_tvpx_codec_get_preview_frame (vpx_codec_ctx_t *ctx)
 Get Preview Frame. More...
 

Detailed Description

Describes the encoder algorithm interface to applications.

This file describes the interface between an application and a video encoder algorithm.