зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1927533 - Apply mozilla patches for libvpx r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D227074
This commit is contained in:
Родитель
ab208536a0
Коммит
60605cfde6
|
@ -994,10 +994,19 @@ static vpx_codec_err_t vp8e_encode(vpx_codec_alg_priv_t *ctx,
|
|||
|
||||
res = image2yuvconfig(img, &sd);
|
||||
|
||||
if (vp8_receive_raw_frame(ctx->cpi, ctx->next_frame_flag | lib_flags, &sd,
|
||||
dst_time_stamp, dst_end_time_stamp)) {
|
||||
VP8_COMP *cpi = (VP8_COMP *)ctx->cpi;
|
||||
res = update_error_state(ctx, &cpi->common.error);
|
||||
if (sd.y_width != ctx->cfg.g_w || sd.y_height != ctx->cfg.g_h) {
|
||||
/* from vpx_encoder.h for g_w/g_h:
|
||||
"Note that the frames passed as input to the encoder must have this
|
||||
resolution"
|
||||
*/
|
||||
ctx->base.err_detail = "Invalid input frame resolution";
|
||||
res = VPX_CODEC_INVALID_PARAM;
|
||||
} else {
|
||||
if (vp8_receive_raw_frame(ctx->cpi, ctx->next_frame_flag | lib_flags,
|
||||
&sd, dst_time_stamp, dst_end_time_stamp)) {
|
||||
VP8_COMP *cpi = (VP8_COMP *)ctx->cpi;
|
||||
res = update_error_state(ctx, &cpi->common.error);
|
||||
}
|
||||
}
|
||||
|
||||
/* reset for next frame */
|
||||
|
|
|
@ -1466,13 +1466,22 @@ static vpx_codec_err_t encoder_encode(vpx_codec_alg_priv_t *ctx,
|
|||
timebase_units_to_ticks(timebase_in_ts, pts_end);
|
||||
res = image2yuvconfig(img, &sd);
|
||||
|
||||
// Store the original flags in to the frame buffer. Will extract the
|
||||
// key frame flag when we actually encode this frame.
|
||||
if (vp9_receive_raw_frame(cpi, flags | ctx->next_frame_flags, &sd,
|
||||
if (sd.y_width != ctx->cfg.g_w || sd.y_height != ctx->cfg.g_h) {
|
||||
/* from vpx_encoder.h for g_w/g_h:
|
||||
"Note that the frames passed as input to the encoder must have this
|
||||
resolution"
|
||||
*/
|
||||
ctx->base.err_detail = "Invalid input frame resolution";
|
||||
res = VPX_CODEC_INVALID_PARAM;
|
||||
} else {
|
||||
// Store the original flags in to the frame buffer. Will extract the
|
||||
// key frame flag when we actually encode this frame.
|
||||
if (vp9_receive_raw_frame(cpi, flags | ctx->next_frame_flags, &sd,
|
||||
dst_time_stamp, dst_end_time_stamp)) {
|
||||
res = update_error_state(ctx, &cpi->common.error);
|
||||
res = update_error_state(ctx, &cpi->common.error);
|
||||
}
|
||||
ctx->next_frame_flags = 0;
|
||||
}
|
||||
ctx->next_frame_flags = 0;
|
||||
}
|
||||
|
||||
cx_data = ctx->cx_data;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include <sys/sysctl.h>
|
||||
#endif
|
||||
|
||||
#if !CONFIG_RUNTIME_CPU_DETECT
|
||||
#if !CONFIG_RUNTIME_CPU_DETECT || defined(__OpenBSD__)
|
||||
|
||||
static int arm_get_cpu_caps(void) {
|
||||
// This function should actually be a no-op. There is no way to adjust any of
|
||||
|
@ -29,7 +29,7 @@ static int arm_get_cpu_caps(void) {
|
|||
return flags;
|
||||
}
|
||||
|
||||
#elif defined(__APPLE__) // end !CONFIG_RUNTIME_CPU_DETECT
|
||||
#elif defined(__APPLE__) // end !CONFIG_RUNTIME_CPU_DETECT || defined(__OpenBSD__)
|
||||
|
||||
// sysctlbyname() parameter documentation for instruction set characteristics:
|
||||
// https://developer.apple.com/documentation/kernel/1387446-sysctlbyname/determining_instruction_set_characteristics
|
||||
|
|
Загрузка…
Ссылка в новой задаче