diff libmpcodecs/vd_realvid.c @ 14568:bfdec335c4d4

Play RV30 with 8-elements cmsg24 Fixes rv30_cmsg24_test.rmvb (now in samples)
author rtognimp
date Sat, 22 Jan 2005 00:06:59 +0000
parents 37b3dd217cdf
children 3758536dcef3
line wrap: on
line diff
--- a/libmpcodecs/vd_realvid.c	Fri Jan 21 21:36:30 2005 +0000
+++ b/libmpcodecs/vd_realvid.c	Sat Jan 22 00:06:59 2005 +0000
@@ -253,7 +253,10 @@
 	}
 	// setup rv30 codec (codec sub-type and image dimensions):
 	if((sh->format<=0x30335652) && (extrahdr[1]>=0x20200002)){
-	    uint32_t cmsg24[4]={sh->disp_w,sh->disp_h,((unsigned short *)extrahdr)[4],((unsigned short *)extrahdr)[5]};
+	    // We could read nonsense data while filling this, but input is big enough so no sig11
+	    uint32_t cmsg24[8]={sh->disp_w,sh->disp_h,((unsigned char *)extrahdr)[8]*4,((unsigned char *)extrahdr)[9]*4,
+	                        ((unsigned char *)extrahdr)[10]*4,((unsigned char *)extrahdr)[11]*4,
+	                        ((unsigned char *)extrahdr)[12]*4,((unsigned char *)extrahdr)[13]*4};
 	    cmsg_data_t cmsg_data={0x24,1+((extrahdr[0]>>16)&7), &cmsg24[0]};
 
 #ifdef USE_WIN32DLL