[Wine] X3 Reunion sound+movies

Jochen blackdrag at gmx.org
Sun Apr 27 08:29:19 CDT 2008


Hi all,

system: 64bit, ubuntu 8.04, wine 0.9.60

X3 Renuion is listed in the databse as not having a working sound and 
movies. That's true, but I tried to overcome this. I noticed that a lot 
of problems come form the neraly not implemented amstream.dll. Since 
this is for streaming audio and video I thought that maybe installing 
the Windows Media Player might help here a bit. I used wine-doors to 
install WM6.4 and it did indeed provide an amtream.dll, but the game was 
not better... because the native amstream.dll was not used..

The game has several mp3 files and also movie files in some mpeg format. 
So I frist tried to let the wmplayer play the mp3 files and I it did 
nearly work with the amstream.dll.. nearly because I got some cracking 
sound as if the sound playing is much to slow and it skips the rest to 
keep the timing. I then used forced the usage of the native amstram.dll 
and wmplyer did not give a sound anymore.. The problem was, that all the 
files installed for wmplayer, all the codecs and dlls, are not 
registered. I had to manually register them using regsrv32.... about 12 
files or os.That's where my first question is...

Why do I have to do so? Isn't there a more automated way I can use to 
accomplish this?

Anyway, after fixing all the .dll or .ax file not found messages I got 
the mp3 playing in good quality. So I got back to my game and tried it 
again. This time quartz.dll made a problem, so I had to use a native 
version of this one too. Next thing was, that the intor played with no 
video, but audio. The game menu contains no the background music as 
well, not only the fx sounds. But video was still not playing.

So I got back to wmplayer and tried the movie. I know they play in vnc, 
so I thought that they may play in wmplayer too. But all wmplayer does 
is to try to find a codec and then it does crash. I tried several things 
and one time I got it to lokup the site even... I guess that was when I 
added the internet explorer, but it did still crash. Possibly another 
dll is not registered or properly installed, I don't know.

So I failed at getting the mpeg to work and the best I got was the 
background sound working, but then the game often crashes. Also there 
are still missing ole components:

err:ole:CoGetClassObject class {94297043-bd82-4dfd-b0de-8177739c6d20} 
not registered

as for wmplayer, I always tried without the native quartz.dll, but after 
using the native version the video did play all of a sudden. But there 
are loads of errors:

err:ole:ITypeInfo_fnInvoke did not find member id 33, flags 0x4!
err:ole:TLB_ReadTypeLib Loading of typelib 
L"C:\\Windows\\System\\amcompat.tlb" failed with error 2
err:ole:TLB_ReadTypeLib Loading of typelib 
L"C:\\Windows\\System\\amcompat.tlb" failed with error 2
err:ole:TLB_ReadTypeLib Loading of typelib 
L"C:\\Windows\\System\\nscompat.tlb" failed with error 2
err:ole:apartment_getclassobject DllGetClassObject returned error 0x80040111
err:ole:CoGetClassObject no class object 
{da4e3da0-d07d-11d0-bd50-00a0c911ce86} could be created for context 0x1
err:ddraw:IDirectDrawImpl_QueryInterface (0x187440) The App is 
requesting a D3D device, but a non-OpenGL surface type was choosen. 
Prepare for trouble!
err:ddraw:IDirectDrawImpl_QueryInterface  (0x187440) You may want to 
contact wine-devel for help
err:ddraw:IDirectDrawImpl_QueryInterface 
(0x187440)->({aca12120-3356-11d1-8fcf-00c04fc29b4e}, 0x1873d8): No 
interface found
[...]
err:d3d_surface:IWineGDISurfaceImpl_PrivateSetup (0x192850) Overlays not 
yet supported by GDI surfaces
err:ddraw:IDirectDrawImpl_CreateNewSurface IWineD3DDevice::CreateSurface 
failed. hr = 8876086c
[...]

and the game of course still has problems. I already posted the error 
above, the full trace is:

