Commit graph

92 commits

Author SHA1 Message Date
Lioncash 93bd630d40 audio_core/sink_details: Change std::string parameter into std::string_view
The given string is only ever used for lookup and comparison, so we can
just utilize a non-owning view to string data here
2018-09-15 15:48:24 +02:00
Weiyi Wang 7d8f115185 Prefix all size_t with std::
done automatically by executing regex replace `([^:0-9a-zA-Z_])size_t([^0-9a-zA-Z_])` -> `$1std::size_t$2`
2018-09-06 16:03:28 -04:00
Merry b130dd6842
Merge pull request #4161 from FearlessTobi/port-1139
Port #1139 from yuzu: "bit_field: Convert ToBool() into explicit operator bool"
2018-09-02 09:53:50 +01:00
fearlessTobi 488694d01f Replace ToBool() with static_cast() 2018-09-01 15:50:57 +02:00
MerryMage 7daed185cb cubeb_sink: Protect queue against multithreaded access 2018-08-31 18:44:19 +01:00
Lioncash 29e5dec986 sink_details: Deduplicate long std::function repetition
We can just use type aliases to avoid needing to write the same long
type twice
2018-08-23 17:03:09 +02:00
Lioncash 50b58da56c sink_details: std::move std::function instances
Given std::function is allowed to potentially allocate, these should be
std::move'd to prevent potential reallocation (should that ever happen).
2018-08-23 17:03:00 +02:00
James Rowe c35a251d86
Merge pull request #3985 from BreadFish64/fix-warnings
core: clean up warnings
2018-08-02 11:14:57 -06:00
James Rowe 14b0435df2
Merge pull request #3994 from FearlessTobi/replace-clamp-functions
Remove MathUtil::Clamp and replace it with its std:: counterpart
2018-08-02 11:08:07 -06:00
BreadFish64 74cd98ecad core: clean up warnings 2018-08-01 14:10:23 -05:00
NarcolepticK 8f70e9a318 service/dsp: Addressed comments about function name and pointer type 2018-07-29 15:18:30 -04:00
fearlessTobi 71e1d6e25d Fix compile errors 2018-07-26 13:23:25 +02:00
NarcolepticK b840c63386 service/dsp: Clean up global state 2018-07-24 16:15:37 -04:00
fearlessTobi 7a3e126a4f Replace MathUtil::Clamp with its std counterpart 2018-07-24 19:08:17 +02:00
James Rowe 2f8c9c8126
Merge pull request #3831 from FearlessTobi/add-volume-slider
citra_qt: Add a volume slider
2018-07-18 09:56:47 -06:00
Merry 47d283a1e4
Merge pull request #3909 from MerryMage/rm-SetDevice
sink_details: Tidy-up device listing code
2018-07-12 20:49:29 +01:00
MerryMage 7d642b25e9 sink: Make auto device name a constant 2018-07-12 15:56:37 +01:00
NarcolepticK c39daa3c01 service/dsp: Migrate to ServiceFramework (#3915)
* service/dsp: Migrate to ServiceFramework

* service/dsp: Removed redundant buffer copy

* service/dsp: Addressed comment about pushing u32 instead of bool

* service/dsp: Fix clang format

* service/dsp: Addressed comment about minimizing global state

* service/dsp: Addressed comments and fixed log call issue

* service/dsp: Fix missed clang format
2018-07-12 17:54:26 +03:00
fearlessTobi a780f3821e citra_qt: Add a volume slider 2018-07-03 17:26:50 +02:00
MerryMage d269beab0d sink_details: Listing available devices should be separate from sink construction 2018-07-02 14:09:17 +01:00
MerryMage ce5a5412ae sink_details: Remove unnecessary lambdas 2018-07-02 13:26:14 +01:00
MerryMage 05fc17b88a sink: Remove unnecessary SetDevice method
Unused, doesn't do anything.
2018-07-02 13:23:40 +01:00
wwylele 0eab948728 reformat all files with clang-format 2018-06-29 16:56:12 +03:00
wwylele 7c5a76e58b log: replace all NGLOG with LOG 2018-06-29 14:18:07 +03:00
darkf 04139e26bd cubeb_sink: Skip devices without a name
Previously this would crash.
2018-05-31 21:01:48 -05:00
darkf ce6d9e2e28 externals: Don't build cubeb with tests 2018-05-31 21:01:48 -05:00
darkf 35c43aa293 audio_core: Only include cubeb if it's available 2018-05-31 21:01:48 -05:00
darkf af73dd45f0 audio_core: Implement a cubeb audio sink 2018-05-31 21:01:48 -05:00
Daniel Lim Wee Soong 38e2b6c8d8 Undo changes to unrelated files and fix formatting 2018-03-25 00:54:40 +08:00
Daniel Lim Wee Soong df816b5eaf Address review comments
* Convert %x to {:x}
* Convert {0:#010x} to {:#010x}
* Remove `? true : false` statement
* Remove `.c_str()` for strings
2018-03-24 22:25:50 +08:00
Daniel Lim Wee Soong 693b190274 audio_core: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-24 21:45:58 +08:00
James Rowe f61141e86a Update the entire application to use the new clang format style 2018-03-09 10:54:43 -07:00
MerryMage 90b835758f decode: Fix PCM8 decoding
Signal range is -32767 to 32768, not -127 to 128.
2018-02-25 12:42:21 +00:00
MerryMage adf9a19095 fixup! audio_core: Remove global state 2018-02-04 22:23:51 +00:00
MerryMage ab3d53131a audio_core: Remove global state 2018-02-03 15:15:17 +00:00
wwylele 80ed0f03ac cmake: add missing ${...} for variables inside generator expressions 2017-12-23 03:00:15 +02:00
Lioncash ab021d163e CMakeLists: Derive the source directory grouping from targets themselves
Removes the need to store to separate SRC and HEADER variables,
and then construct the target in most cases.
2017-12-11 21:11:52 -05:00
bunnei 16dcec05d1
Merge pull request #3151 from MerryMage/looping-bug
Audio/HLE/Source: Fix looped state not updating
2017-11-29 10:43:06 -05:00
B3n30 e9a95b2e7d
CoreTiming: Reworked CoreTiming (#3119)
* CoreTiming: New CoreTiming; Add Test for CoreTiming
2017-11-25 14:56:57 +01:00
MerryMage 8a5cc14ba4 Audio/HLE/Source: Fix looped state not updating
Bugfix for ff280800.
2017-11-25 11:10:10 +00:00
MerryMage 211cc5e28f sdl2_sink: Disallow audio device from changing any parameter other than the frequency
We currently do not handle the cases when channel number or channel format differ from what we expect.
2017-10-24 14:03:34 +01:00
Huw Pascoe a13ab958cb Fixed type conversion ambiguity 2017-09-30 09:34:35 +01:00
Subv d7459354f5 Audio: Use std::deque instead of std::vector for the audio buffer type (StereoBuffer16).
The current code inserts and deletes elements from the beginning of the audio buffer, which is very inefficient in an std::vector.

Profiling was done using VisualStudio2017's Performance Analyzer in Super Mario 3D Land.

Before this change: AudioInterp::Linear had 14.14% of the runtime (inclusive) and most of that time was spent in std::vector's insert implementation.
After this change: AudioInterp::Linear has 0.36% of the runtime (inclusive)
2017-09-25 18:31:37 -05:00
MerryMage 933508e2a2 interpolate: Interpolate on a frame-by-frame basis 2017-08-28 10:54:41 +01:00
Yuri Kunde Schlesner 74afcd5328 CMake: Add SoundTouch include path to target property 2017-05-27 22:09:28 -07:00
Yuri Kunde Schlesner 776cb91785 CMake: Define an interface target for SDL2 definitions 2017-05-27 21:38:49 -07:00
Yuri Kunde Schlesner 7b81903756 CMake: Correct inter-module dependencies and library visibility
Modules didn't correctly define their dependencies before, which relied
on the frontends implicitly including every module for linking to
succeed.

Also changed every target_link_libraries call to specify visibility of
dependencies to avoid leaking definitions to dependents when not
necessary.
2017-05-27 18:41:24 -07:00
Yuri Kunde Schlesner b4a93cfdde DSP: Create backing memory for entire DSP RAM
Also move address space mapping out of video_core.
2017-05-09 21:44:00 -07:00
Mat M 0cb52ee74a Doxygen: Amend minor issues (#2593)
Corrects a few issues with regards to Doxygen documentation, for example:

- Incorrect parameter referencing.
- Missing @param tags.
- Typos in @param tags.

and a few minor other issues.
2017-02-26 17:58:51 -08:00
Jake Merdich ff28080091 Support looping HLE audio (#2422)
* Support looping HLE audio
* DSP: Fix dirty bit clears, handle nonmonotonically incrementing IDs
* DSP: Add start offset support
2017-01-29 23:52:25 -08:00