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
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
e9a95b2e7d
CoreTiming: Reworked CoreTiming ( #3119 )
...
* CoreTiming: New CoreTiming; Add Test for CoreTiming
2017-11-25 14:56:57 +01:00
8a5cc14ba4
Audio/HLE/Source: Fix looped state not updating
...
Bugfix for ff280800
.
2017-11-25 11:10:10 +00:00
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
a13ab958cb
Fixed type conversion ambiguity
2017-09-30 09:34:35 +01:00
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
933508e2a2
interpolate: Interpolate on a frame-by-frame basis
2017-08-28 10:54:41 +01:00
74afcd5328
CMake: Add SoundTouch include path to target property
2017-05-27 22:09:28 -07:00
776cb91785
CMake: Define an interface target for SDL2 definitions
2017-05-27 21:38:49 -07:00
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
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
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
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
3545b144f1
fixed the override warning
...
```
In file included from citra/src/audio_core/sink_details.cpp:11:
citra/src/./audio_core/sdl2_sink.h:25:10: warning: 'SetDevice' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
void SetDevice(int device_id);
^
citra/src/./audio_core/sink.h:39:18: note: overridden virtual function is here
virtual void SetDevice(int device_id) = 0;
^
```
2017-01-27 14:24:14 -06:00
f852369986
SDL: Select audio device ( #2403 )
...
* Initial Commit
Added Device logic to Sinks
Started on UI for selecting devices
Removed redundant import
* Audio Core: Complete Device Switching
Complete the device switching implementation by allowing the output
device to be loaded, changed and saved through the configurations menu.
Worked with the Sink abstraction and tuned the "Device Selection"
configuration so that the Device List is automatically populated when
the Sink is changed.
This hopefully addresses the concerns and recommendations mentioned in
the comments of the PR.
* Clean original implementation.
* Refactor GetSinkDetails
2017-01-25 22:33:26 -05:00
efcab1e918
time_stretch: Add missing #pragma once directive
2016-12-12 19:16:46 -05:00
963aedd8cc
Add all services to the Service namespace
...
Previously there was a split where some of the services were in the
Service namespace and others were not.
2016-12-11 00:07:27 +00:00
cef0f5b5a7
audio_core: SelectSink should default to auto if sink_id is invalid
2016-12-10 01:26:22 +00:00
5dd31f204a
Improve verbosity of audio errors with SDL_GetError()
2016-11-22 17:28:11 +01:00
13d46f6820
Fix typos
2016-10-20 12:26:59 -02:00
84fbbe2629
Use negative priorities to avoid special-casing the self-include
2016-09-21 00:15:56 -07:00
ebdae19fd2
Remove empty newlines in #include blocks.
...
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
2016-09-21 11:15:47 +09:00
396a8d91a4
Manually tweak source formatting and then re-run clang-format
2016-09-18 21:14:25 -07:00
dc8479928c
Sources: Run clang-format on everything.
2016-09-18 09:38:01 +09:00
991cdda3fc
audio_core: Tweak audio latency
2016-09-07 15:27:32 +01:00
0bbda3bab4
codec: Fix ADPCM distortion caused by incorrect nibble order
...
Closes #2049 .
Signed-off-by: MerryMage <MerryMage@users.noreply.github.com >
2016-09-03 14:06:25 +01:00
904a319694
audio_core: Add EnableStretching to interface so that one can toggle stretching on and off
2016-08-31 16:56:30 +01:00
0ef4185644
sink: Change EnqueueSamples to take a pointer to a buffer instead of a std::vector
2016-08-31 16:55:10 +01:00
f4d364a60e
DSP/HLE: Audio output
2016-05-19 07:25:26 +01:00
6542c60602
DSP/HLE: Implement mixer processing
2016-05-19 07:24:39 +01:00
6f6af6928f
AudioCore: Implement time stretcher ( #1737 )
...
* AudioCore: Implement time stretcher
* fixup! AudioCore: Implement time stretcher
* fixup! fixup! AudioCore: Implement time stretcher
* fixup! fixup! fixup! AudioCore: Implement time stretcher
* fixup! fixup! fixup! fixup! AudioCore: Implement time stretcher
* fixup! fixup! fixup! fixup! fixup! AudioCore: Implement time stretcher
2016-05-14 22:04:03 -04:00
da2400a601
source: Fix missing logging arguments
...
Silences two warnings on OSX.
2016-05-09 09:41:03 -04:00
0a31e373f1
fixup simple type conversions where possible
2016-05-07 11:41:55 -04:00
c549c36076
Merge pull request #1736 from MerryMage/sdl2-sink
...
AudioCore: SDL2 Sink
2016-05-07 11:08:13 -04:00
920d2cf41d
AudioCore: SDL2 Sink
2016-05-07 11:32:48 +01:00
1a6cd7eb4b
HLE: Fix recent DSP change for Visual Studio.
2016-05-07 00:54:31 -04:00
b242bdf945
DSP/HLE: Implement Source processing
2016-05-03 20:58:28 +01:00
4e971f44a2
Audio: Add sink selection to configuration files
2016-04-30 07:41:02 +01:00
8b94422e3e
AudioCore: List of sink types
2016-04-30 07:39:48 +01:00
7d106eff10
AudioCore: Implement NullSink
2016-04-30 07:39:37 +01:00
73624b4721
Merge pull request #1726 from MerryMage/read-write-region
...
AudioCore: CurrentRegion() -> ReadRegion(), WriteRegion()
2016-04-29 12:18:26 -04:00
22995bd9bf
AudioCore: CurrentRegion() -> ReadRegion(), WriteRegion()
2016-04-29 16:32:29 +01:00
4c235955cf
Merge pull request #1723 from MerryMage/audio-interp
...
AudioCore: Implement interpolation
2016-04-29 10:43:20 -04:00
111275bfbd
AudioCore: Implement interpolation
2016-04-29 08:05:41 +01:00
fda578e19d
Merge pull request #1727 from MerryMage/minor-commit
...
AudioCore: Move samples_per_frame and num_sources into hle/common.h
2016-04-28 09:47:08 -04:00
2f76dc6758
Merge pull request #1722 from MerryMage/soundtouch
...
Externals: Add soundtouch
2016-04-28 09:45:15 -04:00
27ce3b3f51
Externals: Add soundtouch
2016-04-28 13:33:14 +01:00
dda9ffe790
AudioCore: Move samples_per_frame and num_sources into hle/common.h
2016-04-28 11:22:40 +01:00
a47f149e07
AudioCore: Hack to prevent regressions: Trigger Binary pipe interrupt every audio frame
2016-04-27 06:35:10 +01:00