fixme:d3d:IWineD3DImpl_FillGLCaps OpenGL implementation supports 32 
vertex samplers and 32 total samplers
fixme:d3d:IWineD3DImpl_FillGLCaps Expected vertex samplers + 
MAX_TEXTURES(=8) > combined_samplers
fixme:win:EnumDisplayDevicesW ((null),0,0x32f640,0x00000000), stub!
fixme:dinput:IDirectInputAImpl_GetDeviceStatus 
(0x13d1c0)->({2a2a2a2a-2a2a-2a2a-2a2a-2a2a2a2a2a2a}): stub
fixme:dinput:SysMouseAImpl_Acquire Clipping cursor to (125,11)-(1155,804)
fixme:d3d9:IDirect3DDevice9Impl_CreateCubeTexture (0x1388b8) call to 
IWineD3DDevice_CreateCubeTexture failed
err:ole:CoGetClassObject class {94297043-bd82-4dfd-b0de-8177739c6d20} 
not registered
err:ole:CoGetClassObject class {94297043-bd82-4dfd-b0de-8177739c6d20} 
not registered
err:ole:CoGetClassObject no class object 
{94297043-bd82-4dfd-b0de-8177739c6d20} could be created for context 0x3
fixme:msacm:acmFormatEnumW Unsupported fdwEnum values 00100000
fixme:msacm:acmFormatEnumW Unsupported fdwEnum values 00100000
fixme:d3d:IWineD3DDeviceImpl_CreateQuery (0x13e2c0) Unhandled query type 4
fixme:dinput:SysMouseAImpl_Acquire Clipping cursor to (125,11)-(1155,804)
err:ole:CoGetClassObject class {94297043-bd82-4dfd-b0de-8177739c6d20} 
not registered
err:ole:CoGetClassObject class {94297043-bd82-4dfd-b0de-8177739c6d20} 
not registered
err:ole:CoGetClassObject no class object 
{94297043-bd82-4dfd-b0de-8177739c6d20} could be created for context 0x3
wine: Unhandled page fault on read access to 0x0d960000 at address 
0x480344e2 (thread 0025), starting debugger...
Unhandled exception: page fault on read access to 0x0d960000 in 32-bit 
code (0x480344e2).
err:dbghelp:pe_load_msc_debug_info -Debug info stripped, but no .DBG 
file in module L"strmdll"
Register dump:
  CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
  EIP:480344e2 ESP:7c85a53c EBP:7c85a7d4 EFLAGS:00210293(   - 00 
RISA1C)
  EAX:0d960000 EBX:00000100 ECX:00016552 EDX:00000007
  ESI:00000000 EDI:0d8ad570
Stack dump:
0x7c85a53c:  7c85a838 0d713838 7c85a834 00000000
0x7c85a54c:  00000000 00000000 7c85a6cc 00000001
0x7c85a55c:  7b88ea8f 00000000 7c85a5ec 00000001
0x7c85a56c:  00000000 00008000 00000000 00000000
0x7c85a57c:  00000000 00000000 7ece570c 7c85a598
0x7c85a58c:  7ecb4630 7ed04ce0 7ece570c 7c85a8e8
Backtrace:
=>1 0x480344e2 in strmdll (+0x344e2) (0x7c85a7d4)
   2 0x48006691 in strmdll (+0x6691) (0x7c85a804)
   3 0x48003d80 in strmdll (+0x3d80) (0x7c85a83c)
err:dbghelp:pe_load_dbg_file -Unable to peruse .DBG file "dxmasf.dbg" ("")
   4 0x1ff0f77a in dxmasf (+0xf77a) (0x7c85a870)
   5 0x1ff10397 in dxmasf (+0x10397) (0x7c85a884)
   6 0x48004707 in strmdll (+0x4707) (0x7c85a8b8)
   7 0x480043ce in strmdll (+0x43ce) (0x7c85a8d4)
   8 0x7ecc29ca WINPROC_wrapper+0x1a() in user32 (0x7c85a904)
   9 0x7ecc30ae WINPROC_wrapper+0x6fe() in user32 (0x7c85a944)
   10 0x7ecc9431 in user32 (+0xb9431) (0x7c85a984)
   11 0x7ec8aa06 DispatchMessageA+0x96() in user32 (0x7c85a9c4)
   12 0x480042cb in strmdll (+0x42cb) (0x7c85a9f4)
   13 0x48004296 in strmdll (+0x4296) (0x7c85aa30)
   14 0x480041be in strmdll (+0x41be) (0x7c85aa38)
   15 0x7bc6ba3e call_thread_entry_point+0xe() in ntdll (0x7c85aa48)
   16 0x7bc6c0d2 in ntdll (+0x5c0d2) (0x7c85aae8)
   17 0x7bc6c2ec in ntdll (+0x5c2ec) (0x7c85b3d8)
   18 0xf7df74fb start_thread+0xcb() in libpthread.so.0 (0x7c85b4c8)
   19 0xf7d7b08e __clone+0x5e() in libc.so.6 (0x00000000)
