Florent Castelli
d1eaa59a8e
cmake: Move detection of OpenAL to AudioCommon
2017-02-07 03:42:43 +01:00
Florent Castelli
cbb7e4072a
cmake: Move AO detection to AudioCommon
2017-02-07 03:42:43 +01:00
Florent Castelli
2fceb016b4
cmake: Move ALSA detection to AudioCommon
2017-02-05 02:55:05 +01:00
Florent Castelli
d615c0f868
cmake: Add imported target to FindALSA
2017-02-05 02:55:05 +01:00
Florent Castelli
9ebfaa9324
AudioCommon: Move logic for default sound backend there from ConfigManager
...
This way, we don't have to leak the HAVE_ALSA define there.
2017-02-05 02:55:04 +01:00
Florent Castelli
31dfaafe0b
AudioCommon: Remove checks against NullSound::isValid()
...
The NullAudio backend is guaranteed to be compiled in, so no reason
to check it.
In addition to that, if it wasn't valid, it wouldn't work as a fallback
in InitSoundStream as there are uses to g_sound_stream later.
2017-02-05 02:55:04 +01:00
Florent Castelli
ee8a21f1d0
cmake: In AudioCommon, append sources and dependencies to a real target
2017-02-05 02:55:04 +01:00
Florent Castelli
f1ba7832a5
cmake: Reindent AudioCommon
2017-02-05 02:55:04 +01:00
Florent Castelli
fb02a321b6
cmake: Move OpenSLES detection to AudioCommon through find_package()
2017-02-04 03:38:11 +01:00
Florent Castelli
87380c1c2c
cmake: Change endif(.*) to endif()
2017-01-25 15:07:32 +01:00
Stenzek
d315052552
AudioCommon: Remove unused _M_SSE test
2017-01-24 20:04:55 +10:00
Florent Castelli
a7bf9271b5
Fix missing includes
2017-01-24 03:31:51 +01:00
Matthew Parlane
f70a1a27fa
Merge pull request #4726 from ligfx/addingwindowsheaders
...
Fix building without PCH on Windows
2017-01-24 13:47:36 +13:00
Mat M
93faf26217
Merge pull request #4721 from RisingFog/remove_dead_audiodump_code
...
Remove dead audio dumping code
2017-01-23 09:17:11 -05:00
Chris Burgener
dd9709509c
Remove dead audio dumping code
2017-01-23 09:11:48 -05:00
Michael Maltese
713ec5ffd5
Add includes for building on Windows without PCH
2017-01-23 01:37:41 -08:00
Florent Castelli
b5b9c0cfc3
cmake: Build XAudio 2.7 backend on Windows
2017-01-21 00:34:02 +01:00
Chris Burgener
47b3a9c68e
Add Silent Audio Dumping INI Option
2017-01-08 13:53:44 -05:00
Chris Burgener
debc40e85b
Display warning when dumping audio if file exists
2016-12-17 22:45:01 -05:00
Lioncash
87f2a74c08
AudioCommon: Remove unnecessary headers
...
Now AudioCommon code won't need to be recompiled if the TAS movie header
is ever modified.
2016-12-11 06:11:37 -05:00
Léo Lam
72e3f1ecec
Remove unnecessary ConfigManager includes
...
Making changes to ConfigManager.h has always been a pain, because
it means rebuilding half of Dolphin, since a lot of files depend on
and include this header.
However, it turns out some includes are unnecessary. This commit
removes ConfigManager includes from files which don't contain
SConfig or GPUDeterminismMode or GPU_DETERMINISM (which means the
ConfigManager include is not used).
(I've also had to get rid of some indirect includes.)
2016-11-27 22:38:38 +01:00
Markus Wick
9ce1cdde98
Merge pull request #4414 from linkmauve/single-newline
...
Remove double newlines at the end of *_LOG messages
2016-11-02 12:20:46 +01:00
Emmanuel Gil Peyrot
c9e6b05ce9
Core: Remove double newlines at the end of *_LOG messages.
2016-11-02 02:09:33 +00:00
LAGonauta
332e9bd378
Added 32-bit fixed point support to OpenAL backend.
...
Changed method to detect 32-bit floating point and
32-bit fixed point support.
2016-10-27 18:47:13 -02:00
Michael Maltese
45903b7b4d
AudioCommon: SupportsDPL2Decoder, SupportsLatencyControl, SupportsVolumeChanges
2016-10-09 19:18:16 -07:00
Léo Lam
39fd6dcd5b
Fix missing includes
...
Aren't indirect includes great?
2016-10-07 23:46:41 +02:00
LAGonauta
d4759a55b6
Fix for false error about unqueuing buffers (OpenAL)
...
and hopefully added saner error reporting.
2016-10-04 21:57:36 -03:00
shuffle2
7f4106646e
Merge pull request #4271 from ligfx/audiofix
...
OpenAL: Don't request samples if buffers are full
2016-10-02 21:00:10 -07:00
Michael Maltese
8fa79f3897
fix indendentation
2016-10-01 21:36:51 -07:00
Michael Maltese
567dffc1ee
OpenAL: Don't request samples if buffers are full
...
Makes the buffering code a bit more explicit (circular buffer, but
blocks until individual buffers get unqueued by OpenAL), and fixes a
bug in the startup of Super Mario Sunshine:
https://bugs.dolphin-emu.org/issues/9811
2016-10-01 21:36:46 -07:00
aldelaro5
f0aa9b3751
Reorganise a ton of logs level
...
Most of this commits changes performance decreasing logs from info to debug and also cleans up innacurate levels.
2016-10-01 15:50:28 -04:00
Léo Lam
dca22e08eb
Use Common::Flag and Common::Event when possible
...
Replaces old and simple usages of std::atomic<bool> with Common::Flag
(which was introduced after the initial usage), so it's clear that
the variable is a flag and because Common::Flag is well tested.
This also replaces the ready logic in WiimoteReal with Common::Event
since it was basically just unnecessarily reimplementing Common::Event.
2016-08-10 16:08:15 +02:00
Lioncash
128d762aea
AudioCommon: const correctness
2016-07-31 19:14:20 -04:00
Lioncash
ecc1710676
AudioCommon: Make the SoundStream global a unique_ptr
2016-07-31 15:45:28 -04:00
Chris Burgener
76abf1f727
Remove AddStereoSample function
2016-07-01 00:59:25 -04:00
Chris Burgener
ca2eaac704
Split Audio Dumps on Sample Rate Changes
2016-06-24 21:12:15 -04:00
Pierre Bourdon
3570c7f03a
Reformat all the things. Have fun with merge conflicts.
2016-06-24 10:43:46 +02:00
EmptyChaos
c1922783f8
Core: Threadsafety Synchronization Fixes (Frame Advance / FifoPlayer)
...
Fix Frame Advance and FifoPlayer pause/unpause/stop.
CPU::EnableStepping is not atomic but is called from multiple threads
which races and leaves the system in a random state; also instruction
stepping was unstable, m_StepEvent had an almost random value because
of the dual purpose it served which could cause races where CPU::Run
would SingleStep when it was supposed to be sleeping.
FifoPlayer never FinishStateMove()d which was causing it to deadlock.
Rather than partially reimplementing CPU::Run, just use CPUCoreBase
and then call CPU::Run(). More DRY and less likely to have weird bugs
specific to the player (i.e the previous freezing on pause/stop).
Refactor PowerPC::state into CPU since it manages the state of the
CPU Thread which is controlled by CPU, not PowerPC. This simplifies
the architecture somewhat and eliminates races that can be caused by
calling PowerPC state functions directly instead of using CPU's
(because they bypassed the EnableStepping lock).
2016-05-13 09:23:44 +10:00
Mathew Maidment
08c9e3b7a4
Merge pull request #3602 from OatmealDome/coreaudio
...
CoreAudioSound: Minor clean up
2016-02-07 22:25:15 -05:00
OatmealDome
36a20c3535
CoreAudioSound: Replace deprecated parameters
...
The kAudioUnitParameterFlag_* parameters don't exist on iOS.
2016-02-06 16:48:03 -05:00
OatmealDome
2e24996a9c
CoreAudioSound: Only include AudioUnit
2016-02-06 16:47:49 -05:00
Ryan Houdek
2f7e3ae58e
CMakeLists cleanup and enable Android headless building.
2016-02-05 11:24:11 -06:00
Lioncash
c70487163f
Mixer: Convert defines into concrete variables
...
Gets defines out of global scope.
2016-01-15 23:41:53 -05:00
Lioncash
fc6a2f490f
Mixer: Directly initialize class members
2016-01-14 01:32:31 -05:00
Lioncash
531a3ed09a
Mixer: Devirtualize
...
Nothing in the codebase inherits from this class
2016-01-14 01:32:24 -05:00
degasus
3ff4ec275a
Throttler: Rename "framelimiter" to "emulation speed".
...
We don't throttle by frames, we throttle by coretiming speed.
So looking up VI for calculating the speed was just very wrong.
The new ini option is a float, 1.0f for fullspeed.
In the GUI, percentual values are used.
2016-01-05 23:39:05 +01:00
Ryan Houdek
1db01a8c56
[OpenSLES] Fix a delay in audio processing.
...
A failure on my part. I was updating the two buffers in the wrong order, so we were always a buffer behind in sending audio out to OpenSLES.
2016-01-03 11:33:38 -06:00
skidau
cfa925fbbe
Updated SoundTouch library to 1.9.2
2015-12-28 23:08:55 +11:00
Markus Wick
164e045123
Merge pull request #3317 from lioncash/null
...
NullSound: Minor changes
2015-12-15 17:38:37 +01:00
Ryan Houdek
cb5be45f72
Merge pull request #3200 from degasus/master
...
Throttler + Mixer: Configureable variance
2015-12-11 07:04:56 -05:00
Lioncash
0917db7fc0
NullSound: Use std::array for the buffer
2015-12-05 18:13:55 -05:00
Lioncash
0d4baa0744
NullSound: Replace header define with private constant
2015-12-05 18:13:49 -05:00
Lioncash
e0eef7bef4
WaveFile: Get rid of an explicit delete
2015-12-02 20:05:18 -05:00
degasus
888c377b57
Throttler + Mixer: Configureable variance
2015-11-03 08:22:36 +01:00
shuffle2
9878004871
Merge pull request #3105 from phire/dont_block
...
ALSA: Don't block on Clear() call.
2015-10-03 17:55:26 -07:00
Lioncash
5464e698fc
Merge pull request #3102 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-10-03 13:30:51 -04:00
Scott Mansell
a10a3ecbac
ALSA: Don't block on Clear() call.
...
snd_pcm_writei() is meant to block block until all samples are written,
but apparently in some situations it can block for much longer, prehaps
even a infinite time, in the case of virtual machine FifoCI runs in.
Because it grabed a mutex before blocking, it could also block the
Clear() call for an infinite length of time, blocking dolphin's emu
thread.
snd_pcm_writei() also takes 10-15 seconds if you run dolphin under GDB
and can randomly take 5 or so seconds during normal usage.
By moving all the pause code to the ALSA thread, Clear() no-longer
blocks and everyone keeps their sanity.
2015-10-03 16:31:55 +13:00
Rohit Nirmal
6001366aac
Alsa: Silence -Wsign-compare warning.
2015-10-02 21:10:06 -05:00
booto
6c28ea58ab
AlsaSound: fix buffer type, clean up macros
2015-09-30 19:14:03 +08:00
Rohit Nirmal
3b75f45cf6
Fix building with PCH disabled.
2015-09-28 11:51:08 -05:00
Lioncash
cc036ca86c
Common: Remove other Common prefixed headers from Common.h
2015-09-26 18:51:58 -04:00
Lioncash
1d42db2439
Common: Move NonCopyable to its own header
2015-09-26 18:50:35 -04:00
Ryan Houdek
f121d7a8cd
Merge pull request #3026 from lioncash/constexpr
...
MathUtil: Make Clamp and IsPow2 constexpr functions.
2015-09-12 02:28:38 -04:00
Lioncash
b9e360df7b
MathUtil: Convert Clamp into a constexpr function
2015-09-12 01:18:28 -04:00
LAGonauta
b98b55c7be
Added X-Fi check and convert surround FLOAT to SHORT when it is detected
...
Fixed braces, first try fixing mac compilation and removed useless NULL
comparison.
2015-09-11 13:22:04 -03:00
Shawn Hoffman
aa7208e270
[windows] Update projects to vs2015.
2015-09-03 04:23:01 -07:00
Markus Wick
e60018abd4
Merge pull request #2854 from Tilka/valgrind
...
Fix some small stuff found with Valgrind
2015-08-15 20:52:12 +02:00
Markus Wick
3469694b46
Merge pull request #2676 from Stevoisiak/SpellingCorrections
...
Minor spelling corrections
2015-08-15 18:36:56 +02:00
Tillmann Karras
0b73a9ed25
PulseAudio: fix small memleak
2015-08-15 12:51:11 +02:00
Moncef Mechri
333f998123
Don't busy wait in the audio thread (ALSA)
...
When the emulation is paused and the ALSA backend is used, make the audio
thread wait on a condition variable instead of busy-waiting. This commit
fixes bug #7729
Since the ALSA API is not thread-safe, calls to snd_pcm_drop() and snd_pcm_prepare()
in AlsaSound::Clear() are protected by the same mutex as the condition variable in AlsaSound::SoundLoop()
to make sure that we do not call these functions while a call to
snd_pcm_writei() is ongoing.
2015-08-11 03:54:54 +02:00
Moncef Mechri
a0c5247743
Initialize ALSA before starting the audio thread
...
This fixes a race condition:
Before this commit, there was a race condition when starting a game:
Core::EmuThread(), after having started (but not necessarily completed)
the initialization of the audio thread, calls Core::SetState() which calls
CCPU::EnableStepping(), which in turns calls AudioCommon::ClearAudioBuffer().
This means that SoundStream::Clear() can be called before
AlsaSound::AlsaInit() has completed.
2015-08-11 03:54:54 +02:00
Markus Wick
e297e3e666
Merge pull request #2825 from lioncash/log
...
AudioCommon: Log to AUDIO, not DSPHLE
2015-08-10 10:25:51 +02:00
Moncef Mechri
8b767a1189
Use dummy audio backend if the selected backend fails to start
...
If the selected audio backend fails to Start() (which could happen for
example if there is no audio device), we currently still use the backend
anyway. This can lead to crashes on some platforms (such as Windows) and
is outright wrong anyway.
This commit fallbacks to the Null audio backend if the selected backend
couldn't be started.
This fixes bug #6001
2015-08-10 03:46:45 +02:00
Lioncash
4c6930d36c
AudioCommon: Remove unused code from XAudio streams
2015-08-09 21:37:34 -04:00
Lioncash
3f78d74fc1
AudioCommon: Log to AUDIO, not DSPHLE
...
This code is not related to DSPHLE.
2015-08-09 21:36:03 -04:00
Lioncash
7ee0e75633
Remove unnecessary virtual keywords
2015-07-30 10:33:08 -04:00
Stevoisiak
7248f9b524
Minor spelling corrections
2015-06-29 14:51:21 -04:00
Jules Blok
a71e81a143
Merge pull request #2659 from Armada651/openal-conv
...
OpenALStream: Fix sample conversion.
2015-06-27 00:13:02 +02:00
Jules Blok
86dd81cf6b
OpenALStream: Fix sample conversion.
...
Looks like it wasn't symmetric anymore.
2015-06-25 12:42:41 +02:00
Lioncash
9dd607b923
Mixer: Fix erroneous global prefixes on class variables
2015-06-20 21:48:50 -04:00
Lioncash
d81dffd4f0
Mixer: Devirtualize DTK and DSP audio logging functions
...
Their functionality is already complete in the base class; there's no need to allow overriding.
2015-06-20 21:46:20 -04:00
degasus
c375111076
Options: merge SCoreStartupParameter into SConfig
2015-06-12 19:07:45 +02:00
JosJuice
030d467d62
Use PanicAlert instead of PanicAlertT when appropriate
...
It means less work for the translators... But I'm not too sure
about this, because most of these have already been translated.
2015-06-04 13:25:17 +02:00
degasus
9a96e3c416
AudioCommon: Remove lock on Pause state
...
We had to lock audiocommon with the old asynchron HLE audio emulation,
now our Mixer is just a plain FIFO which may underrun.
Of course, this will stutter, but underruning the audio backend is likely worse.
2015-05-28 19:58:18 +02:00
Tillmann Karras
30ebb2459e
Set copyright year to when a file was created
2015-05-25 13:22:31 +02:00
Tillmann Karras
cefcb0ace9
Update license headers to GPLv2+
2015-05-25 13:22:31 +02:00
Tillmann Karras
268f52e054
Add missing license headers
2015-05-25 13:11:47 +02:00
Lioncash
6b30c9710c
SoundStream: Devirtualize StartLogAudio and StopLogAudio
...
These don't rely on anything that might need to be implemented in other SoundStream classes.
2015-05-24 06:10:11 -04:00
Lioncash
07d4dbe657
AudioCommon: Add missing override specifiers
...
Also removes unnecessary virtual keywords.
2015-05-24 06:10:03 -04:00
Lioncash
4695233c98
SoundStream: Devirtualize GetMixer
...
Since it's handled by the base class, there's no need to allow overriding.
2015-05-24 05:49:51 -04:00
Lioncash
35ee8a1362
SoundStream: Internally construct the mixer
...
Instead of creating the mixer externally and then passing it in, it can just be made within the class.
2015-05-24 05:49:41 -04:00
Lioncash
f907e5cace
AlsaSoundStream: Use an enum class for signifying ALSA thread state
2015-05-11 01:56:01 -04:00
Lioncash
353205132c
AlsaSoundStream: Convert volatile variables to atomics
2015-05-11 01:55:59 -04:00
Lioncash
7b376abd3b
Mixer: Convert volatile variables to atomics.
2015-05-11 01:55:50 -04:00
Lioncash
4920dbed13
AudioCommon: Migrate threadData to OpenALStream and AOSoundStream
...
This is only ever used in these two sound streams. Seems silly to have it as a class member. Converted it to an atomic as well.
2015-05-10 01:02:25 -04:00
Stevoisiak
78971b0840
(Visual Studio) Categorize SoundStream.h with other SoundStream files
2015-04-03 14:37:03 -04:00
Stevoisiak
93b16a4a2d
Formatting/Whitespace Cleanup
...
Various fixes to formatting and whitespace
2015-02-25 10:48:21 -05:00
Markus Wick
e0b0ef3868
Revert "High quality resampler"
2015-02-23 18:43:13 +01:00
kamiyo
e864521182
High Quality Resampler, using FIR filter
...
For more information:
https://docs.google.com/document/d/1tBEgsJh7QiwNwepXI0eobfK3U8LkJButSyeuFt1degM/edit?usp=sharing
removed: SSE includes (not used)
added: 16bit -> float -> 16bit functions
added: linear interpolator and high-quality (windowed-sinc) interpolator functions (including Resampler class)
added: dithering
changed: renamed variables and reformatted a few things to fit with style guide (braces, #include->const)
changed: use s16, u16, s32, u32 etc
changed: store samples and do all computations as floats
changed: volume from 0 - 255
2015-02-18 21:13:45 -05:00
Scott Mansell
43dfec07c9
Cleanup DotProduct function to make it more readable.
2015-02-16 13:53:58 +13:00
Scott Mansell
7add7b685f
Remove unneeded spaces from code.
...
Line now matches the style of the rest of the function.
2015-02-16 12:59:45 +13:00
magumagu
0f96a0104e
Merge pull request #1752 from Buddybenj/clean-up
...
Clean Up
2015-02-10 11:39:14 -08:00
Benjamin Przybocki
4f324ad742
Clean Up
2015-01-24 17:10:21 -06:00
skidau
6e99accf06
Merge pull request #1917 from adamdmoss/no-lfe
...
Remove explicit subwoofer/LFE channel from Pulseaudio and OpenAL
2015-01-23 12:30:48 +11:00
Adam D. Moss
05d2bf6060
Audio: Drop the LFE/subwoofer channel from the decoded surround
...
DPL2Decode still doesn't decode 5.1 properly, leaving bass in all channels, but its 5.0 is pretty good, so leave it at that.
2015-01-19 10:24:44 +00:00
Stevoisiak
cb86db7b68
Minor consistency changes
...
Mostly small changes, like capitalization and spelling
2015-01-12 15:18:18 -05:00
skidau
f7f70f9039
Merge pull request #1847 from adamdmoss/openal-floatfix
...
OpenAL: Fix volume of sample conversion
2015-01-10 12:16:05 +11:00
skidau
530f894d87
Merge pull request #1845 from adamdmoss/lfe1
...
Audio: Fix subwoofer output in software 5.1 decoding
2015-01-09 11:59:29 +11:00
skidau
ac33423db5
Merge pull request #1835 from adamdmoss/master
...
Pulseaudio: Support 5-channel surround, optional in UI
2015-01-09 11:59:02 +11:00
Adam Moss
95c912310d
PulseAudio: Support 5.1 surround, optional in UI
2015-01-08 11:10:34 +00:00
Adam Moss
b1c9f56acd
Audio: Fix warning in DPL2 subwoofer change
2015-01-08 10:48:30 +00:00
skidau
25c6f6e6a1
Merge pull request #1782 from FL-dolphinemu/master
...
Issue 7968: Added keybinds for increasing, decreasing, and muting audio.
2015-01-08 14:09:18 +11:00
Adam Moss
2c892c7b68
OpenAL: Fix volume of sample conversion
2015-01-07 12:34:02 +00:00
Adam Moss
7580069dea
Audio: Fuller subwoofer processing for software 5.1 decode
...
Code was only using front-left and front-right to calculate bass, but
HRTF code - which this was once based on - uses all five channels and
this sounds fuller.
2015-01-07 11:58:02 +00:00
Adam Moss
f324f3f68f
Audio: Fix subwoofer output in software 5.1 decoding
...
The FIR filter was only using the first sample of each input packet.
2015-01-07 10:24:25 +00:00
Tillmann Karras
6bcdb10eee
CMake: simplify some expressions
2015-01-03 13:17:57 +01:00
FL.dolphinemu
78f8bf7423
Issue 7968: Added keybinds for increasing, decreasing, and muting audio.
2014-12-28 22:03:21 +01:00
comex
b36b55cfcb
Upgrade AudioUnit API usage.
...
weird that such a simple change doesn't seem to have any obvious
documentation on Apple's website or elsewhere...
2014-11-25 00:42:21 -05:00
comex
aae234c5d7
Fix name conflict between SoundTouch BOOL and ObjC BOOL.
2014-11-25 00:27:13 -05:00
Stevoisiak
b25e1a2eb4
Various formatting and consistency fixes
2014-11-13 22:42:18 -05:00
Ryan Houdek
5204acd5ee
Fixes OpenSLES's sample rate.
...
I was statically setting the sample rate to 44.1Khz when we default to run at 48Khz.
This was causing audio to sound much too low.
2014-10-23 11:29:49 -05:00
Ryan Houdek
73512ad38f
Fix a race condition in our OpenSL ES audio backend.
...
After calling enqueue the callback would fire before we had assigned g_mixer a value.
This would cause a fun crash to happen.
2014-10-18 08:32:14 -05:00
skidau
0d1f8527c7
Merge pull request #1297 from RisingFog/audio-dump-during-emulation
...
Start/Stop Audio Dump During Emulation
2014-10-18 13:16:41 +11:00
Fog
108087bb68
Flipped Wave File Channels
...
This change was done because with the previous method of dumping audio, the mixer would handle switching the RL being emitted by the DSP to LR, and thus would provide the proper channel orientation. Because we're now dumping directly from PushSamples() and PushStreamingSamples(), it was writing the right channel to the left channel of the wave file and vice versa.
2014-10-15 23:16:48 -04:00
Fog
f2ed533841
Start/Stop Audio Dump During Emulation
2014-10-15 20:50:38 -04:00
Fog
fc4125cdd1
Proper Audio/Video Dumping
2014-10-09 00:06:04 -04:00
Lioncash
7f7fb5e70c
AudioCommon: Prefix soundStream global with g_
2014-09-30 03:06:16 -04:00
Rohit Nirmal
46057db37d
Fix build failing when disabling precompiled headers.
2014-09-19 18:17:51 -04:00
Ryan Houdek
71cb09f1ca
Merge pull request #1027 from rohit-n/change-include
...
Include CommonTypes.h instead of Common.h.
2014-09-10 00:35:16 -05:00
Rachel Bryk
f93aa7087c
Kill Core::g_CoreStartupParameter.
2014-09-09 00:24:49 -04:00
Rohit Nirmal
fbc64984ca
Include CommonTypes.h instead of Common.h.
2014-09-08 15:39:58 -04:00
Lioncash
789a500ddc
AudioCommon: Remove unnecessary usages of mem_fn
2014-09-08 13:41:02 -04:00
skidau
8abe9622fd
Route the wiimote speaker to the sound mixer (the host system's speakers). Emulated Wiimote speaker sounds will go to the host system's speakers. Real Wiimotes will continue to use their own speaker for Wiimote speaker sounds. All Wiimote speaker sound can be disabled by unchecking the "Enable Speaker Data" option.
...
Each emulated Wiimote can have its speaker routed from left to right via the "Speaker Pan" setting in the emulated wiimote settings dialog. Use any value from -127 for leftmost to 127 for rightmost with 0 being the centre.
Added code in the InputConfig to use a spin control for non-boolean values.
Defaulted the setting of "Enable Speaker Data" to disabled.
2014-09-07 14:16:20 +10:00
skidau
3caab10df8
Hooked up the emulated Wiimote speaker.
...
The Wiimotes are positioned as follows:
Wiimote 0 = Center
Wiimote 1 = Left
Wiimote 2 = Right
Wiimote 3 = Center
The Wiimote speaker output can be disabled via the "Enable Speaker Data" checkbox in the Wiimote settings.
2014-09-07 14:16:20 +10:00
Lioncash
daddc3317e
AudioCommon: Use std::string for the filename parameter of StartLogAudio
2014-09-06 23:26:08 -04:00
Lioncash
27cecf46a8
AudioCommon: Make WaveFileWriter inherit NonCopyable
2014-09-06 11:27:36 -04:00
Lioncash
019ef844d4
AudioCommon: Remove unused parameter from OpenSLESStream constructor
2014-09-06 01:42:56 -04:00
Lioncash
e10b0d1008
Merge pull request #930 from skidau/openal-seq-ms
...
Removed the auto setting of SEQUENCE_MS because the synchronised audio c...
2014-09-02 09:56:46 -04:00
Shawn Hoffman
266992684d
msvc: remove some remnants of SDL and DSound from projects and general cleanup.
2014-09-01 21:27:44 -07:00
skid
c2d7801ceb
Removed the auto setting of SEQUENCE_MS because the synchronised audio code has made it unnecessary.
2014-09-01 20:28:29 +10:00
Lioncash
377a1c8f20
AudioCommon: Get rid of now unused handle param for InitSoundStream()
2014-08-30 23:36:00 -04:00
Lioncash
2f7df4a803
AudioCommon: Declare iterator variable in loop body in DPL2Decoder
2014-08-30 21:10:18 -04:00
Lioncash
f94e764df5
AudioCommon: Clean up brace placements
2014-08-30 18:06:42 -04:00
Shawn Hoffman
af2405eefd
Remove dsound audio backend.
...
There isn't any reason to use dsound over xaudio.
2014-08-23 11:19:19 -07:00
Shawn Hoffman
1332805bb6
Add headers required by XAudio2_7 to externals.
...
This makes all builds' audio compatible with downlevel Windows and removes
the need for developers to install the June 2010 DirectX SDK.
2014-08-23 11:03:07 -07:00
Lioncash
4759510f70
Get rid of instances of "using namespace std;" in the project
2014-08-17 02:05:33 -04:00
Lioncash
d18d3e1f3e
Common: Get rid of StdConditionVariable, StdMutex, and StdThread.
...
All of the compilers we support have support for these now.
2014-08-16 23:33:19 -04:00
Shawn Hoffman
f1b82a34b2
Windows: Use a shared precompiled header for dolphin code under Source/
2014-08-14 23:51:13 -07:00
Pierre Bourdon
87e7c1ee46
Merge pull request #724 from lioncash/mem_fn
...
AudioCommon: Get rid of some unnecessary mem_fn calls
2014-08-03 21:25:24 -07:00
Lioncash
47847bc8dd
AudioCommon: Remove an unnecessary parameter from the OpenAL constructor
...
This wouldn't even be saved to anything.
2014-08-02 23:48:26 -04:00
Lioncash
17e79a966a
AudioCommon: Get rid of some unnecessary mem_fn calls
2014-08-02 23:42:34 -04:00
Tony Wasserka
9c7d4b6408
Merge pull request #667 from RachelBryk/remove-audio-limit
...
Remove audio frame limit.
2014-07-28 14:38:35 +02:00
Lioncash
4fa71dd59e
Remove fakepoll.h.
...
It was only used for Windows XP and lower.
This also bumps the _WIN32_WINNT define in the stdafx precompiled headers to set the minimum version as Windows Vista.
2014-07-26 22:53:40 -04:00
Rachel Bryk
acaac51077
Remove audio frame limit.
...
It serves no purpose and causes bugs and confusion for users.
2014-07-25 12:17:10 -04:00
booto
7d920bbb3a
AudioCommon/Mixer: Allow input sample rate changes
2014-07-24 22:42:29 +08:00
Scott Mansell
48afab2685
Correct left/right volume for padded samples.
2014-07-17 18:41:18 +12:00
Scott Mansell
a0101c5d29
Audio Mixer: move Static variable to a member variable.
...
The two instances of this class were sharing a frac variable causing
audio glitches when both were running (which is now all the time).
Fixes issue 7463 (Since DTK merge, audio has staic in it).
2014-07-17 18:26:21 +12:00
Lioncash
2c73472671
Correct the function casing for DPL2Decoder
...
Brings it more in-line with the rest of the codebase.
2014-07-14 03:34:40 -04:00
Tillmann Karras
0ccee6c87b
Fix warnings unearthed by #579
2014-07-13 02:16:51 +02:00
degasus
6d3f249dcc
mark all local variables as static
2014-07-11 16:10:20 +02:00
degasus
22e1aa5bb4
mark all local functions as static
2014-07-11 16:07:23 +02:00
Pierre Bourdon
b0b70381f7
Revert "Don't add segfault handler in interpreter mode"
2014-07-07 05:30:06 +02:00
Tillmann Karras
20a16beabd
enum CPUState: rename CPU_* to STATE_*
2014-07-05 11:01:49 +02:00
Tillmann Karras
d3fa8a6167
Reorder class initializer lists
2014-07-04 03:53:22 +02:00
Lioncash
11d304ae29
Merge pull request #259 from magumagu/dtk-rewrite
...
DTK rewrite
2014-06-26 20:01:07 -04:00
magumagu
ca0203a1cc
AudioCommon: restore support for DTK volume setting.
2014-06-26 16:56:57 -07:00
Lioncash
8b13afbb8e
Remove the 32-bit config platform from the VS solution and projects
2014-06-24 22:07:26 -04:00
magumagu
affb7c17fc
Audio mixer: fix a couple compiler warnings.
2014-06-15 14:51:33 -07:00
magumagu
40e2ce4f27
Audio mixer: remove check for ratio > 1.0.
...
The code actually handles this case correctly; the algorithm is linear
interpolation between the two closest samples, and the way it is written
should work correctly with any ratio.
2014-06-15 14:51:20 -07:00
magumagu
d43ecd0bd1
Rewrite handling of DTK (streaming) audio.
...
The primary motivation here is to make sure we submit samples from the
CPU thread. This makes sure the timing of related interrupts accurate,
and generally keeps the different kinds of audio synchronized. This will also
allow improvements to audio dumping functionality.
The new code is also more concise because it gets rid of some duplicated
audio mixing code.
2014-06-14 15:55:20 -07:00
magumagu
87a804fdfc
Revert "DSound: use DSound notifications to produce sound."
...
This reverts commit 4990b8910b
.
The commit is causing substantial performance issues for the DSound
backend which I somehow didn't catch during testing.
2014-05-31 13:35:46 -07:00
Lioncash
49b0eef393
Remove the min/max functions in CommonFuncs.
...
The algorithm header has the same functions.
2014-05-29 21:44:41 -04:00
shuffle2
ca3002977b
Merge pull request #256 from magumagu/dsound-notify
...
DSound: use DSound notifications to produce sound.
2014-05-23 17:02:55 -07:00
degasus
30586f4d29
Add set/get functions for IsFramelimiterTempDisabled
2014-04-30 12:51:13 +02:00
degasus
8483811b39
Add a hotkey for disabling the framelimit.
...
Atm this is hardcoded to '\t'.
2014-04-30 12:50:53 +02:00
Pierre Bourdon
6bdcbad3e4
Common: Move the Event class to a separate file, and add tests for it. Fix includes everywhere to match this.
2014-04-14 10:54:07 +02:00
magumagu
4990b8910b
DSound: use DSound notifications to produce sound.
...
Pretty straightforward; IDirectSoundNotify lets you register for
notifications after a certain amount of sound has played, so use that
instead of depending on Update() notifications from the CPU thread.
Also, while I'm here, reduce the buffer size by a factor of 4; this seems
to reduce the latency, although the difference is sort of subtle.
2014-04-09 13:41:27 -07:00
lioncash
e79895e372
Replace use of the deprecated mem_fun function with mem_fn.
2014-04-01 12:09:22 -04:00
Pierre Bourdon
76fafb1c7b
Merge pull request #220 from magumagu/audio-handling-cleanup-v2
...
Audio handling cleanup v2
2014-03-30 13:24:52 +02:00
magumagu
3afa17f752
Move audio handling out of DSP emulation.
...
This is good for a couple of reasons: one, it gets rid of duplicated code,
and two, DSP emulation shouldn't need to interact with audio in the first
place.
2014-03-29 11:19:32 -07:00
magumagu
78499e5b7c
Delete AudioCommon::UseJIT().
2014-03-29 11:19:31 -07:00
magumagu
102ea55f20
Move mixer construction to AudioCommon.cpp.
2014-03-29 11:19:30 -07:00
magumagu
aac4206664
Move UDSPControl structure into DSP.h .
2014-03-29 11:19:19 -07:00
Pierre Bourdon
664c8d30a0
Remove all trailing whitespaces from our codebase.
2014-03-29 11:05:44 +01:00
magumagu
ae9367a89b
Delete a bunch of old audio HLE cruft.
...
This commit intentionally breaks audio output from HLE Zelda UCode; no other functional change.
2014-03-26 11:17:19 -07:00
lioncash
aecc8ea666
Remove usesMixer function from the sound streams.
...
This isn't used anywhere in the codebase. Not even the base SoundStream has it as part of its interface.
2014-03-18 10:42:07 -04:00
lioncash
5e5ab61d0c
Mark the audio streams as final.
...
These aren't intended to be continually extended.
2014-03-18 10:37:45 -04:00
Lioncash
a82675b7d5
Kill off some usages of c_str.
...
Also changes some function params, but this is ok.
Some simplifications were also able to be made (ie. killing off strcmps with ==, etc).
2014-03-14 13:51:23 -04:00
Matthew Parlane
31cfc73a09
Fixes spacing for "for", "while", "switch" and "if"
...
Also moved && and || to ends of lines instead of start.
Fixed misc vertical alignments and some { needed newlining.
2014-03-11 00:35:07 +13:00
Tillmann Karras
d802d39281
clang-modernize -use-nullptr
...
and s/\bNULL\b/nullptr/g for *.cpp/h/mm files not compiled on my machine
2014-03-09 21:14:26 +01:00
Tillmann Karras
f28116b7da
clang-modernize -add-override
2014-03-09 21:12:01 +01:00
Tillmann Karras
c89f04a7c5
clang-modernize -loop-convert
...
and some manual adjustments
2014-03-09 21:11:59 +01:00
Tillmann Karras
315a8ba1c0
Various changes suggested by cppcheck
...
- remove unused variables
- reduce the scope where it makes sense
- correct limits (did you know that strcat()'s last parameter does not
include the \0 that is always added?)
- set some free()'d pointers to NULL
2014-02-28 12:43:20 +01:00
Tillmann Karras
6914eca167
Fix various warnings reported by clang
...
- mostly remove unused variables
- rename some generic JIT identifiers
2014-02-28 12:28:19 +01:00
Pierre Bourdon
fca12c4c4e
Fix more header sorting issues in AudioCommon/ (now check-includes clean).
2014-02-20 01:01:10 +01:00
Lioncash
2afe215271
Convert all includes to relative paths.
2014-02-18 02:19:10 -05:00
Lioncash
3fd87a7636
Second and final pass of clearing out tabs.
2014-02-17 02:19:41 -05:00
Lioncash
6c4ee1753a
Fix some vertical alignments
...
ie. uses spaces for alignment.
2014-02-16 20:12:05 -05:00
degasus
9e56b1d343
Disable framerate correction for OpenAL
...
OpenAL itself stretch the time on slowdowns, so the Mixer isn't allowed also to change the rate.
2014-02-13 13:22:29 +01:00
degasus
bbd58b8f6a
change AI sampling rate based on framelimit
2014-02-11 14:53:53 +01:00