comparison libmpcodecs/native/RTjpegN.c @ 14896:9ddae5897422

Make nuv files work on bigendian (but old nuv files created with mencoder wont play anymore - before they would have worked with mplayer on be)
author reimar
date Thu, 03 Mar 2005 10:19:56 +0000
parents 38572280e8e7
children 27b0d49988b2
comparison
equal deleted inserted replaced
14895:7515d2e33076 14896:9ddae5897422
29 #include "config.h" 29 #include "config.h"
30 #ifdef HAVE_MMX 30 #ifdef HAVE_MMX
31 #define MMX 31 #define MMX
32 #endif 32 #endif
33 33
34 #include "bswap.h"
34 #include "RTjpegN.h" 35 #include "RTjpegN.h"
35 36
36 #ifdef MMX 37 #ifdef MMX
37 #include "mmx.h" 38 #include "mmx.h"
38 #endif 39 #endif
2818 2819
2819 RTjpeg_dct_init(); 2820 RTjpeg_dct_init();
2820 RTjpeg_quant_init(); 2821 RTjpeg_quant_init();
2821 2822
2822 for(i=0; i<64; i++) 2823 for(i=0; i<64; i++)
2823 buf[i]=RTjpeg_liqt[i]; 2824 buf[i]=le2me_32(RTjpeg_liqt[i]);
2824 for(i=0; i<64; i++) 2825 for(i=0; i<64; i++)
2825 buf[64+i]=RTjpeg_ciqt[i]; 2826 buf[64+i]=le2me_32(RTjpeg_ciqt[i]);
2826 } 2827 }
2827 2828
2828 void RTjpeg_init_decompress(__u32 *buf, int width, int height) 2829 void RTjpeg_init_decompress(__u32 *buf, int width, int height)
2829 { 2830 {
2830 int i; 2831 int i;
2838 RTjpeg_Cwidth = RTjpeg_width>>4; 2839 RTjpeg_Cwidth = RTjpeg_width>>4;
2839 RTjpeg_Csize= (width>>1) * height; 2840 RTjpeg_Csize= (width>>1) * height;
2840 2841
2841 for(i=0; i<64; i++) 2842 for(i=0; i<64; i++)
2842 { 2843 {
2843 RTjpeg_liqt[i]=buf[i]; 2844 RTjpeg_liqt[i]=le2me_32(buf[i]);
2844 RTjpeg_ciqt[i]=buf[i+64]; 2845 RTjpeg_ciqt[i]=le2me_32(buf[i+64]);
2845 } 2846 }
2846 2847
2847 RTjpeg_lb8=0; 2848 RTjpeg_lb8=0;
2848 while(RTjpeg_liqt[RTjpeg_ZZ[++RTjpeg_lb8]]<=8); 2849 while(RTjpeg_liqt[RTjpeg_ZZ[++RTjpeg_lb8]]<=8);
2849 RTjpeg_lb8--; 2850 RTjpeg_lb8--;