Christopher Snowhill
|
5ab728b205
|
Cog Audio: Overhaul output buffering yet again, adding an extra buffer stage between the converter and the output thread
|
2022-01-14 22:46:41 -08:00 |
Christopher Snowhill
|
6315377eaf
|
Cog Audio: Fix extrapolator to use signed type for sample delta
|
2022-01-14 11:37:52 -08:00 |
Christopher Snowhill
|
af6677cf34
|
Cog Audio: Keep track of last resampler quality used so we don't reinitialize when not necessary, and also keep track of DSD decimated sample rate separately, so the input format remains unmodified
|
2022-01-14 11:18:50 -08:00 |
Christopher Snowhill
|
3ce3edde88
|
Cog Audio: Fix track end extrapolator used by resampler
|
2022-01-14 07:39:55 -08:00 |
Christopher Snowhill
|
748891f285
|
Cog Audio / WavPack input: Add DSD decimation to converter, and change WavPack input to emit only raw DSD
|
2022-01-14 06:26:09 -08:00 |
Christopher Snowhill
|
903b457a28
|
Cog Audio: Make it possible to play obscene sample rate files without major failures
|
2022-01-14 02:00:32 -08:00 |
Christopher Snowhill
|
c8d2864862
|
Cog Audio: Enhance playback queue handler, so it always halts buffering when there are at least 30 seconds worth of buffers filled, possibly spanning multiple files. Also improve the chain reset function so that playlist changes and playback order control reset the queue properly when the queue refill function is currently entered in another thread.
|
2022-01-13 23:05:32 -08:00 |
Christopher Snowhill
|
7cc89c9f92
|
Cog Audio: Enhance track end extrapolator so it will always have a reasonable amount of buffered data for extrapolation
|
2022-01-13 23:03:53 -08:00 |
Christopher Snowhill
|
92d29e7acf
|
Cog Audio: Now preserves already resampled output when switching output formats
|
2022-01-13 19:43:18 -08:00 |
Christopher Snowhill
|
73348b1616
|
Cog Audio: Implement play position skip ahead when output format changes, based on how much converter output is being discarded
|
2022-01-12 23:17:07 -08:00 |
Christopher Snowhill
|
d1b519d59d
|
Cog Audio: Only declare end of stream on read when previous node has declared end of stream and the buffer has actually run empty. This prevents the case where the buffer may terminate early due to the read pointer hitting the end of the ring buffer and wrapping.
|
2022-01-12 23:15:23 -08:00 |
Christopher Snowhill
|
ec7ac74fcd
|
Cog Audio: Fix input chain to reset its buffers when seeking properly
|
2022-01-12 23:13:49 -08:00 |
Christopher Snowhill
|
cc134ce293
|
Cog Audio: Converter node actually pauses when it is being reconfigured, and resets its buffer when the output format is changed
|
2022-01-12 23:13:00 -08:00 |
Christopher Snowhill
|
b0f5a37e85
|
Cog Audio: Only proceed to the next track when the current track has actually finished
|
2022-01-12 21:53:58 -08:00 |
Christopher Snowhill
|
5fef62dd03
|
Cog Audio: Implemented device output and input file format changing support
|
2022-01-12 21:31:22 -08:00 |
Christopher Snowhill
|
9feaffc92d
|
Cog Audio: Made RetroArch resampler safer
|
2022-01-12 18:45:43 -08:00 |
Christopher Snowhill
|
f1d70aaa54
|
Cog Audio: Add explanatory comment to source code
|
2022-01-12 03:36:27 -08:00 |
Christopher Snowhill
|
84d445cffe
|
Cog Audio: Fix converter so that seeking on startup playback position resume works properly
|
2022-01-12 03:01:55 -08:00 |
Christopher Snowhill
|
f8e3b0e1ee
|
Core Audio output: Some more minor changes
|
2022-01-11 22:06:41 -08:00 |
Christopher Snowhill
|
557e0bd399
|
Core Audio output: Fix so it stops properly
|
2022-01-11 20:38:17 -08:00 |
Christopher Snowhill
|
91c3feac2e
|
Cog Audio converter: Fix handling signed versus unsigned for 8 bit samples
|
2022-01-11 19:37:47 -08:00 |
Christopher Snowhill
|
f44e4e793b
|
Cog Audio converter: Fix end of track flush and extrapolation
|
2022-01-11 19:37:17 -08:00 |
Christopher Snowhill
|
ed882e25cb
|
Cog Audio: Resampler now extrapolates into latency padding for better gapless playback
|
2022-01-11 18:19:30 -08:00 |
Christopher Snowhill
|
ee05fe9e44
|
Core Audio output: Add sanity checking for supported formats, and support 64 bit float input data, in case anything actually uses that
|
2022-01-11 17:09:06 -08:00 |
Christopher Snowhill
|
72210c67e4
|
Replaced AudioQueue output with AUAudioUnit
|
2022-01-11 07:06:40 -08:00 |
Christopher Snowhill
|
c4c9a741ef
|
Replaced AudioToolbox converter process with homebrew solution, using the RetroArch sinc resampler
|
2022-01-11 04:09:19 -08:00 |
Christopher Snowhill
|
dfe92ffedc
|
Audio Player: Fix so ReplayGain isn't reset on seek
|
2021-12-28 21:05:25 -08:00 |
Christopher Snowhill
|
c1c21ec84f
|
Hopefully fix glitching on seeking
|
2021-12-28 16:04:16 -08:00 |
Christopher Snowhill
|
ba3746fcff
|
Remove blank line
|
2021-12-28 15:40:53 -08:00 |
Christopher Snowhill
|
38c530043d
|
Output converter: Add more upmixing modes
|
2021-12-28 15:39:23 -08:00 |
Christopher Snowhill
|
b13235ec5f
|
Fix 6.1 stereo downmix mapping
|
2021-12-28 00:10:44 -08:00 |
Christopher Snowhill
|
258a56a276
|
Audio Output: Implement more upmixing modes, and correct some upmixing behavior
|
2021-12-28 00:09:57 -08:00 |
Christopher Snowhill
|
25a43a9083
|
Audio Output: Fix converter to always emit trailing samples on end of track
|
2021-12-27 17:04:16 -08:00 |
Christopher Snowhill
|
8435416cd7
|
Core Audio output: Default device setting now tracks system device changes, and output assigns a speaker mapping depending on the channel count
|
2021-12-26 21:27:26 -08:00 |
Christopher Snowhill
|
1cc34ea7d4
|
Audio Output: Made converter cleanup atomic, to wait on any threads that are still running
|
2021-12-26 04:34:33 -08:00 |
Christopher Snowhill
|
dfeca7aa97
|
Seeking now takes the true nuclear approach to output, and should no longer have glitches
|
2021-12-26 02:01:02 -08:00 |
Christopher Snowhill
|
d22ee14a36
|
Audio Output: Take a more nuclear approach to output resetting when seeking
|
2021-12-25 23:41:45 -08:00 |
Christopher Snowhill
|
1278b64afd
|
Audio Output: Fixed converter so it won't loop endlessly when it either reaches the end of a stream or is otherwise supposed to terminate
|
2021-12-25 22:47:17 -08:00 |
Christopher Snowhill
|
5246731189
|
Core Audio: Overhauled audio output to use AudioQueue instead of AudioUnit, fixed downmixing to mono, and implemented upmixing mono or other formats to more channels if the device requests them
|
2021-12-25 22:32:43 -08:00 |
Christopher Snowhill
|
9c9d71cd9c
|
Overhaul CoreAudio output code: Downmix properly from 8 channels, redo converter process, and no longer crash when forced to output to a low quality device. Switchover to stereo from mono isn't perfect, however.
|
2021-12-25 15:02:13 -08:00 |
Christopher Snowhill
|
9566a36815
|
Error handler: Better handle errors and increase silence generator to 10 seconds at a time
|
2021-12-22 16:22:05 -08:00 |
Christopher Snowhill
|
00f1e0957c
|
FLAC: Move libFLAC decoder to higher priority than any potential system decoder, support arbitrary sample bit depths
|
2021-12-11 00:22:19 -08:00 |
Dzmitry Neviadomski
|
70a22e9611
|
Fix some more warnings.
|
2021-01-27 05:12:07 +03:00 |
Chris Moeller
|
17272ce43c
|
Clean up lots of warnings and minor issues.
|
2016-06-29 22:10:29 -07:00 |
Chris Moeller
|
0e3644177e
|
Updated everything else to ARC, and plugged a release cycle.
|
2016-05-05 13:05:39 -07:00 |
Chris Moeller
|
06d0f1834c
|
Added slight sleep delay to retry cycle of input decoder chain
|
2015-08-02 00:18:22 -07:00 |
Chris Moeller
|
f55eb1d3bf
|
Added a silence decoder, and fall back all decoder open failures on one second of silence
|
2015-02-08 18:15:02 -08:00 |
Chris Moeller
|
9d5a1fc32e
|
Handled FLAC seeking to the end of file, and stopping on seek errors in general
|
2014-03-26 02:46:36 -07:00 |
Chris Moeller
|
755147b48a
|
Through a bit of ugliness and interface exposure, the InputNode will now pause the OutputNode while it is making the decoder seek, which prevents cases of the output continuing to run for seconds at a time during a slow seek operation by decoders such as HighlyComplete
|
2013-10-20 22:04:09 -07:00 |
Chris Moeller
|
5b13ee3f97
|
Fixed Ogg chained streams which I broke with the previous commit
|
2013-10-18 05:56:41 -07:00 |