]> git.sesse.net Git - vlc/commitdiff
avcodec: fix direct rendering with some codecs
authorRafaël Carré <funman@videolan.org>
Sat, 10 Dec 2011 21:58:35 +0000 (16:58 -0500)
committerRafaël Carré <funman@videolan.org>
Sat, 10 Dec 2011 21:58:35 +0000 (16:58 -0500)
Provide edge buffers when CODEC_FLAG_EMU_EDGE is set
Fix ProRes playback with direct rendering

modules/codec/avcodec/video.c

index c26c7a0ef806182f9fc56b9ae06eedfb43020fc4..4cf2e30738961d4cdbb46de8cabb452b681eea6f 100644 (file)
@@ -147,8 +147,9 @@ static inline picture_t *ffmpeg_NewPictBuf( decoder_t *p_dec,
 {
     decoder_sys_t *p_sys = p_dec->p_sys;
 
-    p_dec->fmt_out.video.i_width = p_context->width;
-    p_dec->fmt_out.video.i_height = p_context->height;
+    unsigned edge = p_sys->b_direct_rendering ? avcodec_get_edge_width() : 0;
+    p_dec->fmt_out.video.i_width = p_context->width + edge;
+    p_dec->fmt_out.video.i_height = p_context->height + edge;
 
     if( !p_context->width || !p_context->height )
     {