Commit Graph

12 Commits

Author SHA1 Message Date
Lioncash
38ab1f8158 audio_core: Make g_sink_details internally linked
We can hide the direct array from external view and instead provide
functions to retrieve the necessary info. This has the benefit of
completely hiding the makeup of the SinkDetails structure from the rest
of the code.

Given that this makes the array hidden, we can also make the array
constexpr by altering the members slightly. This gets rid of several
static constructor calls related to std::vector and std::function.

Now we don't have heap allocations here that need to occur before the
program can even enter main(). It also has the benefit of saving a
little bit of heap space, but this doesn't matter too much, since the
savings in that regard are pretty tiny.
2018-12-13 16:44:32 -05:00
Lioncash
a7cc3444ee 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-11 21:36:12 -04:00
bunnei
c930420928 audio_core: Implement Sink and SinkStream interfaces with cubeb. 2018-07-30 21:45:24 -04:00
bunnei
d5541a8258 audio_core: Add interfaces for Sink and SinkStream. 2018-07-30 21:45:24 -04:00
James Rowe
8f0a03a606 Massive removal of unused modules 2018-01-12 19:11:03 -07:00
Kloen Lansfiel
ff31276d53 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
Yuri Kunde Schlesner
45751915a0 Use negative priorities to avoid special-casing the self-include 2016-09-21 00:15:56 -07:00
Emmanuel Gil Peyrot
e4393f7ff2 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
Emmanuel Gil Peyrot
7e8d205414 Sources: Run clang-format on everything. 2016-09-18 09:38:01 +09:00
MerryMage
0fe512caeb AudioCore: SDL2 Sink 2016-05-07 11:32:48 +01:00
MerryMage
affa080abe Audio: Add sink selection to configuration files 2016-04-30 07:41:02 +01:00
MerryMage
e22a7fb574 AudioCore: List of sink types 2016-04-30 07:39:48 +01:00