summaryrefslogtreecommitdiff
path: root/Source/Core/AudioCommon/Src/Mixer.cpp
AgeCommit message (Collapse)Author
2011-05-05Trying to fix mixer problem when AIsrc is @48kHz, should fix games like All ↵Marko Pusljar
Star Baseball 2004/ XGRA Extreme-G Racing Association/Conduit 2... Enabled 48kHz output for LLE (before it was just 32kHz). I hope it works, if there are serious problems, it will be reverted. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7511 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-12AudioCommon: Improve pad silence when ppc does not keep up with realtimepierre
Uses the last sample from the ppc buffer to fill the samples the ppc didn't deliver data for, avoids clicking on underruns. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7338 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-14Some work on changing comments, log messages, and variable and function ↵Glenn Rice
names to reflect that the plugins are not plugins anymore. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7170 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11* Dump AVI output on every VI (fixes issue #4064).smelenchuk
* Add audio dumping (fixes issue #1638). git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7131 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-03Fix the CMake build.Soren Jorvang
Prevent the PS3 HID crash until I can debug it. AudioUnits are enabled by default. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7052 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30Build fix: a bogus include was added in r6988.DimitriPilot3
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6991 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30Move async checking for pressed keys into Host_GetKeyState()Soren Jorvang
and use wxGetKeyState on platforms other than Windows. I am not sure if wxGetKeyState is unreliable on Windows or if the use of GetAsyncKeyState() is simply historical, but for now I've left the Windows call in there just in case. This does mean that Host_GetKeyState() is currently only valid for the small set of keycodes that overlap between wx and Win32, one of which is VK_TAB/WXK_TAB. Anyway, please test wxGetKeyState on Windows and remove the ifdef if it works, so we can extend it to the remaining hotkeys. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6988 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-28DSP plugin merge - the two DSP plugins are now gone and all the code has ↵hrydgard
been merged into Dolphin. This WILL temporarily break the Linux and MacOSX builds but should be easy to fix. Things left to do: * The UI on the new Audio tab for the LLE/HLE choice is ugly * At times the code still look "plugin-y" and needs cleanup * The two plugins should be merged further. DSPHLE should use the emulated memory etc of DSPLLE as much as possible, so that simply saving the DSPLLE state is enough. This would also bring the possibility of savestate compatibility between the two plugins. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6947 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-13Removed my previous PanicAlert translation hack. Fixed with a better method ↵Glenn Rice
suggested by BhaaL. The translation is done by a callback in the MsgHandler routine that is set at program start. Added macros PanicAlertT, SuccessAlertT, PanicYesNoT, and AskYesNoT that are identical to the non T versions except those strings will be added by gettext to the po files to be translated. These can and should be used anywhere in the code for strings that should be translated. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6838 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12Audio Mixer: Corrects reversed stereo in LLE and reversed stereo from DMA ↵mylek4
audio in HLE. Fixes Issue 3713 git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6835 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12Build fix for OSXskidau
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6825 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-12Added a SSSE3 version of the swap16 and memcpy used by the mixerskidau
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6824 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-01Fix for r6707. Looks like I tried to do some invalid 16 bit addressing.mylek4
Also a small change to the mixer. This should fix audio throttling in cases where num_samples > RESERVED_SAMPLES. This seems to happen now with zelda ucode games, possibly others. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6711 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-29DX9/DX11: Fixing some maybe possible crashes if a game was started, the ↵NeoBrainX
config dialog opened and the game closed again. Due to other issues this still happens quite often though... Various warning fixes. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6684 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-17Fixed the throttle (Tab) key so that it takes effect when the frame-limiter ↵skidau
is used. Hold down Tab to run the emulator unthrottled (Windows only). git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6598 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12Several little things.Glenn Rice
The C version of the GenericLog was being used in both C and C++ branches of the code. Parent panic alerts by the main_frame so that those windows get the icon too. Fix a couple of compiler warnings. Added some checks for libraries in the cmake build. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6385 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-12DSPHLE: Added an option for 48khz output and supporting upsampling code.mylek4
Games that have higher frequency sounds and music should sound a bit better using 48k. I don't have any games that use DTKMusic so that upsampling code untested. If you get strange sounds only at 48k try toggling dtk music to see if that isolates the problem and let me know. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6383 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-01Core/DSPCore: Make JIT work on 64 bit hostspierre
This is the safe variant that does not assume other functions use R11 for &g_dsp.r, which they actually do. So there is a lot unnecessary reloading of the register getting emitted. There are a few small changes exploiting pointers known at emission time and making use of MComplex math. Also renames m_LLEplaying to m_AIplaying in Core/AudioCommon. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6245 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-28Core/AudioCommon: Feed bigger audio chunks to the output devices in case of ↵pierre
underrun. This should eliminate the crackling with alsa and pulseaudio backends and replace it with much nicer pauses. This is only interesting for audio backends that do not respect Mixer::GetNumSamples() and should not impact users able to run the DSPLLE at full speed. The cost of this is an added LLE audio latency of about 0.06 s in the continuous playback case. If that is too much, lower the low watermark. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6239 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-17Reverted change from r6100 to previous version. That thing broke some games ↵Ignacio Farias
audios. With audio throttle off, possessing audio was disabled. Now I'm working on a workaround, stay tunned. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6106 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16Corrected writing error on previous commit :). Now should compile correctly. ↵Ignacio Farias
Thanks God for the advise " /trunk/Source/Core/AudioCommon/Src/Mixer.cpp r6100 line 145: 145: { oops, wrong brace? " git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6101 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-16Hy, this is my first commit, and i hope it is not bad xD. Ignacio Farias
- First change is for Mixer.cpp, I've just re-added the functionality lost in r4724, so, if you disable audio throttle, games like donkey kong jungle beat, will work properly. - Second change points to a doubt comment on UCode_Zelda_Voice.cpp, where it did not know here PB.NeedsReset came from. Well, the answer is it came from line 03b2 of the dumped Ucode, so when PB.IsBlanck equals to zero, PB.NeedsReset is zero too. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6100 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-25Sound System Rework: Phase 2 (cont'ed)ayuanx
. Fixed super fast refresh rate issue . Recovered <TAB> shortcut key for ThrottleSkipping . Removed redundant "soundstream->Update()" in DSPLLE (Thanks to LordMark) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4728 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-23Sound System Rework: Phase 2ayuanx
. Performance boost (Completely non-blocking between Sound thread and CPU thread, in the meantime keeping them thread safe) . Both 32KHz & 48KHz sound can be handled properly now (But up-sampling is still not implemented, and I don't think any game requires it.) . Strategy adjustment When your PC is *NOT* capable to run the game at 100%: >> DSound Could yield more fluent sound than OpenAL sometimes, but you will lose the sync between video & audio (since audio is played before video to guarantee fluency) >> OpenAL Ensures video & audio are always sync'ed, but sound could be intermittent(to let slow video catch up) . Changed default frame limit to: Auto (Somehow this can dramatically decrease the chance of wiimote desync in game NSMB) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4724 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-22Sound System Rework: Phase 1ayuanx
. Fixed Sample Rate for DSP (Now if your CPU is capable to run game at 100%, you will get pure sound without buzz or static noise) . Fixed Sample Rate for AI (Now if your CPU is capable to run game at 100%, you will get sync'ed video and audio) . Fixed Backend list for DSPLLE . Improved Aduio DMA a bit (There might be a completely redesign in following phases) WARNING: The whole rework will take time to complete. This commit is compilable, but could be unstable. So you can try it and test it but don't take it as a release rev! git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4717 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-20Now OpenAL works, at least.ayuanx
But Dolphin's sound stream system really needs a rethink. Because this is the root cause of constant blocking. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4711 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-13Add the mixer change from issue 1479 (use sleep(1) instead of cpu yield)Shawn Hoffman
Fix aram handling in wii mode - was doing strange things with aram AND mem2 space - only mem2 exists on wii. Let me know if this breaks anything... Fix Wii BS2 HLE - don't zero out bytes 6 and 7 Thanks to skidau for finding the ssbb error cause :) Fixes issue 303 Fixes issue 1479 git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4687 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-08get rid of the '¯' chars in source code...non ascii chars are not really ↵Shawn Hoffman
good to have floating around for no reason. http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Non-ASCII_Characters#Non-ASCII_Characters git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4231 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-28Now ALL copyright dates are fixed to the legally correct year: The year in ↵XTra.KrazzY
which the project began. Now we don't have to change it every year :) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3898 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-17No more SleepCurrentThreads in Command Processor. Some Fifo cleanup.Nolan Check
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3822 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-15Attempt to calculate actual refresh rate (i.e. a CPU-GPU synced Mhz), no ↵John Peterson
real success. Anybody have any ideas? Is there no indication from the game when the screen refresh should occur? No, not what I could find, we currently calculate the refresh rate and m_VBeamPos from the CPU ticks progress. That works perfectly if the CPU and GPU is perfectly synced as in the single core and no-idle skipping mode. So I guess it's possible that the game doesn't indicate when the screen should be refreshed, but rather that the hardware calculate that from the CPU ticks progress. That leaves us with a problem in the dual core and idle skipping modes to calculate a CPU-GPU synced CPU ticks progress. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3447 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-12a NEED DEBUG version of openal sound system, nakee, try to FIX it! :)hyperiris
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3409 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-30Added dtk sound mixing to audiocommon (should work with LLE now)nakeee
And also moved all common setting to audiocommonconfig git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2796 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28Fixed Null soundnakeee
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2783 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28A little fix for the Throttle, it wasn't getting the correct sample_rate ↵sl1nk3.s
thus was too fast git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2774 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28Some code cleanupomegadox
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2768 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-27Fixed stop of DSP HLE+LLE and some clean up(reset all variables in DSound ↵nakeee
creation) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2760 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-26crash fixnakeee
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2758 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-26Attempt to move mixer to audio common, it's a bit more complicated than I ↵nakeee
expected so please check I didn't break anything in hle git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2756 8ced0084-cf51-0410-be5f-012b33b47a6e