summaryrefslogtreecommitdiff
path: root/Source/Core/AudioCommon
AgeCommit message (Collapse)Author
2025-05-07CubebUtils: Add COM helper classSepalani
2025-05-07IOS/USB: Emulate Wii Speak using cubebSepalani
Based on @noahpistilli (Sketch) PR: https://github.com/dolphin-emu/dolphin/pull/12567 Fixed the Windows support and the heisenbug caused by uninitialized members. Config system integration finalized.
2025-05-04Merge pull request #13608 from jordan-woyak/async-work-threadAdmiral H. Curtiss
Common: Add AsyncWorkThread.
2025-05-02AudioCommon/CubebUtils: Fix logged file name.Jordan Woyak
2025-05-01Core and AudioCommon: Use AsyncWorkThread.Jordan Woyak
2025-04-21AudioCommon: Make cubeb sound backend default on Linux.Jordan Woyak
2025-04-05Mixer: Use Doubles for Sample Rate Conversion.Sam Belliveau
2025-04-01Improve Performance of Granular Buffering + User Adjustable Buffer SizeSam Belliveau
2025-03-26AudioPanel: Refactor to use Config system. Some options were changed to a ↵TryTwo
different format, for easier compatibility. Removed VolumeChanged signal, as ConfigChanged will trigger what is needed. Only applies UpdateSoundStream to things that can change during emulation. Settings::SetVolume might no longer be used, but left it in.
2025-03-14AudioCommon: Added Granular SynthesisSam Belliveau
2025-01-25CMakeLists: Add flag to disable CubebOatmealDome
2024-07-26Adjust order and spacing of various #includesDentomologist
Move some #includes around to match the Contributing guidelines.
2024-06-20AudioCommon: unlock mutex explicitly to avoid -Wunused-result warningTillmann Karras
2024-06-04Android: Implement OpenSLESStream::SetRunningJosJuice
2024-04-16AudioCommon: When ALSA is absent on Linux, default to Cubeb backendDentomologist
Default to Cubeb instead of the NULL backend on Linux when ALSA isn't valid.
2024-04-14Set default sound backend on OpenBSD to cubebBrad Smith
Set the default sound backend to cubeb instead of the default being none.
2024-03-17Cubeb: check correct log levelTillmann Karras
2024-03-14Cubeb: change log level from NOTICE to INFOTillmann Karras
Cubeb logs a message at CUBEB_LOG_NORMAL verbosity every time you start or stop a stream which can get a bit annoying when using frame advance at Dolphin's default verbosity.
2023-08-17Use structs for config callback IDsJosJuice
This way you can't mix up regular config callback IDs and CPU thread config callback IDs. (It would be rather bad if you did!)
2023-07-22cubeb: Change name to "Dolphin Emulator"Martino Fontana
To avoid conflicts with KDE's file manager.
2023-06-30Merge pull request #11955 from TellowKrinkle/CMakeDependenciesAdmiral H. Curtiss
CMake: Allow ignoring system packages
2023-06-18Replace std::ostringstream usage with fmt::formatget
2023-06-15CMake: Use targets for all optionally-external dependenciesTellowKrinkle
2023-03-22Common: Move FixedSizeQueue into Common namespaceLioncash
Gets this out of the global namespace.
2023-03-13Skylander Portal: Play Trap Team AudioJoshua de Reeper
Asserts and length handling
2023-02-04WorkQueueThread: provide name and function at same timeScott Mansell
2023-01-30Merge pull request #10947 from Zopolis4/opensleuthAdmiral H. Curtiss
Restrict OpenSLES to Android via CMake
2023-01-23windows: replace comdef dependency with winrtShawn Hoffman
2023-01-06CoreTiming: Throttle Before Every Event Using ChronoSam Belliveau
2022-12-23New FrameTime/VBlank Analyzer + GraphSam Belliveau
2022-11-27Correctly call CoUninitialize() on Cubeb helper class destruction.Admiral H. Curtiss
2022-11-26Core: Use extra thread for Cubeb on Windows to not disturb the CoInitialize ↵Admiral H. Curtiss
state of whatever thread happens to call a Cubeb function.
2022-11-26Core: Abide by COM MTA requirement for cubeb on Windows. Partially based on ↵Admiral H. Curtiss
https://github.com/dolphin-emu/dolphin/pull/8920#discussion_r459746604 Co-authored-by: Michael M <mchtly@gmail.com>
2022-11-26Externals: Update cubeb to ↵Admiral H. Curtiss
mozilla/cubeb@773f16b7ea308392c05be3e290163d1f636e6024 and make it a submodule. CMakeLists.txt has been extracted and modified a bit to work with Dolphin's typical build settings.
2022-11-06AudioCommon: Pass Core::System to AudioCommon functions.Admiral H. Curtiss
2022-10-22WaveFile: Fix size checkPokechu22
`count` is the number of stereo samples to write (where each stereo sample is two shorts), while `BUFFER_SIZE` is the size of the buffer in shorts. So `count` needs to be multiplied by `2`, not `BUFFER_SIZE`. Also, when this check was failed, the previous code just clobbered whatever was past the end of the buffer after logging the warning, which corrupted `basename`, eventually resulting in Dolphin crashing. This affected Datel's Wii-compatible Action Replay, which uses a block size of 2298, or 18384 stereo samples, which is 36768 shorts, which is bigger than the buffer size of 32768. (However, the previous commit means that only one block is transfered at a time, eliminating this issue; fixing the bounds check is just a general safety thing instead of an actual bugfix now.)
2022-09-08Mixer: Add assertions regarding num_samples versus buffer lengthPokechu22
2022-09-08Mixer: Use smaller array for PushWiimoteSpeakerSamplesPokechu22
2022-08-31AudioCommon: Move sound stream variables to Core::System.Admiral H. Curtiss
2022-08-08Restrict OpenSLES to Android via CMakeZopolis4
2022-07-25StripSpaces: only strip spacesShawn Hoffman
StripWhitespace maintains old behavior
2022-07-18cubeb: fix logged source file pathsShawn Hoffman
2022-07-03Do not directly store input sample rate, rather just store a divisor for ↵CasualPokePlayer
that sample rate, with it using a fixed dividend of 54000000 * 2. This should reduce (but not completely eliminate) gradual audio desyncs in dumps. This also allows for accurate sample rates for the GameCube. Completely eliminating gradual audio desyncs will require resampling to an integer sample rate, as nothing seems to support a non-integer sample rate.
2022-06-10have audio dumps apply volume (fixes cases of audio dumps being "too loud" ↵CasualPokePlayer
and in game audio controls having no effect)
2022-05-22cmake: Don't use PCH with Qt6.Admiral H. Curtiss
2022-01-29IOFile: Make origin parameter to Seek() an enum class.Admiral H. Curtiss
2022-01-09Use HRWrap in remaining locationsPokechu22
Note that D3DCommon can't use DX11HRWrap or DX12HRWrap since it's shared between them.
2022-01-06Core/AudioCommon: Add config caching to Mixer.Admiral H. Curtiss
2022-01-06Config: Port TimingVariance setting to new config system.Admiral H. Curtiss
2022-01-06Config: Port emulation speed setting to new config system.Admiral H. Curtiss