vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Sun Dec 30 
19:08:18 2018 +0200| [daf2318b7159740e6bf89fb8766ffafcb78eb799] | committer: 
Rémi Denis-Courmont

display: do not copy opaque pictures

If the video format is opaque, the useful data is accessed through
picture_t.p_sys. As such, copying a picture into the display pool will
not work.

So do not copy pictures in that case, and instead assume that the
upstream converter or decoder agree with the display on the semantics
of picture_t.p_sys.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=daf2318b7159740e6bf89fb8766ffafcb78eb799
---

 src/video_output/display.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/video_output/display.c b/src/video_output/display.c
index 421b6048dd..c68dcda0fb 100644
--- a/src/video_output/display.c
+++ b/src/video_output/display.c
@@ -628,7 +628,7 @@ picture_t *vout_FilterDisplay(vout_display_t *vd, picture_t 
*picture)
 
     picture = filter_chain_VideoFilter(osys->converters, picture);
 
-    if (picture != NULL && vd->pool != NULL) {
+    if (picture != NULL && vd->pool != NULL && picture->i_planes > 0) {
         picture_pool_t *pool = vd->pool(vd, 3);
 
         if (!picture_pool_OwnsPic(pool, picture)) {

_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to