[MOVED FROM BAD 049/134] vp8enc: Set VP8E_SET_CPUUSED to 0

This setting controls how much CPU can be used by the encoder, specified
in fractions of 16. Negative values mean strict enforcement of this
while positive values are adaptive.

The default value is -4, which means that we're not running as fast
as possible and probably are wasting some quality. 0 is the recommended
default by libvpx upstream.
This commit is contained in:
Sebastian Dröge 2010-06-14 15:56:24 +02:00
parent ec2c2b5fcc
commit 7f3e1a1484

View file

@ -701,13 +701,19 @@ gst_vp8_enc_handle_frame (GstBaseVideoEncoder * base_video_encoder,
status = vpx_codec_enc_init (&encoder->encoder, &vpx_codec_vp8_cx_algo,
&cfg, 0);
if (status) {
if (status != VPX_CODEC_OK) {
GST_ELEMENT_ERROR (encoder, LIBRARY, INIT,
("Failed to initialize encoder"), ("%s",
gst_vpx_error_name (status)));
return GST_FLOW_ERROR;
}
status = vpx_codec_control (&encoder->encoder, VP8E_SET_CPUUSED, 0);
if (status != VPX_CODEC_OK) {
GST_WARNING_OBJECT (encoder, "Failed to set VP8E_SET_CPUUSED to 0: %s",
gst_vpx_error_name (status));
}
gst_base_video_encoder_set_latency (base_video_encoder, 0,
gst_util_uint64_scale (encoder->max_latency,
base_video_encoder->state.fps_d * GST_SECOND,