0x480344e2: cmpl	$0x200,0x0(%eax)
Modules:
Module	Address			Debug info	Name (135 modules)
PE	  330000-  343000	Deferred        zlib1
PE	  400000-  6eb000	Deferred        x3
PE	  6f0000-  93f000	Deferred        d3dx9_27
PE	 dce0000- de39000	Deferred        quartz
PE	10000000-100d6000	Deferred        imgdll
PE	1c400000-1c418000	Deferred        l3codecx.ax
PE	1ff00000-1ff7d000	Export          dxmasf
PE	35600000-35614000	Deferred        amstream
PE	41b00000-41b28000	Deferred        drmclien
PE	48000000-48040000	Export          strmdll
ELF	7b800000-7b92c000	Deferred        kernel32<elf>
   \-PE	7b820000-7b92c000	\               kernel32
ELF	7bc00000-7bca4000	Export          ntdll<elf>
   \-PE	7bc10000-7bca4000	\               ntdll
ELF	7bf00000-7bf03000	Deferred        <wine-loader>
ELF	7c488000-7c4de000	Deferred        ddraw<elf>
   \-PE	7c490000-7c4de000	\               ddraw
ELF	7c4de000-7c4f7000	Deferred        ddrawex<elf>
   \-PE	7c4e0000-7c4f7000	\               ddrawex
ELF	7c4f7000-7c50b000	Deferred        avicap32<elf>
   \-PE	7c500000-7c50b000	\               avicap32
ELF	7c50b000-7c529000	Deferred        devenum<elf>
   \-PE	7c510000-7c529000	\               devenum
ELF	7c85c000-7c888000	Deferred        ws2_32<elf>
   \-PE	7c860000-7c888000	\               ws2_32
ELF	7c888000-7c8a2000	Deferred        wsock32<elf>
   \-PE	7c890000-7c8a2000	\               wsock32
ELF	7c8a2000-7c8c3000	Deferred        mpr<elf>
   \-PE	7c8b0000-7c8c3000	\               mpr
ELF	7c8c3000-7c911000	Deferred        wininet<elf>
   \-PE	7c8d0000-7c911000	\               wininet
ELF	7c911000-7c950000	Deferred        urlmon<elf>
   \-PE	7c920000-7c950000	\               urlmon
ELF	7d0ce000-7d170000	Deferred        oleaut32<elf>
   \-PE	7d0e0000-7d170000	\               oleaut32
ELF	7d1f6000-7dd0b000	Deferred        libglcore.so.1
ELF	7dd0b000-7ddaf000	Deferred        libgl.so.1
ELF	7ddd2000-7dddd000	Deferred        libgcc_s.so.1
PE	7dddd000-7dde1000	Deferred        libasound_module_rate_speexrate.
ELF	7de3d000-7de8a000	Deferred        libgcrypt.so.11
ELF	7de8a000-7de9a000	Deferred        libtasn1.so.3
ELF	7de9a000-7decc000	Deferred        libcrypt.so.1
ELF	7decc000-7df41000	Deferred        libgnutls.so.13
ELF	7df41000-7df64000	Deferred        libk5crypto.so.3
ELF	7df64000-7dff1000	Deferred        libkrb5.so.3
ELF	7dff1000-7e01a000	Deferred        libgssapi_krb5.so.2
ELF	7e01a000-7e04d000	Deferred        libcups.so.2
ELF	7e05f000-7e061000	Deferred        libnvidia-tls.so.1
ELF	7e061000-7e093000	Deferred        uxtheme<elf>
   \-PE	7e070000-7e093000	\               uxtheme
