#1  
Old 15th December 2016, 04:14 AM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default Azimer Audio XA2 with settings saved

New dialog. Working volume control.



Sync audio settings are now remembered, and get saved to Project64\Config\AziCfg.bin.

Put the AziAudioXA2.dll into your Project64/Plugin/Audio folder.

Renamed plugin to 'Azimer's XA2 Audio v0.71'

Changed config file to bin, now remembers volume setting too. File size much smaller.

Next is new buffer size and output sample rate options.

Edit: Fixed volume not being set before opening config. Cleaned up dialog.

AziAudioXA2.dll

Last edited by Frank74; 16th December 2016 at 01:07 AM.
Reply With Quote
  #2  
Old 16th December 2016, 07:15 AM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default

Is there any interest in using the NoSoundDriver as a config option?

Games run amazingly smooth using the NoSoundDriver.

I've stripped out all the DirectSound stuff from main.cpp, removed all the related ifdefs, cleaned up SoundDriver and XAudio2SoundDriver. Removed all duplicate resetting of values. I know how to fix the crackling with FAT off. I don't know how to query Project64's settings from the plugin to see if FAT is on or off though. Thought about adding the project to the Project64 solution, it should be easier to integrate it with PJ64's settings then.

Now it's quite bare and simple, it's easier to start adding another backend. The NoSoundDriver being the easiest to add as an option.

I must upload the changes to my git branch of Azimer's.
Reply With Quote
  #3  
Old 18th December 2016, 03:19 AM
HatCat's Avatar
HatCat HatCat is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Feb 2007
Location: In my hat.
Posts: 16,255
Default

Yeah, careful if you send a pull request because last I heard Azimer wasn't finished restructuring the plugin's uses of the audio API classes.

I hardly managed to get the NoSound context to work on Linux. I forgot what his plans were exactly.
Reply With Quote
  #4  
Old 19th December 2016, 07:31 AM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default

Made some changes to the Sync settings.

There are 3 modes of sync. Audio Sync 1, Audio Sync 2 and Audio Sync 1+2.

Audio Sync methods:

Audio Sync 1 games:
Banjo Kazooie
Banjo Tooie
BattleTanx
Donkey Kong 64
Mario Party 2
Paper Mario
Perfect Dark (FAT on)
Super Mario 64
Super Smash Bros
Star Wars Episode I - Racer

Audio Sync 2 games:
Castlevania 1+2
Goemon's Great Adventure
Mystical Ninja Starring Goemon
Majora's Mask
Mario Kart 64 (E) (FAT on)
Mario Party 1
Ocarina Of Time
Pokemon Stadium 2
Ridge Racer (FAT on)
Star Fox 64

Audio Sync 1+2 games:
Goldeneye

Games that don't boot unless FAT is enabled:
Excite Bike 64
Resident Evil 2
Shadow Man
Turok 1
Turok 2
Turok 3
Rogue Squadron (E) (Audio Sync 2)
TWINE (Audio Sync 1)

Updated file:
https://dl.dropboxusercontent.com/u/...ziAudioXA2.dll

Next thing to do is make the config save the settings per game.

Last edited by Frank74; 19th December 2016 at 07:35 AM.
Reply With Quote
  #5  
Old 29th December 2016, 01:22 PM
daarky daarky is offline
Junior Member
 
Join Date: Dec 2016
Posts: 14
Default

The download link is broken. Can you please reupload the plugin.
Thank you.
Reply With Quote
  #6  
Old 30th December 2016, 03:48 PM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default

Dropbox have made the public folder private. Now all my links are broken, and I have to use the website to get an html link.

https://www.dropbox.com/s/efmxgdohpx...ioXA2.dll?dl=1

Last edited by Frank74; 30th December 2016 at 03:50 PM.
Reply With Quote
  #7  
Old 31st December 2016, 09:35 AM
daarky daarky is offline
Junior Member
 
Join Date: Dec 2016
Posts: 14
Default

Thank you!
Reply With Quote
  #8  
Old 31st December 2016, 08:12 PM
RPGMaster's Avatar
RPGMaster RPGMaster is offline
Alpha Tester
Project Supporter
Super Moderator
 
Join Date: Dec 2013
Posts: 2,004
Default

do load states work?
Reply With Quote
  #9  
Old 2nd January 2017, 11:58 AM
Frank74's Avatar
Frank74 Frank74 is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Aug 2013
Location: UK
Posts: 828
Default

Quote:
Originally Posted by RPGMaster View Post
do load states work?
Yes, you can hammer F7 as fast as you can without a crash.

Removing

Dacrate = 0;
snd->AI_ResetAudio();

from RomOpen and RomClosed in main.cpp, fixed the crashes with savestates.

However, the XAudio driver needs a proper AI calculation for getreadstatus without FAT. I've added 3 different calculations for the retval (Sync Audio variations), but it's not accurate enough and needs more. Racing games like Ridge Racer, Monaco Grand Prix, are still crackling without FAT. Adding sync audio variations is a hack rather than a proper solution.

Last edited by Frank74; 2nd January 2017 at 12:31 PM.
Reply With Quote
  #10  
Old 4th January 2017, 02:01 AM
HatCat's Avatar
HatCat HatCat is offline
Alpha Tester
Project Supporter
Senior Member
 
Join Date: Feb 2007
Location: In my hat.
Posts: 16,255
Default

Quote:
Originally Posted by Frank74 View Post
Dropbox have made the public folder private. Now all my links are broken, and I have to use the website to get an html link.

https://www.dropbox.com/s/efmxgdohpx...ioXA2.dll?dl=1
It doesn't do that with me yet for some reason (may have played around with Public folder by accident) but they did announce that Public would become private or something like that, at least for most people.

Well in the absence of dropbox.com you could upload your DLL's on the Releases section of your repository.
https://github.com/Frank-74/AziAudio/releases
Click "Create a new release",

or could also use forum attachments system on forum.pj64-emu.com.

or lol lrn2gh-pages and make github pages website already, and put the dll there
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT. The time now is 08:26 AM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.