Index: media/ffmpeg/ffmpeg_common.cc |
diff --git a/media/ffmpeg/ffmpeg_common.cc b/media/ffmpeg/ffmpeg_common.cc |
index 6e7bd155cd80d9f103cfbd7670e8e5381263cd3e..10669a943574553be5576650923eb0345437aff3 100644 |
--- a/media/ffmpeg/ffmpeg_common.cc |
+++ b/media/ffmpeg/ffmpeg_common.cc |
@@ -401,6 +401,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) |