WineHQ
Bug Tracking Database – Bug 21609

 Bugzilla

 

Last modified: 2010-06-29 03:20:38 CDT  

Multiple games loose most sound effects or crash

Bug 21609 - Multiple games loose most sound effects or crash
Multiple games loose most sound effects or crash
Status: CLOSED FIXED
AppDB: Show Apps affected by this bug
Product: Wine
Classification: Unclassified
Component: winmm&mci
1.1.38
x86-64 Linux
: P2 major
: 1.2.0
Assigned To: Mr. Bugs
: regression
: 21612 21693 21786 21990 (view as bug list)
Depends on:
Blocks: 23249
  Show dependency tree
 
Reported: 2010-02-06 07:06 CST by spammaster
Modified: 2010-06-29 03:20 CDT (History)
30 users (show)

See Also:
Regression SHA1:
Fixed by SHA1:
Distribution: ---
Staged patchset:


Attachments
Workaround (525 bytes, patch)
2010-03-28 00:10 CDT, Brandon Bergren
Details | Diff
tentative patch (870 bytes, patch)
2010-06-09 14:14 CDT, Eric Pouech
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description spammaster 2010-02-06 07:06:39 CST
From wine 1.1.38 the sound is broken. Music still plays but nearly 90% of the sound effects are gone. Only voices are heard sometimes.

I have done the regression test (The right way this time) and these are the results. Tried to get console trace but this aplication does not start when console is enabled.

c62cf2e049ad37d9561957c47d23fc7ba13adc90 is first bad commit
commit c62cf2e049ad37d9561957c47d23fc7ba13adc90
Author: Eric Pouech <eric.pouech@orange.fr>
Date:   Sat Jan 23 18:56:45 2010 +0100

    winmm: In mmio manipulation, always ensure that we use a HFILE for mmio internal handlers (and not a HANDLE).

:040000 040000 34f94674da252fbcf201217dddb31973ead906ca 59d18475ffc5e5e76df8b5277fb3250ef091721e M      dlls
Comment 1 Nikolay Sivov 2010-02-06 07:10:03 CST
Did you try to revert this patch to be sure?
Comment 2 spammaster 2010-02-06 07:54:53 CST
yes. with the command git checkout c62cf2e049ad37d9561957c47d23fc7ba13adc90^ 
and then make.

After reverting the sound was fixed. after applying the sound was broken.
Comment 3 hanty 2010-02-07 04:39:26 CST
Yes patch is working. Fallout 3.
Comment 4 Vitaliy Margolen 2010-02-07 21:29:14 CST
*** Bug 21612 has been marked as a duplicate of this bug. ***
Comment 5 Vitaliy Margolen 2010-02-07 21:30:37 CST
Confirming per comment #4
Comment 6 Nikolay Sivov 2010-02-08 09:59:00 CST
*** Bug 21580 has been marked as a duplicate of this bug. ***
Comment 7 Vitaliy Margolen 2010-02-12 20:10:36 CST
*** Bug 21693 has been marked as a duplicate of this bug. ***
Comment 8 alexander 2010-02-14 12:12:08 CST
I tried workaround but didn't help, even going back to version 1.1.37 didn't help.
I can hear speech but no effect and background music
Ubuntu KK, driver alsa
any ideas?
Comment 9 GHales 2010-02-16 22:12:33 CST
alexander,

Uninstalling 1.1.38 and re-installing 1.1.37 restored sound for me.  I am not sure how you went back to 1.1.37, but that may be the problem.  

1.1.38 broke Fallout 3 for me and when I checked, Oblivion was mostly silent as well.  My distro (openSUSE) didn't have 1.1.37 in its repositories after the update to 1.1.38, but sourceforge still had SUSE rpms for the previous version and installing that gave me sound back for both programs.

I still have to wait for FalloutLauncher to finish playing its .wav intro music before it lets me hit PLAY.  But, my MainTitle.wav is shorter than it was :-)
Comment 10 alexander 2010-02-17 02:10:49 CST
(In reply to comment #9)
> alexander,
> 
> Uninstalling 1.1.38 and re-installing 1.1.37 restored sound for me.  I am not
> sure how you went back to 1.1.37, but that may be the problem.  
> 
> 1.1.38 broke Fallout 3 for me and when I checked, Oblivion was mostly silent as
> well.  My distro (openSUSE) didn't have 1.1.37 in its repositories after the
> update to 1.1.38, but sourceforge still had SUSE rpms for the previous version
> and installing that gave me sound back for both programs.
> 
> I still have to wait for FalloutLauncher to finish playing its .wav intro music
> before it lets me hit PLAY.  But, my MainTitle.wav is shorter than it was :-)

