Index: media/ffmpeg/ffmpeg_common.cc |
diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc |
index 05dcd17155cd5b09a6066780af3b3da6c7ddc14d..344e2656b9d4c4b004947aaf25df2e3ca01fb7e4 100644 |
--- a/media/ffmpeg/ffmpeg_common.cc |
+++ b/media/ffmpeg/ffmpeg_common.cc |
@@ -404,6 +404,11 @@ void AVStreamToVideoDecoderConfig( |
coded_size = natural_size; |
} |
+ // Pad out |coded_size| for subsampled YUV formats. |
+ coded_size.set_width((coded_size.width() + 1) / 2 * 2); |
+ if (format != VideoFrame::YV16) |
+ coded_size.set_height((coded_size.height() + 1) / 2 * 2); |
+ |
bool is_encrypted = false; |
AVDictionaryEntry* key = av_dict_get(stream->metadata, "enc_key_id", NULL, 0); |
if (key) |