From: Matthew M. <mmc...@gm...> - 2010-05-01 08:45:08
|
Hi, First question - is there anyone out there? Is this forum still alive? I have libmpeg2 version 5.0.1 compiling in VS2005. My test file, based on sample5.c, works perfectly, provided I don't enable SSE2. That is, if I change mpeg2_init() to use mpeg2_accel(0); or mpeg2_accel(MPEG2_ACCEL_X86_MMX); or mpeg2_accel(MPEG2_ACCEL_X86_MMXEXT); everything works fine. However, if I allow auto-detection mpeg2_accel(MPEG2_ACCEL_DETECT); it chooses sse2 acceleration and I get an exception on the very first call to mpeg2_idct_copy in slice_intra_DCT in mpeg2_slice: "First-chance exception at 0x00445fa3 in icMPEG2Test.exe: 0xC0000005: Access violation reading location 0xffffffff." Stack location is: _mpeg2_idct_copy_sse2() + 0x13 bytes In my project, I'm linking to all the .obj files provided in directory \libmpeg2\vc++ Not quite sure how to proceed. I assume the source files for the .obj files in vc++ cannot be built with VC++. (I tried renaming __asm__ to __asm and __volatile__ to volatile, but it didn't get me far). Any advice appreciated, Matt - libmpeg2 v5.0.1, Windows XP, Intel Core2 Quad CPU Q9400, Visual Studio 2005 -- Matthew McGinity iCinema Centre for Interactive Cinema Research University of New South Wales, Sydney, Australia http://www.icinema.unsw.edu.au Tel: 0405 115 322 |