[vlc-commits] picture: align pictures on 64 bytes

Steve Lhomme git at videolan.org
Tue Dec 18 18:14:28 CET 2018


vlc/vlc-3.0 | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Mon Oct  8 08:26:49 2018 +0200| [7f690d13dd353225549cfcd24a53cb0f9e9c9db8] | committer: Hugo Beauzée-Luyssen

picture: align pictures on 64 bytes

Code relying on AVX-2 (like dav1d) cannot work without an alignment of 32 bytes
at least. Even avcodec has a requirement of 64 (likely to get at least 32 on all
planes). So it's probably time to upgrade.

picture_Setup ensures a horizontal alignment to 32 bytes and a vertical to 16
bytes. So for all buffers allocated by the core, we have a size multiple of 512
bytes.

(cherry picked from commit 0667915e5ad073ca054eb22463d64af400da7ec5)
Signed-off-by: Hugo Beauzée-Luyssen <hugo at beauzee.fr>

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

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

diff --git a/src/misc/picture.c b/src/misc/picture.c
index 9a08255e16..33e9242e70 100644
--- a/src/misc/picture.c
+++ b/src/misc/picture.c
@@ -70,7 +70,7 @@ static int AllocatePicture( picture_t *p_pic )
         return VLC_ENOMEM;
     }
 
-    uint8_t *p_data = aligned_alloc( 16, i_bytes );
+    uint8_t *p_data = aligned_alloc( 64, i_bytes );
     if( i_bytes > 0 && p_data == NULL )
     {
         p_pic->i_planes = 0;



More information about the vlc-commits mailing list