| Index: source/libvpx/vp9/encoder/vp9_svc_layercontext.h
|
| diff --git a/source/libvpx/vp9/encoder/vp9_svc_layercontext.h b/source/libvpx/vp9/encoder/vp9_svc_layercontext.h
|
| index 5063d521f960f5cb24460b24dd7908c73830a3fb..b6a5ea5483589715a647812720287d19014ce0f4 100644
|
| --- a/source/libvpx/vp9/encoder/vp9_svc_layercontext.h
|
| +++ b/source/libvpx/vp9/encoder/vp9_svc_layercontext.h
|
| @@ -22,6 +22,7 @@ extern "C" {
|
| typedef struct {
|
| RATE_CONTROL rc;
|
| int target_bandwidth;
|
| + int spatial_layer_target_bandwidth; // Target for the spatial layer.
|
| double framerate;
|
| int avg_frame_size;
|
| int max_q;
|
| @@ -64,9 +65,11 @@ typedef struct {
|
| YV12_BUFFER_CONFIG scaled_frames[MAX_LAG_BUFFERS];
|
|
|
| // Layer context used for rate control in one pass temporal CBR mode or
|
| - // two pass spatial mode. Defined for temporal or spatial layers for now.
|
| - // Does not support temporal combined with spatial RC.
|
| - LAYER_CONTEXT layer_context[MAX(VPX_TS_MAX_LAYERS, VPX_SS_MAX_LAYERS)];
|
| + // two pass spatial mode.
|
| + LAYER_CONTEXT layer_context[VPX_MAX_LAYERS];
|
| + // Indicates what sort of temporal layering is used.
|
| + // Currently, this only works for CBR mode.
|
| + VP9E_TEMPORAL_LAYERING_MODE temporal_layering_mode;
|
| } SVC;
|
|
|
| struct VP9_COMP;
|
| @@ -110,6 +113,8 @@ struct lookahead_entry *vp9_svc_lookahead_pop(struct VP9_COMP *const cpi,
|
| // Start a frame and initialize svc parameters
|
| int vp9_svc_start_frame(struct VP9_COMP *const cpi);
|
|
|
| +int vp9_one_pass_cbr_svc_start_layer(struct VP9_COMP *const cpi);
|
| +
|
| #ifdef __cplusplus
|
| } // extern "C"
|
| #endif
|
|
|