To fix FalloutLauncher just remove or rename file "MainTitle.wav" or just run game directly from Fallout3.exe. Thanks for reply :)
Comment 11 NSLW 2010-02-17 08:41:58 CST
It also breaks the sound for me in Fallout 3.
Comment 12 spammaster 2010-02-19 16:40:19 CST
Matters got worse from version 1.1.39 I am not sure if it has to do with this bug but now oblivion hangs in the startup screen. Should I post this as a separate regression??
Comment 13 Austin English 2010-02-20 09:57:22 CST
(In reply to comment #12)
> Matters got worse from version 1.1.39 I am not sure if it has to do with this
> bug but now oblivion hangs in the startup screen. Should I post this as a
> separate regression??

Yes, please.
Comment 14 Jeff Zaroyko 2010-02-20 16:44:18 CST
*** Bug 21786 has been marked as a duplicate of this bug. ***
Comment 15 dd9k 2010-02-24 14:08:00 CST
Just tried this with Wine 1.1.39 in Mandriva 2010.0.
TES4: Oblivion has the music and the characters' speech sounding but nothing else. Really disappointing, I've used to play this game normally with Wine 1.1.37 a week ago.
Chances are that we will have to wait till the planned 1.1.40 as a best option?
Comment 16 rgrwkmn 2010-02-26 19:25:23 CST
(In reply to comment #9)
> alexander,
> 
> Uninstalling 1.1.38 and re-installing 1.1.37 restored sound for me.  I am not
> sure how you went back to 1.1.37, but that may be the problem.  
> 
> 1.1.38 broke Fallout 3 for me and when I checked, Oblivion was mostly silent as
> well.  My distro (openSUSE) didn't have 1.1.37 in its repositories after the
> update to 1.1.38, but sourceforge still had SUSE rpms for the previous version
> and installing that gave me sound back for both programs.
> 
> I still have to wait for FalloutLauncher to finish playing its .wav intro music
> before it lets me hit PLAY.  But, my MainTitle.wav is shorter than it was :-)

I went back to 1.1.37 and got sound working but loading a game crashed it! My best solution for now is just dealing with no sound effects and waiting for the fix :(
Comment 17 dd9k 2010-03-06 09:28:04 CST
(In reply to comment #16)
> I went back to 1.1.37 and got sound working but loading a game crashed it! My
> best solution for now is just dealing with no sound effects and waiting for

Seems to me you should try removing ~/.wine before reinstalling an older version of Wine - that worked for me.

BTW: 1.1.40 is out, any updates on this?
Comment 18 spammaster 2010-03-06 11:22:36 CST
nope. tested it yesterday. Bug still there...
In fact there is a new bug now that crashes hangs the game still working on the regression test.
Comment 19 Vitaliy Margolen 2010-03-09 09:02:58 CST
*** Bug 21990 has been marked as a duplicate of this bug. ***
Comment 20 Vitaliy Margolen 2010-03-09 09:03:41 CST
Affects multiple games - major.
Comment 21 spammaster 2010-03-09 12:52:19 CST
So I don't need to do regression testing any more? since the crash is also caused by this commit? or should I do it anyway just to make sure. The crashing/hanging started from version 1.1.40 for me.
Comment 22 no one 2010-03-10 12:30:24 CST
You need a file from an older version of wine.

winemp3.acm.so is missing from some recent packages.

See bug 20042 or 20277

I still do get an under run in wine 1.1.36 but all audio is working.

Audio will not work in 1.1.38 for me even with the winemp3.acm.so file.
(With the exception of music and most voices)
Comment 23 Brandon Bergren 2010-03-28 00:10:53 CDT
Created attachment 27074 [details]
Workaround

Here's a workaround.

The problem here I reckon is all the dwFileSize stuff should really be specific to FOURCC_DOS, as other IOProcs may not necessarily use wm->info.adwInfo[0] to hold a file handle. I guess it was working before because Oblivion just happened to store a HANDLE there. Tightening up on the file size probing in c62cf2e049ad37d9561957c47d23fc7ba13adc90 broke it because it now expects an HFILE.

The dwFileSize stuff (and the problematic test) was added in 090629242bfd88d56195ca599817726356b3da09.

For reference, Oblivion's IOProc has a fourcc of 'W','A','V',' ', is registered / unregistered on the fly whenever a sound is played, and the proc itself seems to return 0 for MMIOM_SEEK (but DOES seem to set lDiskOffset correctly, at least for SEEK_SET and SEEK_CUR. I was unable to test SEEK_END.) Maybe when fixing the SEEK_END case of mmioSeek to work correctly for IOProcs installed by programs, it would be a good idea to attempt to detect a bogus return value and switch to using lDiskOffset? (I note that the pre-090629242bfd88d56195ca599817726356b3da09 code had an assert to detect this situation...)
Comment 24 Nate 2010-05-13 18:20:51 CDT
How exactly do I go about implementing this work around??
Comment 25 Daniel Devine 2010-05-13 21:27:11 CDT
EVE Online (in Fedora 12) has not had working audio since 1.1.38 (I think). Sound at login screen works and it works right through to the actual game and then after 3 seconds or so it freezes the game.

If you are AFK mining or running multiple accounts it really helps to be able to hear the lock-on sound effect.

Just confirming this bug :)
Comment 26 Myk Taylor 2010-05-25 11:09:58 CDT
the workaround (In reply to comment #24)
> How exactly do I go about implementing this work around??

it's a patch against the source code.  I can confirm that the workaround works for Oblivion with wine-1.1.44.
Comment 27 Pierre Demoux 2010-06-04 06:34:35 CDT
Many thanks Brandon for the work-around, but does anyone know if this regression will be fixed in the final release of wine 1.2?  Oblivion was running almost perfect for me until wine 1.1.38, and what a great job by the wine team to get it to this stage, but it's a pity to have such a major regression on this and other games just before the wine 1.2.
Comment 28 Carlton Hobbs 2010-06-04 10:02:28 CDT
I would agree that this is such a major game-killer that I would hate for 1.2 to exist with this regression outstanding meaning people would still be better off with 1.0.1.  Who do we have to convince to make this a release critical bug?

Even if it meant a 6 month delay, delay it. I don't want Wine 1.2 to be a KDE 4.0.

One more curiosity, is anyone using x86 to confirm this is only on x86-64?
Comment 29 TCR 2010-06-05 10:32:48 CDT
(In reply to comment #28)
 Indeed, I can confirm that this bug is NOT restricted to the 64-bit version. I'm currently running the latest Wine 1.2 on 32-bit Ubuntu 10.04 and I still have no sound effects in Oblivion (I've tried both "normal" Oblivion and GOTY). I haven't had sound effects since 1.1.37 on 32-bit Wine.
 I have not applied the work-around patch yet as I prefer to use the Ubuntu package system whenever possible, reserving source compilation for non-packaged software.
Comment 30 Otto Rey 2010-06-08 19:51:00 CDT
I think that this affects Pro Evolution Soccer 2010 too
Comment 31 Dan Kegel 2010-06-09 01:19:51 CDT
Affects multiple popular apps -> nominating for 1.2.
Comment 32 Eric Pouech 2010-06-09 14:14:16 CDT
Created attachment 28702 [details]
tentative patch
Comment 33 Eric Pouech 2010-06-09 14:18:34 CDT
to be clear on what happens:
- before commit listed in comment #1, the app used to install an ioproc, and mmio code was in all cases trying to use advInfo[0] as an HFILE
- dwSizeFile computation was wrong, as it was considering advInfo[0] (for DOSMEM procs) to be a HANDLE (where it was a HFILE)

- the commit listed in comment #1, fixed the last part (always considers advInfo[0] as a HFILE), but was doing it for kinds of ioproc

the tentative patch always ask the ioproc for the seek information, which should be more correct
Comment 34 Ing. Jan Kaláb 2010-06-13 02:17:57 CDT
I have the sound issue in Fallout 3 GOTY from Steam. I can hear only dialogues.

Wine 1.2-rc3, Ubuntu 9.10 64bit, ALSA
Comment 35 Eric Pouech 2010-06-15 13:56:49 CDT
A workaround has been committed to git after 1.2rc3.
A decent fix should be written after 1.2 is out.
Comment 36 LeafFace 2010-06-17 02:06:36 CDT
SOLVED?

Short Version:
Using Synaptic Package Manager or apt-get, install the libmpg123-dev and libopenal-dev packages. This should solve the problem of games losing sound effects but not music.

Long Version:
Being a bit of a newb to wine/Ubuntu, I have no idea if this is a proper fix. Feedback/results are appreciated.
I've been running Oblivion, and everything worked beautifully with the exception of sound. Music and dialogue played fine, but effects (footsteps, weapon sounds, the like) didn't play. This was a game-breaker for me.
After bloody ages figuring out how to patch the wine source, I did so with both fixes listed above, and recompiled. No dice. Upon a second attempt, I ran ./configure and noticed that several of the development libraries were missing, crippling wine's functionality. Some of the issues are of no concern to me, like SSL or CUPS, but the two I mentioned enable the mp3 codec, and enable OpenAL, respectively. OpenAL is responsible for generating sounds in a 3D environment, which is why music and voice-overs that just play work, but sounds like footsteps or far off voices which are affected by position relative to the character don't.
Anyway, after installing those packages. recompiling the source (probably not necessary but I did it just in case), and putting on my lucky socks I ran Oblivion. It worked like the charm; as of yet I haven't encountered any lacking sounds.

I've only tested this with 1.2rc-3 and Oblivion, but given the general nature of the problem I'm guessing it will work for most versions/programs.
Comment 37 spammaster 2010-06-17 05:08:11 CDT
It should give sound with or without libmpg123. In fact music works without libmpg123.

Compiled 1.2-RC3 today and there is still no sound. Oblivion still hangs in loading screen.
Comment 38 Alexandre Julliard 2010-06-17 13:27:29 CDT
Fix committed as 258d42982cf526b3d9c59ccb522b27db3f519541.
Comment 39 Béla Gyebrószki 2010-06-17 14:11:02 CDT
Still not fixed in realMyst (it's on the affected apps list). The game keeps crashing on start-up unless you completely disable audio.

wine-1.2-rc3-106-gae942d6
Comment 40 Dan Kegel 2010-06-17 14:18:43 CDT
Does bug 18975 match your RealMyst problem?
Comment 41 Béla Gyebrószki 2010-06-17 14:25:52 CDT
(In reply to comment #40)
> Does bug 18975 match your RealMyst problem?

Yes, but bug #18975 marked the problem as present in 1.1.23. RealMyst doesn't crash for me in 1.1.23, but from 1.1.38 on. My regression testing on the crash in realMyst also resulted the commit:
c62cf2e049ad37d9561957c47d23fc7ba13adc90
Comment 42 Erik Weatherwax 2010-06-18 01:30:31 CDT
Bug is still present in Fallout 3 with latest git.
Comment 43 Alexandre Julliard 2010-06-18 12:47:24 CDT
Closing bugs fixed in 1.2-rc4.
Comment 44 NSLW 2010-06-18 12:51:13 CDT
(In reply to comment #43)
> Closing bugs fixed in 1.2-rc4.

(In reply to comment #42)
> Bug is still present in Fallout 3 with latest git.

AJ says bug's fixed. You heard?
Comment 45 Dan Kegel 2010-06-18 13:03:28 CDT
This bug's pretty long, please open a new bug for any remaining problems.
Comment 46 Erik Weatherwax 2010-06-18 16:19:31 CDT
> AJ says bug's fixed. You heard?

I tested after fetching the latest source post commit of the fix.  I still had the same problem then, and in fact I, at least, am experiencing the same symptoms as of 1.2-rc4.  Should I open a new report?
Comment 47 Austin English 2010-06-18 17:10:13 CDT
(In reply to comment #46)
> > AJ says bug's fixed. You heard?
> 
> I tested after fetching the latest source post commit of the fix.  I still had
> the same problem then, and in fact I, at least, am experiencing the same
> symptoms as of 1.2-rc4.  Should I open a new report?

Please.
Comment 48 spammaster 2010-06-19 11:27:33 CDT
fetched version 1.2-rc4 and both music and sound are still missing on oblivion no matter what I try.
Comment 49 Vadim 2010-06-20 02:39:22 CDT
Still no sounds (except voice) in Oblivion and Fallout 3. The same as in previous wine versions. Workaround patch still resolves this problem, however.
Comment 50 Pierre Demoux 2010-06-20 06:54:10 CDT
I have just tested the latest release candidate with my copy of Oblivion and I can confirm comments #48 and #49.  Unfortunately this bug is NOT fixed in 1.2-rc4.
Comment 51 Pierre Demoux 2010-06-20 07:21:29 CDT
The new bug report has been opened as bug #23249.
Comment 52 Otto Rey 2010-06-20 11:29:26 CDT
This bug should be reopened: Pro Evolution Soccer 2010 still loose sound. This happen randomly a few minutes after match start.
Comment 53 Otto Rey 2010-06-20 11:41:25 CDT
Some of you may want to vote for bug 23289 (loose sound in PES 2010)
Comment 54 GHales 2010-06-20 13:34:03 CDT
I agree with the rest of the comments.  This bug is not fixed.  Environmental sounds are still missing from Oblivion and Fallout 3.  On the other hand, it has fixed my crash-on-load problem in Fallout.

I do not agree with the decision to close this bug and open another one.  The new bug 23289 does not describe the same symptoms as this one.  The database entry does not have the history of this bug, nor does it provide the workaround given here.  As of today, it doesn't even show the apps affected by this problem.

IMHO, closing this bug and opening a new one is very poor practice, and the devs should re-open this bug.  If it turns out that the different issue described in the Pro Soccer bug is caused by the same problem, then it can be marked as a duplicate and closed when this one is fixed.
Comment 55 NSLW 2010-06-20 15:08:18 CDT
(In reply to comment #54)
> I agree with the rest of the comments.  This bug is not fixed.
So what does AJ meant by?
(In reply to comment #38)
> Fix committed as 258d42982cf526b3d9c59ccb522b27db3f519541.

What does that fix fixes?
Comment 56 TCR 2010-06-20 19:59:04 CDT
I broke down and tried to manually patch the 1.1.42 source with the work-around but no dice. I had originally installed the highest level Ubuntu package (lucid) which was 1.2x, but when I reinstalled Ubuntu (unrelated issue), the database had reverted to the 1.1.42 version of Wine. (???)

Regardless, it's not fixed. The referenced bugs above DO NOT describe the actual bug with the Bethesda games. There is always sound (i.e. music and voices), but there are no sound effects (i.e. footsteps, combat noises, etc.).

I believe that the reasoning behind the workaround is correct, but that the implementation is not perfect.

Can't this be easily applied in the next release without fuss?
Comment 57 zuisen.dk 2010-06-23 10:25:32 CDT
(In reply to comment #36)
I have succeeded in fixing the sounds with your advice. Thank you.

I got the latest mpg123.1.12.2.tar.bz2 from http://www.mpg123.de/api/ and compiled it.
(Ubuntu has libmpg123 ver. 1.4.1 and I got error message "it is too old!"
or something like that when I compiled wine.)

Then;

./configure
make depend && make
sudo make install

and I ran Oblivion. NOW I NOTICED ALL THE VOLUME BARS WERE MUTED IN THE MENU,
so I drugged them; now I hear the all the wonderful music, vigorous footsteps and NPC's voices.

Well, I'm not sure it is because of the latest libmpg123 or muted volumes,
but anyway all the sounds and music are properly working
and I am now satisfied with the game. Thank you.
Comment 58 Myk Taylor 2010-06-23 14:01:22 CDT
Still not fixed for me in 1.2_rc4.  The workaround patch is still required.
Comment 59 Otto Rey 2010-06-23 21:53:27 CDT
Please, reopen this bug. It is not fixed!
Comment 60 Austin English 2010-06-24 07:27:41 CDT
(In reply to comment #59)
> Please, reopen this bug. It is not fixed!

See comment #25. Open a new bug for any other problems.
Comment 61 Carlton Hobbs 2010-06-24 08:22:11 CDT
I think the issue testers are having should not be that bugs like bug 21612 caused by commit c62cf2e049ad37d9561957c47d23fc7ba13adc90 were closed as duplicates of this bug 21609.  Now that a patch has fixed one or two games out of a half dozen caused by commit c62cf2e049ad37d9561957c47d23fc7ba13adc90, they are being made to open a new bug that, because it seems new, has not been marked as a 1.2 target.

But in reality, bug 23289 and bug 23249 are major regressions reported immediately after 1.1.38, that make functionality much worse than wine 1.0 for multiple of the most popular games that (were) playable/enjoyable on Wine.  These bugs should be release blockers.
Comment 62 Dan Kegel 2010-06-24 09:08:02 CDT
Let's get the new bug(s) opened, gather details there, and proceed
once we have the data.  It's often a good idea to open new bugs
when faced with an old, messy bug like this one that may have several
root causes.


Hosted By CodeWeavers