Jump to content
IGNORED

Altirra 2.60 released


phaeron

Recommended Posts

Selected DirectSound and it works now. Altirra's stereo output doesn't work through WaveOut on this (recently set up) machine for some reason.

 

On a related note... setting aside issues like this, what are the pros and cons of these two options (WaveOut, DirectSound).

Link to comment
Share on other sites

WaveOut randomly started working again...

 

One thing I noticed about DirectSound is it seems to lag more that WaveOut. Keyclicks often appear to be coming through the speakers a little after the typed character appears on the screen. With WaveOut, I don't get this sense.

Edited by flashjazzcat
Link to comment
Share on other sites

One thing I noticed about DirectSound is it seems to lag more that WaveOut. Keyclicks often appear to be coming through the speakers a little after the typed character appears on the screen. With WaveOut, I don't get this sense.

 

Thanks for the info. Something to put under the hat.

Link to comment
Share on other sites

It makes sense though guys - DirectSound has to go through the DirectX subsystem whereas waveout requires much less processing, both respectively when the CPU is taking a big hit from Altirra's cycle-exact emulation engine. At least that was - again, as a single user - my impression way back in the early 2000's when I became fanatical about keeping my nascent DVD collection on harddrive and therefore did a lot of AV ripping, transcoding and recoding; hundreds of processor hours. The WaveOut methods always gave the least amount of broken sync when outputing audio in my experience. Equally as with everything it probably depends more on the power of your processor these days than any intrinsic failure/non-optimization of the system software.

 

And then the bastards brought out BD and I threw in the towel!

  • Like 1
Link to comment
Share on other sites

Uh, no, waveOut does not require much less processing than DirectSound. There isn't really a "DirectX subsystem" -- DirectX is a collection of mostly independent systems with a common theme. There is, however, a multimedia system that waveOut does have to go through. The difference is unnoticeable on current systems, and the two paths actually are pretty similar. On Windows XP, both go through the kernel streaming mixer; on Vista and up, they go through the user-space mixer (via WASAPI). Core usage is also a non-issue as audio has higher CPU priority and the majority of systems also have more than one CPU core.

 

The main advantage that DirectSound has is latency, the delay between when sound is generated and when it is output. waveOut requires audio to be sent in packets, whereas DirectSound uses a continuous streaming buffer. By adjusting the latency parameter in Altirra's sound options, you can generally get lower latencies with DirectSound before crackling occurs. Sync with DVD playback is a completely different animal because in that case it is trivial to buffer at least a quarter second of both audio and video to smooth out kinks. waveOut does have the advantage of being more reliable because of its older, simpler design; it's the default in Altirra because DirectSound is more prone to needing the buffering settings tweaked for each system to avoid crackling.

 

It is possible to get even lower latency on Vista+ with XAudio2 or direct WASAPI, but there are some annoying hassles with those and I've avoided them so far.

 

You can log the audio output using the recording options... but if you are getting it working in DirectSound and not in waveOut, the issue is almost certainly not going to show up in the recording. I'd like to know if waveOut stereo does work on an earlier version, because if not, I don't need to try to fix it for this release.

  • Like 3
Link to comment
Share on other sites

Uh, no, waveOut does not require much less processing than DirectSound. There isn't really a "DirectX subsystem" -- DirectX is a collection of mostly independent systems with a common theme. There is, however, a multimedia system that waveOut does have to go through. The difference is unnoticeable on current systems, and the two paths actually are pretty similar. On Windows XP, both go through the kernel streaming mixer; on Vista and up, they go through the user-space mixer (via WASAPI). Core usage is also a non-issue as audio has higher CPU priority and the majority of systems also have more than one CPU core.

 

The main advantage that DirectSound has is latency, the delay between when sound is generated and when it is output. waveOut requires audio to be sent in packets, whereas DirectSound uses a continuous streaming buffer. By adjusting the latency parameter in Altirra's sound options, you can generally get lower latencies with DirectSound before crackling occurs. Sync with DVD playback is a completely different animal because in that case it is trivial to buffer at least a quarter second of both audio and video to smooth out kinks. waveOut does have the advantage of being more reliable because of its older, simpler design; it's the default in Altirra because DirectSound is more prone to needing the buffering settings tweaked for each system to avoid crackling.

 

It is possible to get even lower latency on Vista+ with XAudio2 or direct WASAPI, but there are some annoying hassles with those and I've avoided them so far.

 

