Commit Graph

645 Commits

Author SHA1 Message Date
Admiral H. Curtiss 36cfcb530f
IOFile: Make origin parameter to Seek() an enum class. 2022-01-29 06:49:21 +01:00
Pokechu22 ca9bf3174f Use HRWrap in remaining locations
Note that D3DCommon can't use DX11HRWrap or DX12HRWrap since it's shared between them.
2022-01-09 12:44:55 -08:00
Admiral H. Curtiss eb5bb2993e
Core/AudioCommon: Add config caching to Mixer. 2022-01-06 16:43:43 +01:00
Admiral H. Curtiss 2aa44b10ba
Config: Port TimingVariance setting to new config system. 2022-01-06 16:13:56 +01:00
Admiral H. Curtiss fb47035f97
Config: Port emulation speed setting to new config system. 2022-01-06 16:13:54 +01:00
Pokechu22 2025763420 Treewide: Adjust order of includes 2021-12-10 14:49:57 -08:00
Mai M 6c72e6814d
Merge pull request #10169 from leoetlino/fmt-localtime
Use fmt::localtime instead of thread-unsafe std::localtime
2021-11-07 00:08:14 -04:00
Pokechu22 04d8cdfe88 Convert LOG_TYPE and LOG_LEVELS to enum class 2021-10-24 11:48:36 -07:00
Léo Lam 8195d0bda1
Merge pull request #10144 from malleoz/dsp-onion
Port Main.DSP to MainSettings
2021-10-16 11:32:38 +02:00
sowens99 8ea6bef98f Port Main.DSP to MainSettings
While trying to work on adding audiodump support for CLI, I was alerted that it was important to first try moving the DSP configs to the new config before continuing, as that makes it substantially easier to write clean code to add such a feature.

This commit aims to allow for Dolphin to only rely on the new config for DSP-related settings.
2021-10-15 23:24:46 -04:00
Léo Lam fd7df2ccae
Use fmt::localtime instead of thread-unsafe std::localtime
fmt::localtime is also less awkward to use compared to std::localtime.
2021-10-15 22:49:13 +02:00
Léo Lam 6bf10e0276
Merge pull request #10149 from malleoz/audiodump-add-timecode
Add Game ID, timecode to dspdump and dtkdump filenames
2021-10-15 19:42:30 +02:00
Pokechu22 78bfd25964 Fix all uninitialized variable warnings (C26495) 2021-10-13 12:32:16 -07:00
sowens99 1d5d896eaa Add timecode to dspdump and dtkdump
Match the same formatting present in framedump filenames.
2021-10-03 18:20:01 -04:00
Tillmann Karras eda2035874 AudioCommon: rename isValid() to IsValid() 2021-08-08 03:05:03 +01:00
Tillmann Karras b6d8c111bc AudioCommon: make SoundLoop() non-virtual and private 2021-08-08 00:15:05 +01:00
Tillmann Karras d14b9a73b2 AudioCommon: get rid of Update(), it never does anything 2021-08-08 00:14:49 +01:00
Tillmann Karras c2d396526b AudioCommon: fix "Error stopping stream" when emulation is paused 2021-08-08 00:14:24 +01:00
Bonta d0f0b4c0e0 SI: Implement GBAEmu device 2021-07-13 16:42:57 +02:00
Bonta 502def7f71 Mixer: Support GBA samples mixing 2021-07-13 16:40:07 +02:00
Pierre Bourdon e149ad4f0a
treewide: convert GPLv2+ license info to SPDX tags
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
2021-07-05 04:35:56 +02:00
Pokechu22 004dfd1586 Replace uses of cassert with Common/Assert.h 2021-04-02 10:18:18 -07:00
Bonta-kun 66e39de1ab AudioCommon: Initialize before HW 2021-03-24 14:11:49 +01:00
JosJuice 18d95dfcca
Merge pull request #8316 from CookiePLMonster/wasapi-code-improvements
WASAPI code improvements
2021-03-11 21:18:16 +01:00
Shawn Hoffman 500a694ca8 msbuild: bundle all dolphin "core" code into single library 2021-01-27 14:29:49 -08:00
Shawn Hoffman 84128d9532 rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
Silent cb854d7832
AudioCommon/WASAPI: Construct std::thread with invoke semantics instead of a lambda 2021-01-12 19:25:40 +01:00
Silent 11c5150c16
AudioCommon/WASAPI: Factorize device enumeration logic into a function to greatly reduce code duplication 2021-01-12 19:25:38 +01:00
Silent c373890505
AudioCommon/WASAPI: Do volume adjustment only when really needed
This skips a potentially costly loop if volume is 100% or 0%,
as for former there is no need for volume adjustment,
while latter can be solved by specifying a AUDCLNT_BUFFERFLAGS_SILENT flag
2021-01-12 19:24:49 +01:00
Silent 991b3ba8c2
AudioCommon/WASAPI: Remove thread unsafe nullptr checks giving a false sense of safety 2021-01-12 19:24:49 +01:00
Silent 5dbbf36563
AudioCommon/WASAPI: Use std::string_view where applicable 2021-01-12 19:24:46 +01:00
Silent 7d59ad262f
AudioCommon/WASAPI: Use leaner memory model on m_running, no need for a full barrier 2021-01-12 19:21:54 +01:00
Silent ee60be4501
AudioCommon/WASAPI: Simplify thread synchronization model by not detaching WASAPI handler thread 2021-01-12 19:21:54 +01:00
Silent c5a372ab2a
AudioCommon/WASAPI: Use WRL/WIL whenever possible
This fixes numerous resource leaks, as not every return path cleaned every created resource
Now they are all managed automatically and "commited" to WASAPIStream class fields only
after it's certain they initialized properly
2021-01-12 19:21:22 +01:00
Silent 374629ef30
AudioCommon: Make HandleWinAPI handle all success return values properly, not just S_OK 2021-01-12 19:18:48 +01:00
Lioncash 56d233c47c AudioCommon: Convert alerts over to fmt-based variants
Continues the migration over to fmt