ELF	7e093000-7e0b9000	Deferred        msacm32<elf>
   \-PE	7e0a0000-7e0b9000	\               msacm32
ELF	7e0b9000-7e0d0000	Deferred        msacm32<elf>
   \-PE	7e0c0000-7e0d0000	\               msacm32
ELF	7e0d0000-7e193000	Deferred        libasound.so.2
ELF	7e193000-7e1a7000	Deferred        midimap<elf>
   \-PE	7e1a0000-7e1a7000	\               midimap
ELF	7e1a7000-7e1dd000	Deferred        winealsa<elf>
   \-PE	7e1b0000-7e1dd000	\               winealsa
ELF	7e202000-7e20b000	Deferred        libxcursor.so.1
ELF	7e20b000-7e210000	Deferred        libxfixes.so.3
ELF	7e210000-7e213000	Deferred        libxcomposite.so.1
ELF	7e213000-7e219000	Deferred        libxrandr.so.2
ELF	7e219000-7e221000	Deferred        libxrender.so.1
ELF	7e221000-7e224000	Deferred        libxinerama.so.1
ELF	7e224000-7e242000	Deferred        imm32<elf>
   \-PE	7e230000-7e242000	\               imm32
ELF	7e242000-7e247000	Deferred        libxdmcp.so.6
ELF	7e247000-7e25f000	Deferred        libxcb.so.1
ELF	7e25f000-7e262000	Deferred        libxau.so.6
ELF	7e262000-7e349000	Deferred        libx11.so.6
ELF	7e349000-7e357000	Deferred        libxext.so.6
ELF	7e357000-7e35c000	Deferred        libxxf86vm.so.1
ELF	7e35c000-7e360000	Deferred        libgpg-error.so.0
ELF	7e360000-7e363000	Deferred        libkeyutils.so.1
ELF	7e363000-7e36b000	Deferred        libkrb5support.so.0
ELF	7e36b000-7e36e000	Deferred        libcom_err.so.2
ELF	7e370000-7e406000	Deferred        winex11<elf>
   \-PE	7e380000-7e406000	\               winex11
ELF	7e431000-7e452000	Deferred        libexpat.so.1
ELF	7e452000-7e47c000	Deferred        libfontconfig.so.1
ELF	7e47c000-7e47e000	Deferred        libxcb-xlib.so.0
ELF	7e490000-7e4a5000	Deferred        libz.so.1
ELF	7e4a5000-7e515000	Deferred        libfreetype.so.6
ELF	7e529000-7e62b000	Deferred        wined3d<elf>
   \-PE	7e540000-7e62b000	\               wined3d
ELF	7e62b000-7e65b000	Deferred        d3d9<elf>
   \-PE	7e630000-7e65b000	\               d3d9
ELF	7e65b000-7e6c4000	Deferred        msvcrt<elf>
   \-PE	7e670000-7e6c4000	\               msvcrt
ELF	7e6c4000-7e71d000	Deferred        shlwapi<elf>
   \-PE	7e6d0000-7e71d000	\               shlwapi
ELF	7e71d000-7e829000	Deferred        shell32<elf>
   \-PE	7e730000-7e829000	\               shell32
ELF	7e829000-7e8d2000	Deferred        comdlg32<elf>
   \-PE	7e830000-7e8d2000	\               comdlg32
ELF	7e8d2000-7e908000	Deferred        winspool<elf>
   \-PE	7e8e0000-7e908000	\               winspool
ELF	7e908000-7e921000	Deferred        version<elf>
   \-PE	7e910000-7e921000	\               version
ELF	7e921000-7e9e0000	Deferred        comctl32<elf>
   \-PE	7e930000-7e9e0000	\               comctl32
ELF	7e9e0000-7ea6e000	Deferred        winmm<elf>
   \-PE	7e9f0000-7ea6e000	\               winmm
ELF	7ea6e000-7eab8000	Deferred        dsound<elf>
   \-PE	7ea80000-7eab8000	\               dsound
ELF	7eab8000-7eacb000	Deferred        libresolv.so.2
ELF	7eacb000-7eadf000	Deferred        lz32<elf>
   \-PE	7ead0000-7eadf000	\               lz32