You can log the audio output using the recording options... but if you are getting it working in DirectSound and not in waveOut, the issue is almost certainly not going to show up in the recording. I'd like to know if waveOut stereo does work on an earlier version, because if not, I don't need to try to fix it for this release.

 

Woah - way to slap me down there Avery!!! Many thanks dude :)

 

Whether its extra processing causing latency - or that what I called as an amateur dabbler of many hours 'extra processing' is in fact what the professionals like yourself called 'Latency' I can emphatically report that if I used any form of DirectX/DirectSound in AV transcoding I would very frequently encounter loss of audio sync, whereas waveout gave me the purest results. In turn that sounds a lot like the slight delay which FJC reported. Take that for what it is - probably bollocks I know.

  • Like 1
Link to comment
Share on other sites

I run in another issue... not sure if Altirra Issue...

 

I wrote an small "dump to sectors" code which sets a DCB ($300...) and writes 15k data to an ATR.

 

I assemble it in WUDSN which opens Altirra... my tool waits for pressing START so I can insert/mount an empty ATR (130kb)... now it writes 22 sectors... interesting it does then lag for some seconds... (when I do an ALT+TAB and back into Altirra) it writes again sectors. Disk emulation is set to sounds, counters on screen plus exact timing....

 

now I did several versions (while chatting with Wrathchild regarding disk bootblock)... and suddenly the ATR was not updated anymore even Altirra seem to "write sectos" (counter increases, typical write sounds).

 

same code in Atari800win (baeh... ;=) but I need to say that)... always dumped data into that ATR.

 

Windows 7 prof 64bit explorer even showed me that the ATR when trying with Altirra... did not alter the file as the "last edited" informations were not altered and at some point they were 20 minutes "old" even I run the dumper on a regular basis. WUDSN hex editor showed old content in the ATR, too...

 

Any idea? I am using Test 38.

Link to comment
Share on other sites

I run in another issue... not sure if Altirra Issue...

 

I wrote an small "dump to sectors" code which sets a DCB ($300...) and writes 15k data to an ATR.

 

I assemble it in WUDSN which opens Altirra... my tool waits for pressing START so I can insert/mount an empty ATR (130kb)... now it writes 22 sectors... interesting it does then lag for some seconds... (when I do an ALT+TAB and back into Altirra) it writes again sectors. Disk emulation is set to sounds, counters on screen plus exact timing....

 

now I did several versions (while chatting with Wrathchild regarding disk bootblock)... and suddenly the ATR was not updated anymore even Altirra seem to "write sectos" (counter increases, typical write sounds).

 

same code in Atari800win (baeh... ;=) but I need to say that)... always dumped data into that ATR.

 

Windows 7 prof 64bit explorer even showed me that the ATR when trying with Altirra... did not alter the file as the "last edited" informations were not altered and at some point they were 20 minutes "old" even I run the dumper on a regular basis. WUDSN hex editor showed old content in the ATR, too...

 

Any idea? I am using Test 38.

 

Check whether the disk indicator is blinking or the disk image is red in the Disk Images dialog. Unlike Atari800Win, Altirra doesn't keep disk image files locked, but this does mean that it can run into problems if another program has the file locked. The emulator attempts to flush pending disk writes half a second after the last write -- if it encounters an error while doing so, it will start blinking the drive indicator and switch the drive from R/W mode to VirtR/W mode. The modified disk is still kept in memory so it can be flushed out with a manual Save As once the problem is resolved. A red disk image in the Disk Drives dialog means that it's still modified. If that's what's happening, run Process Monitor and see if any other programs are accessing the .ATR when this occurs.

 

The Wilmunder Star Raiders II sometimes has a photon torpedo that gets stuck and stays onscreen. Bug in Altirra? Or problem with the game code?

attachicon.gifsrIIa.png

 

Pretty sure this is a game issue -- got it to happen in Atari800WinPLus (too lazy to turn on the real thing right now).

  • Like 1
Link to comment
Share on other sites

  • 1 month later...

Hmm, this one won't launch in Rocketlauncher either. And I'm not good at writing scripts (for rocketlauncher). The standalone works just fine, so there's no issues of course. I was just trying to get it to work in RL. Edit: I just got it working.

Edited by KAZ
Link to comment
Share on other sites

I just got Altirra to launch in Rocketlauncher. And the most current version also. I had to scan for the bios files in a way that I wasn't used to. They listed the instructions in the module notes, which I should have read. :P

 

System>Firmware>Firmware Images>and then to scan...

 

I'm pleased. This is the emulator I want to use from now on in Rocketlauncher. :)

Edited by KAZ
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...