Christopher Snowhill
378aaf23ae
Clean up several CFStringRef leaks
2021-12-26 18:08:53 -08:00
Christopher Snowhill
f241d88e16
OpenMPT legacy: Commit missing files, and fix .gitignore to allow them
2021-12-26 17:18:39 -08:00
Christopher Snowhill
d2e480ace5
Core Audio output: Properly support switching output devices
2021-12-26 17:16:16 -08:00
Christopher Snowhill
642945e80a
OpenMPT: Add include path for svn_version.h header file
2021-12-26 04:47:12 -08:00
Christopher Snowhill
917b7457b6
Made resume playback on startup so that seeking operation is entirely atomic with starting playback, so the new seeking behavior doesn't have the potential to crash the player
2021-12-26 04:35:54 -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
106eb587b4
Updated libopenmpt to version 0.6.0, with major new changes. This new version requires macOS 10.15 to work, due to libc++ features required. A compatibility plugin has been duplicated from the existing plugin, which will now load libopenmpt 0.5.14, or whatever newer version may come out that still supports as old as macOS 10.12.
2021-12-26 03:29:43 -08:00
Christopher Snowhill
8d7cd6cc93
Multi Input plugin: Correctly forward register and remove observer callbacks to the actual decoder in use
2021-12-26 02:01:53 -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
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
098650099e
Fix SQL playlist loader so it doesn't crash on an empty playlist
2021-12-25 16:42:28 -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
d4614a2f03
Syntrax/Jaytrax: Replace cubic interpolation function with a fixed point integer based version, for a 20% performance boost
2021-12-24 23:33:34 -08:00
Christopher Snowhill
a8a982d3a4
SQLite Store: Fix storing strings with multi byte Unicode sequences
2021-12-24 15:48:30 -08:00
Christopher Snowhill
2445cc94a9
- Retrieve profile paths properly instead of hard coding
...
- Display playlist total duration in units up to weeks and down to just seconds, and only pluralize units as necessary
- Major change: Implemented a SQLite disk backed playlist, track data, and queue storage system, which will be synchronized from the player in real time, and will hopefully survive system or app crashes. Existing plist playlist will be imported on first run, and removed on shutdown.
2021-12-24 01:01:21 -08:00
Christopher Snowhill
fd75e1b260
HTTP source: Fix API abuse by calling completion handler as requested
2021-12-22 16:27:41 -08:00
Christopher Snowhill
2bb9698e34
FLAC: Remove unused files from libFLAC framework
2021-12-22 16:24:16 -08:00
Christopher Snowhill
e207cdc022
Opus/FFmpeg: Add more streaming types to handle, now supports working Ogg Vorbis, Opus, and FLAC streaming
2021-12-22 16:23:54 -08:00
Christopher Snowhill
4ff38268ae
Plugins: Support multiple handlers per MIME type for streams
2021-12-22 16:22:49 -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
7da3324e32
OpenMPT: Enable SSE2 and ARM NEON optimizations for a slight improvement in performance
2021-12-22 00:18:57 -08:00
Christopher Snowhill
c2585f5567
FFMPEG input: Add more formats, reduce buffering so streams start faster, and fix seeking calculation so streams seek properly
2021-12-22 00:17:59 -08:00
Christopher Snowhill
c47bd96d65
FFMPEG / vgmstream: Update dependencies for newer Matroska support
2021-12-22 00:15:19 -08:00
Christopher Snowhill
45ee8b01df
HTTP reader: Keep track of task suspend/resume so we don't stall trying to resume an already running stream
2021-12-22 00:14:19 -08:00
Christopher Snowhill
b2ae62a4db
URL open panel: Fix invocation of completion handler so it doesn't crash
2021-12-22 00:13:27 -08:00
Christopher Snowhill
bb1f9dcb33
CoreAudio / FFmpeg: Swap decoder priorities so FFmpeg takes priority over Core Audio
2021-12-21 22:26:50 -08:00
Christopher Snowhill
10d43d9154
FFmpeg: Enable extra demuxers, and switch AAC to AAC AudioToolbox
2021-12-21 22:24:05 -08:00
Christopher Snowhill
caf4855b4e
Syntrax/Jaytrax: Replace existing reverse engineered implementation with a different one that handles more songs correctly
2021-12-15 16:47:36 -08:00
Christopher Snowhill
44b813d2bf
Audio queue: Better handle queues of lots of short files
2021-12-11 00:22:54 -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
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
554dde4e91
Updated VGMStream to r1690-0-g82d86c64
2021-12-05 21:26:16 -08:00
Christopher Snowhill
8df33d1cc9
Updated libopenmpt to version 0.5.14
2021-12-05 21:05:35 -08:00
Christopher Snowhill
5772662984
Cuesheet: Read and merge metadata from referenced audio files, no matter their format
2021-11-21 00:16:16 -08:00
Christopher Snowhill
63e10bcb77
Fix Git hook to actually trip when only a single match is found
2021-11-21 00:13:17 -08:00
Christopher Snowhill
91bd653b55
Fading: Hopefully fix fading being broken after fading in once, possibly a rounding error that depends on the volume level set before fading in
2021-11-17 21:12:25 -08:00
Christopher Snowhill
d8dcb75ec6
Updated VGMStream to r1667-99-g1355279f
2021-11-17 21:11:40 -08:00
Christopher Snowhill
58384cb831
Updated VGMStream to r1667-90-gc57f4383
2021-11-14 21:43:04 -08:00
Christopher Snowhill
4344f358c2
Updated libopenmpt to version 0.5.13
2021-11-14 21:34:08 -08:00
Christopher Snowhill
b53d396a10
Highly Complete: NCSF: Fix portamento register to enable portamento
2021-11-14 21:33:40 -08:00
Christopher Snowhill
b39d585794
Fix dangling team ID
...
Dammit, I thought I had commit hooks preventing me from letting these changes through?
2021-11-03 20:42:57 -07:00
Christopher Snowhill
bce21b44d4
MIDI: Overhaul player completely, now Audio Unit support works properly, and the Sound Canvas VA hack is no longer needed. Now System Exclusive messages may be filtered for all plugins.
2021-11-02 19:52:12 -07:00
Christopher Snowhill
8b2e4524b2
Sync with latest shpakovski/MASShortcut.
2021-11-01 18:26:18 -07:00
Christopher Snowhill
b3c5bf8e96
GSF: Updated mGBA
2021-11-01 18:23:17 -07:00
Christopher Snowhill
a93510dd8b
Updated VGMStream to r1667-70-g3f281cdf
2021-11-01 18:23:17 -07:00
Christopher Snowhill
d522730fd3
Merge pull request #175 from losnoco/nevack/sync-masshortcut
...
Sync with latest shpakovski/MASShortcut.
2021-10-14 14:59:27 -07:00
Dzmitry Neviadomski
4e93bc2af8
Sync with latest shpakovski/MASShortcut.
2021-10-14 18:18:05 +03:00