Jump to content
Eternal Lands Official Forums
Erdie

Sounds are truncated

Recommended Posts

Hi,

 

since a certain time all sound played in the client seem to be truncated. I am currently developing sound for clap and jump and therefore unable to test them.

 

When the animation starts the sound starts and stops at about 50% even the animation continues. I dont know the reason so far. I am running gentoo with rolling updates and my guess is that this could something to do with a new openal version or a buffer problem. In general i have no sound issues on my system anyway. All other sound applications, players etc. are working fine. Is this a known issue? Does anyone have a clue about that?

 

thanks

Erdie

Share this post


Link to post
Share on other sites
This doesn't happen with the windows client so perhaps it's just a linux issue?

I've not seen this on Ubuntu Linux (9.10) either. So may be it is related to that new openal version. On my system the version number is 1.8.466-2.

Edited by bluap

Share this post


Link to post
Share on other sites

My version is 1.11.753

I will try to downgrade and retest. Will post the results here

 

 

EDIT: I am running 1.9.563 now and it works :) I will stick to this version.

Edited by Erdie

Share this post


Link to post
Share on other sites

In the meantime I figured out that even all new openal versions have this issue. This lets me assume that there could be a general compatiblilty problem in the game client and not in openal. I cannot imagine that openal has such a servere bug which was never detected by other users.

The only working version is being removed from many distributions, including Gentoo so to get working sound you have to install in manually.

Share this post


Link to post
Share on other sites

I also now have this problem with Ubuntu 10.04. I've traced it down to alGetBufferi() not returning the correct value for AL_BITS which effectively halves assumed length of the file. I could not find a reason or a related bug report so I worked around the problem. CVS has the fix applied.

Share this post


Link to post
Share on other sites

Whoow great :rolleyes: Many thanks, Bluap.

 

BTW: Shouldn't it be a good idea to report this to the openal guys? AFAIK it is a openal bug (even i dont understand why nobody else found it).

Edited by Erdie

Share this post


Link to post
Share on other sites

Don't think this is an openAL bug.

 

openAl uses 32bit internal (at least the versions i examined, 1.11.753 and 1.12.854).

The alBufferData call converts the data to 32 bit, so alGetBufferi(*pBuffer, AL_BITS, &pSample->bits) should always return 32.

 

We just use the wrong size for the length calculation.

So we have the use the one returned by alGetBufferi(*pBuffer, AL_SIZE, &size), I'm not sure if we can safely overwrite pSample->size here or if it's used elsewhere.

 

PS: can't test any of this since i use windows and don't have the problem.

 

Edit

Made a quick patch here where I write the size of the AL buffer in pSample->size instead of the ogg data size.

Edited by Alberich

Share this post


Link to post
Share on other sites

Yep, works on Linux. I've committed the patch. Thanks Alberich and sorry for the rather long delay.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×