Index: source/libvpx/vpx/vpx_encoder.h |
=================================================================== |
--- source/libvpx/vpx/vpx_encoder.h (revision 292072) |
+++ source/libvpx/vpx/vpx_encoder.h (working copy) |
@@ -163,6 +163,7 @@ |
VPX_CODEC_PSNR_PKT, /**< PSNR statistics for this frame */ |
#if CONFIG_SPATIAL_SVC |
VPX_CODEC_SPATIAL_SVC_LAYER_SIZES, /**< Sizes for each layer in this frame*/ |
+ VPX_CODEC_SPATIAL_SVC_LAYER_PSNR, /**< PSNR for each layer in this frame*/ |
#endif |
VPX_CODEC_CUSTOM_PKT = 256 /**< Algorithm extensions */ |
}; |
@@ -202,6 +203,7 @@ |
vpx_fixed_buf_t raw; /**< data for arbitrary packets */ |
#if CONFIG_SPATIAL_SVC |
size_t layer_sizes[VPX_SS_MAX_LAYERS]; |
+ struct vpx_psnr_pkt layer_psnr[VPX_SS_MAX_LAYERS]; |
#endif |
/* This packet size is fixed to allow codecs to extend this |
@@ -709,7 +711,19 @@ |
unsigned int ts_layer_id[VPX_TS_MAX_PERIODICITY]; |
} vpx_codec_enc_cfg_t; /**< alias for struct vpx_codec_enc_cfg */ |
+ /*!\brief vp9 svc extra configure parameters |
+ * |
+ * This defines max/min quantizers and scale factors for each layer |
+ * |
+ */ |
+ typedef struct vpx_svc_parameters { |
+ int max_quantizers[VPX_SS_MAX_LAYERS]; |
+ int min_quantizers[VPX_SS_MAX_LAYERS]; |
+ int scaling_factor_num[VPX_SS_MAX_LAYERS]; |
+ int scaling_factor_den[VPX_SS_MAX_LAYERS]; |
+ } vpx_svc_extra_cfg_t; |
+ |
/*!\brief Initialize an encoder instance |
* |
* Initializes a encoder context using the given interface. Applications |