ELF	7eadf000-7eafd000	Deferred        iphlpapi<elf>
   \-PE	7eaf0000-7eafd000	\               iphlpapi
ELF	7eafd000-7eb5e000	Deferred        rpcrt4<elf>
   \-PE	7eb10000-7eb5e000	\               rpcrt4
ELF	7eb5e000-7ebf9000	Deferred        gdi32<elf>
   \-PE	7eb70000-7ebf9000	\               gdi32
ELF	7ebf9000-7ed3f000	Export          user32<elf>
   \-PE	7ec10000-7ed3f000	\               user32
ELF	7ed3f000-7ed91000	Deferred        advapi32<elf>
   \-PE	7ed50000-7ed91000	\               advapi32
ELF	7ed91000-7ee35000	Deferred        ole32<elf>
   \-PE	7eda0000-7ee35000	\               ole32
ELF	7ee35000-7ee6c000	Deferred        dinput<elf>
   \-PE	7ee40000-7ee6c000	\               dinput
ELF	7ee6c000-7ee84000	Deferred        dinput8<elf>
   \-PE	7ee70000-7ee84000	\               dinput8
ELF	7efa4000-7efaf000	Deferred        libnss_files.so.2
ELF	7efaf000-7efc7000	Deferred        libnsl.so.1
ELF	7efc7000-7efec000	Deferred        libm.so.6
ELF	7eff6000-7f000000	Deferred        libnss_nis.so.2
ELF	f7c94000-f7c9d000	Deferred        libnss_compat.so.2
ELF	f7c9e000-f7ca2000	Deferred        libdl.so.2
ELF	f7ca2000-f7df1000	Export          libc.so.6
ELF	f7df2000-f7e0a000	Export          libpthread.so.0
ELF	f7e1e000-f7f54000	Deferred        libwine.so.1
ELF	f7f56000-f7f75000	Deferred        ld-linux.so.2
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) Y:\games\X3 Reunion\X3.EXE
	00000027    0
	00000025    2 <==
	0000001b   15
	0000001a   15
	00000018    0
	00000009    0
0000000c
	00000013    0
	0000000e    0
	0000000d    0
0000000f
	00000012    0
	00000011    0
	00000010    0
00000015
	00000017    0
	00000016    0
Backtrace:
=>1 0x480344e2 in strmdll (+0x344e2) (0x7c85a7d4)
   2 0x48006691 in strmdll (+0x6691) (0x7c85a804)
   3 0x48003d80 in strmdll (+0x3d80) (0x7c85a83c)
   4 0x1ff0f77a in dxmasf (+0xf77a) (0x7c85a870)
   5 0x1ff10397 in dxmasf (+0x10397) (0x7c85a884)
   6 0x48004707 in strmdll (+0x4707) (0x7c85a8b8)
   7 0x480043ce in strmdll (+0x43ce) (0x7c85a8d4)
   8 0x7ecc29ca WINPROC_wrapper+0x1a() in user32 (0x7c85a904)
   9 0x7ecc30ae WINPROC_wrapper+0x6fe() in user32 (0x7c85a944)
   10 0x7ecc9431 in user32 (+0xb9431) (0x7c85a984)
   11 0x7ec8aa06 DispatchMessageA+0x96() in user32 (0x7c85a9c4)
   12 0x480042cb in strmdll (+0x42cb) (0x7c85a9f4)
   13 0x48004296 in strmdll (+0x4296) (0x7c85aa30)
   14 0x480041be in strmdll (+0x41be) (0x7c85aa38)
   15 0x7bc6ba3e call_thread_entry_point+0xe() in ntdll (0x7c85aa48)
   16 0x7bc6c0d2 in ntdll (+0x5c0d2) (0x7c85aae8)
   17 0x7bc6c2ec in ntdll (+0x5c2ec) (0x7c85b3d8)
   18 0xf7df74fb start_thread+0xcb() in libpthread.so.0 (0x7c85b4c8)
   19 0xf7d7b08e __clone+0x5e() in libc.so.6 (0x00000000)

and ingame movies are still not playing. I get this trace once I would 
enter the menu, so it is totally unplayable bye now. So has anyone an 
idea how to improve the situation?

bye




More information about the wine-users mailing list