Commit Graph

39 Commits (1a7e7a4b70c0a4a43e580103a664aaede6de42a6)

Author SHA1 Message Date
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 3cc5b46a0e Cog Audio: Improve end of track handling 2022-01-14 10:17:41 -08:00
Christopher Snowhill e6124335d1 Cog Audio: Change output callback to always retry reading for sample data until the requested buffer is filled, or until the playback either ends or is torn down. This prevents gaps when the preceding ring buffer wraps around. 2022-01-13 23:02:01 -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 8664bacc60 Core Audio output: Correctly terminate output when requested to stop, preventing a case where multiple outputs were draining the playback buffer at once 2022-01-12 16:04:41 -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 7d4841b1c6 Core Audio output: Don't upmix unless output device requests it by default 2022-01-11 18:18:38 -08:00
Christopher Snowhill 4dd46a1b5b Core Audio output: Fix output stopping properly 2022-01-11 07:52:44 -08:00
Christopher Snowhill 72210c67e4 Replaced AudioQueue output with AUAudioUnit 2022-01-11 07:06:40 -08:00
Christopher Snowhill 486352ea72 Core Audio output: Enforce some minimum quality settings 2021-12-28 15:41:31 -08:00
Christopher Snowhill 8e895c88c0 Core Audio output: Properly apply or remove default device change listener when switching preferences between the 'System Default Device' setting and manually setting the device to the current default 2021-12-26 21:33:28 -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 378aaf23ae Clean up several CFStringRef leaks 2021-12-26 18:08:53 -08:00
Christopher Snowhill d2e480ace5 Core Audio output: Properly support switching output devices 2021-12-26 17:16:16 -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 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 c6b112f512 CoreAudio output: Fix buffer underruns on output that could result in buffer looping in CoreAudio, by feeding silence from the callback instead of returning incomplete or possibly empty buffers 2021-12-25 19:43:10 -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 ed8a5763ab Output: Add System Default Output option, rather than adjusting the listing to display the current system default only the first time 2021-12-05 22:49:56 -08:00
Christopher Snowhill da96d2c21e Core Audio Output: Add a check that should prevent it from attempting to output data through the callback during or after destruction 2021-09-17 19:09:34 -07:00
Christopher Snowhill b7487e2ad2 Clean up audio output code just a bit 2020-03-23 01:46:41 -07:00
Jan Weiß da775ce8a6 Clean up output device code. 2020-02-17 18:20:48 +01:00
Jan Weiß b22c5964e4 Improve output handling, 2.
Fix issues with above.
2020-02-01 14:44:07 +01:00
Jan Weiß 97ed738846 Improve output handling. 2020-02-01 14:00:41 +01: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 56848daad6 mamburu: Fixed crashes when seeking near the end of stream 2013-10-12 13:52:58 -07:00
Chris Moeller e5a648578b mamburu: Logging improved, no more excessive logging in release builds 2013-10-11 05:03:55 -07:00
Chris Moeller 167524b6f2 Added basic output device channel mapping support 2013-10-07 00:24:00 -07:00
Chris Moeller ec0e45381e Cleaned up most of the warnings, eliminated use of deprecated APIs, and fixed the hotkeys crashing. 2013-10-03 01:00:58 -07:00
vspader a531e31d42 Force stereo output. Ugly hack, but it's unlikely non-stereo was working properly anyways. 2009-06-28 11:57:48 -07:00
vspader 170c8cb2f3 Fixed bug where audio device was set after the format. 2009-06-28 10:51:30 -07:00
vspader 97a278a143 Cleaned up memory leaks. 2007-10-13 07:09:46 +00:00
vspader daba91b462 Removed debugging messages. 2007-07-11 01:20:32 +00:00
vspader a2b9db5f58 Fixed bug where dialogs would lose focus when the dock icon is clicked.
Fixed bug where playback would not resume when seeking to the end of a file.
Fixed bug where seek bar is enabled on launch.
2007-07-05 23:08:10 +00:00
vspader 88d26d3461 Fixed some seeking bugs. 2007-05-26 22:13:11 +00:00
vspader 0f7f8f2750 A fix to try to stop the buffer from running dry when seeking. 2007-05-26 12:42:00 +00:00
vspader 927b65a4a5 Merged with cog-audio-framework branch. Cog now uses plugins. 2007-02-24 20:36:27 +00:00