Converts two panic alerts into error logs, since they aren't really
things a user can do anything about.
2020-11-27 10:10:11 -05:00
Léo Lam 23c9179fb6
Merge pull request #9071 from orbea/cmake
cmake: Silence warnings.
2020-10-26 18:48:42 +01:00
Lioncash 22a79289d3 AudioCommon: Migrate logging over to fmt
printf specifiers, begone!
2020-10-21 13:32:28 -04:00
Lioncash 425f2aa013 Common/Log: Add basic fmt-capable functions to the interface.
Provides a basic extension to the interface to begin migration off of
the printf-based logging system.

Everything will go through macros with the same style naming as the old
logging system, except the macros will have the _FMT suffix, while the
migration is in process.

This allows for peacemeal migration over time instead of pulling
everything out and replacing it all in a single pull request, which
makes for much easier reviewing.
2020-10-21 10:49:35 -04:00
JosJuice cb14b65aad CMake: Fix build errors exposed by making common dependent on fmt 2020-10-19 14:36:09 +02:00
Jordan Woyak 3e6599b890 AudioStretcher: Keep default parameters. 2020-10-11 12:43:45 -05:00
orbea 2bfbc4d79f cmake: Silence warnings. 2020-09-08 21:18:40 -07:00
LC 8e505ad8d5
Merge pull request #9055 from JosJuice/gc-sample-rate
AudioInterface: Use 32029/48043 Hz in more places
2020-09-07 22:35:00 -04:00
JosJuice bd44106fec AudioCommon: Get initial sample rates from AudioInterface 2020-09-06 15:37:20 +02:00
Shawn Hoffman 2f47f486af msbuild: re-enable standalone vcxproj processing 2020-08-22 16:17:50 -07:00
Shawn Hoffman 94bf48b67c msbuild: refactor stuff out of project files (for dolphin) 2020-08-22 16:17:50 -07:00
Shawn Hoffman 36ace8eb52 prettify some constructs in vcxproj files 2020-08-22 16:17:50 -07:00
degasus 9fd1385733 Externals: Fix OpenAL include directory. 2020-04-29 13:07:51 +02:00
degasus 239cde8aea Externals: Alter the soundtouch include directory.
We must not provide the /Externals directory as global include directory.
Here, this yield a crash because of external minizip header and system library mismatch.

Soundtouch itself recormends to include it with <SoundTouch.h> and -I/usr/include/soundtouch, so this should fit better.
2020-04-29 11:30:26 +02:00
David Korth c2dd2e8a2e Use std::istringstream or std::ostringstream instead of std::stringstream where possible.
This removes std::iostream from the inheritance chain, which reduces
overhead slightly.
2019-12-29 23:45:02 -05:00