Sign in to follow this  
Followers 0

[bug]SFX preview does not play

XWE Version: latest Beta(23/07)

OS: Windows XP with SP2

Description:
Some sounds are not played back when the entry is clicked on inside XWE, and the preview does not show the waveform graphic.

Steps to reproduce:
1. Get the latest freedoom doom 2 wad.
2. Open it in XWE and press the "Sounds" filter button at the bottom of the screen.
3. Now click on the "DSPODTH2" entry for example (there are many others which don't work either)


Hope this helps.

Share this post


Link to post

That actually works as expected. If you turn on the size column, you can see that the lengths are only 150 bytes. Those are valid Doom wav sounds, but they are short and they are basically silence.

Share this post


Link to post

ahh crap, ok!

Just placeholders then: I thought they had become corrupted or something!

Thanks.

Share this post


Link to post

Well, there's a related bug - if a sound is in Doom Wave Format, but it's longer than 65536 bytes, it won't play properly in XWE. It cuts off after about 0.3 seconds, and exporting it retains this cutoff.

Share this post


Link to post
TheDarkArchon said:

For me, the sounds appear as Hex code. An example WAD of this is Wildweasel's Doom Illustrated. (DSFDTH1, DSFDTH3, DSBFG, DSDMFLAM, DSRXPLOD, DSDISIN*)


I've just tried this wad with the latest beta and it works OK.

Share this post


Link to post

Hemm, I added markers to the WAD that designates all lumps between them as sounds (Defined by myself in XWE.ini) and Weasel's bug is in there. I'm using the 23/07 beta.

The sounds length (in bytes) according to XWE is the lumps size - 65544

Share this post


Link to post

Doom sounds have an 8 byte header, so normally the sound length would be (lump length-8). The 8 bytes are: $0003 (always the same), sample rate (2 bytes), and length (4 bytes?). The sounds that have a problem are reporting the length incorrectly, they only use 2 bytes, on which you cannot express numbers that are larger than 65535. XWE reads the header and takes the length from there.

If anyone were to save the lumps as raw data, and add a $01 into the header, they would play fine in XWE. I wonder what program created those so that the sound length is misreported.

I guess I could rewrite it so that it doesn't take the length from the header (since these sounds are 'buggy'), but would that break other things?

Share this post


Link to post

the odd thing is, EDGE plays the sounds fine and it only accepts Doom Wave or, IIRC, OGG's as sounds

Share this post


Link to post

Yeah, I would have guessed that the source ports will play the sounds fine. It's easy for me to make this change, ie. use lumplength - 8 as the sample lenght, not what's in the header. I'll do it as soon as I can and upload a new beta. It'll make these sounds play properly, and hopefully not break anything else.

Share this post


Link to post

Grab the beta from the usual place, should be fixed.

Share this post


Link to post

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
Sign in to follow this  
Followers 0