Commit Graph

676 Commits (cad09b891282d27bbd963198fbdebf9ef4129c57)

Author SHA1 Message Date
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 5772662984 Cuesheet: Read and merge metadata from referenced audio files, no matter their format 2021-11-21 00:16:16 -08: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 ee6faec757 VGMStream: oops, coding error 2021-10-02 18:49:00 -07:00
Christopher Snowhill 6c8c807781 VGMStream: Clear sample buffer, just in case 2021-10-02 18:47:04 -07:00
Christopher Snowhill cbf20dab08 VGMStream: Correctly implement mixing support and output channel reporting for downmixes 2021-10-02 18:38:23 -07:00
Christopher Snowhill 0ec1ae4c47 Core Audio input: Added Codec info reporting 2021-10-01 20:22:26 -07:00
Christopher Snowhill cb70b066d7 Updated VGMStream to r1640-85-gfe316bb2 2021-10-01 20:21:50 -07:00
Christopher Snowhill fdae7eec21 File info: Implemented support for Album Artist and Codec fields 2021-10-01 19:18:42 -07:00
Christopher Snowhill cfeadad97f Reduce minimum OS to macOS 10.12 2021-09-18 01:08:49 -07:00
Christopher Snowhill 42a6738e8f Updated VGMStream to r1640-11-gdfa3779a 2021-09-06 09:28:26 -07:00
Christopher Snowhill 6395684001 CoreAudio input: Fixed new case where lossy inputs report file bit depth as unsupported field, causing some or possibly all lossy files to fail to decode 2021-08-25 01:57:59 -07:00
Christopher Snowhill 5b73336cb0 CoreAudio input: Optimized file size reporting to cache the file size on open, so file input isn't seeking as much 2021-08-25 01:57:05 -07:00
Christopher Snowhill 3f6cb1bc1c VGMStream: Fix .txtp with option fragments in the filename 2021-08-11 17:33:02 -07:00
Christopher Snowhill 0891a20bba MIDI: Detect presence and compatibility of Sound Canvas VA before attempting to import it later. It currently does not work with arm64, only x86_64 native or Rosetta 2. 2021-08-10 17:35:15 -07:00
Christopher Snowhill 59a5a7687e MIDI: Fix Sound Canvas VA duplication function to support the 32 signed instances current versions ship 2021-08-10 17:35:14 -07:00
Christopher Snowhill 510c762921 TagLib plugin: Implement FLAC embedded art reading 2021-07-03 15:31:26 -07:00
Christopher Snowhill 75a4f1e722 VGMStream: Fix one shot files actually decoding to completion instead of getting stuck forever 2021-06-15 01:34:01 -07:00
Christopher Snowhill 668475c43a VGMStream: Correctly report ReplayGain tags from external M3U tags 2021-05-30 14:47:21 -07:00
Christopher Snowhill 8aa47584f1 FFmpeg: Fix seeking so it's sample exact, using packet timestamps. Fixes noticeable issues when using CUE sheets with APE, for instance. 2021-05-30 14:22:20 -07:00
Christopher Snowhill 466c1beb00 Added safety checks to VGMStream file interface, which should hopefully prevent a known crash deep in the library due to possibly trying to retrieve the file name from an invalid file handle 2021-05-17 22:43:27 -07:00
Christopher Snowhill 95a63327fa MIDI: Trimmed down FluidSynth libraries significantly, and should be compatible with 10.13 once again 2021-05-09 17:46:36 -07:00
Christopher Snowhill b2a6a67170 MIDI: FluidSynth is now configured to load samples dynamically instead of caching entire banks at once 2021-05-08 19:41:35 -07:00
Christopher Snowhill 17fd41fbbc Updated FluidSynth again, restoring SF3 support 2021-05-08 00:47:03 -07:00
Christopher Snowhill 5d29b741a0 Updated FluidSynth 2021-05-07 21:08:48 -07:00
Christopher Snowhill 79d12e9fc7 CoreAudio: Don't try closing resources that aren't opened 2021-05-07 15:33:20 -07:00
Christopher Snowhill 37aa36f9f4 MIDI: Fix FluidSynth device-id setting, which requires unique settings objects 2021-05-06 19:02:25 -07:00
Christopher Snowhill 81aca83940 MIDI: Update FluidSynth to HEAD-9b671b2, with personal changes to implement reset messages to switch drum control and bank select mode 2021-05-06 19:01:50 -07:00
Christopher Snowhill f9d3a5f9eb MIDI: Fix FluidSynth SysEx code 2021-05-06 14:59:27 -07:00
Christopher Snowhill 1a95c234b2 Update FluidSynth code, changing default gain, and letting it handle SysEx messages on its own 2021-05-06 13:35:24 -07:00
Dzmitry Neviadomski 66efdfcf1e Roll libsidplayfp 2021-05-04 22:30:10 +03:00
Christopher Snowhill e8e2fc3164 MIDI: Add SF3 extension to FluidSynth loader 2021-05-03 19:18:55 -07:00
Christopher Snowhill 4cf76dd7e3 MIDI: Replaced BASSMIDI with FluidSynth 2021-05-03 19:18:55 -07:00
Dzmitry Neviadomski 1e6d0e16f0 Remove remaining signing ids. 2021-05-02 23:18:11 +03:00
Christopher Snowhill 1e97d02384 Cleaned up project files, also removed accidental and remaining team identifiers 2021-05-01 15:43:56 -07:00
Christopher Snowhill 13bd399b31 Clean up most warnings and update some dependencies 2021-04-29 18:16:24 -07:00
Christopher Snowhill 4d7a4ec29d MIDI: No longer call BASS_Free on shutdown, may have been possible to cause a hang on shutdown 2021-04-27 00:19:26 -07:00
Christopher Snowhill 7acfdf774d VGMStream: Fix length reporting and track termination when not looping forever 2021-04-22 23:53:59 -07:00
Christopher Snowhill 4ea289ba27 MIDI: Reject files with no event data 2021-04-11 17:23:55 -07:00
Christopher Snowhill 2c20205f8f Fix VGMStream info parser to remove anchors and URL percent encodings from filenames 2021-04-06 16:51:08 -07:00
Christopher Snowhill b32f9d4ac3 libsidplayfp: Fix stereo playback, and implement support for multi-file songs, and fix stereo blending so it applies to the entire output 2021-04-05 14:07:20 -07:00
Christopher Snowhill bdd02c76d3 PSF/PSF2: Set harsh compatibility mode, so emulator behaves more like actual hardware, which fixes a few PSF and PSF2 rips 2021-03-28 12:49:34 -07:00
Christopher Snowhill ba7aaec69c M3U and PLS playlist handlers now correctly handle macOS Classic line endings 2021-03-09 23:49:13 -08:00
Dzmitry Neviadomski 3a387c3a3f Update Copyright year to 2021 with regex. 2021-03-03 23:05:57 +03:00
Christopher Snowhill 483b8d6647 Don't load metadata for stream URLs 2021-02-28 18:48:21 -08:00
Dzmitry Neviadomski e4199694a8 Update FFMPEG plugin project settings. 2021-02-26 15:31:35 +03:00
Dzmitry Neviadomski 0aff2c9567 Add sidplayfp Xcode subproject as dep. 2021-02-25 18:37:39 +03:00
Dzmitry Neviadomski 72702ed1e1 Add libsidplayfp submodule and supporting files. 2021-02-25 18:36:04 +03:00
Christopher Snowhill 04074f5d74 Fix Core Audio input to report and decode format native bits per sample, and report file bitrate 2021-02-22 20:48:23 -08:00
Christopher Snowhill b16d2114eb
Change Core Audio file handler priority
Now it should take priority for all supported formats, including MP3, so that reported broken file should play properly now. Not fixing FFmpeg outside of FFmpeg, someone can report the file to FFmpeg if they want to.
2021-02-09 18:43:39 -08:00
Dzmitry Neviadomski a6aaeafdca Re-apply patch for replay gain support 2021-02-07 06:50:28 +03:00
Dzmitry Neviadomski 15cbc97040 Adapt to new version of TagLib and read Vorbis Album art. 2021-02-07 04:48:49 +03:00
Dzmitry Neviadomski 1d84b7b682 Fix loading of cover art from same directory. 2021-02-07 03:54:31 +03:00
Christopher Snowhill dce400435e Fix #89 by encoding paths correctly I hope 2021-01-30 19:37:10 -08:00
Dzmitry Neviadomski 832fa6dbd0 Even more deprecations fixes. 2021-01-27 05:45:02 +03:00
Dzmitry Neviadomski 70a22e9611 Fix some more warnings. 2021-01-27 05:12:07 +03:00
Dzmitry Neviadomski 64b9764b2e Inhibit ThirdParty libraries build errors.
This helps as to actually see warnings of our code.
2021-01-27 04:31:43 +03:00
Jan Weiß 63ed28919b Second attempt to fix build with other than maintainer’s TeamIDs. Worked for me with Xcode 12.3. 2021-01-05 17:25:12 +01:00
Christopher Snowhill dbc51d76f9 Revert PR #60 - Nope, that breaks hardened runtime and signing it myself 2020-12-22 02:11:50 -08:00
Jan Weiß c305a5f949 Fix build with other than maintainer’s TeamIDs.
This commit removes development team and code signing key/value pairs that slipped through when Xcode applied code signing changes.
2020-12-13 12:01:48 +01:00
Christopher Snowhill 58b6ea5881 Added HMQ extension for HMP format 2020-12-08 19:16:03 -08:00
Christopher Snowhill 91b1271ae2 Bump deployment target to 10.13 2020-11-24 15:26:26 -08:00
Christopher Snowhill 6646e01d8a Switched FFmpeg back to static libraries, now that I know I can make Universal static libraries 2020-11-23 23:50:50 -08:00
Dan Leehr 1d4a777018 Restore libFLAC plugin on macOS 10.13 and newer 2020-11-23 17:01:25 -05:00
Christopher Snowhill dedeb399a8 - Big Sur phase two
- Restructure main window a bit more
- Remove attempt at SF Symbols icons for now
- Add Now Playing popout to Stacks style main window, tooltip instructs to click to select the current track in playlist
- Disable libFLAC plugin on macOS 10.13 and newer, letting Core Audio handle it instead. Apparently, libFLAC is not really ready for Apple Silicon yet.
2020-11-22 18:16:34 -08:00
Christopher Snowhill 85907a48d9 Add .ogg extension to Opus plugin 2020-11-19 01:37:50 -08:00
Christopher Snowhill 4eb7a3eebf Update VGMStream plugin with new API changes a bit, and now force auto downmixing to 6ch 2020-09-21 22:33:18 -07:00
Christopher Snowhill dab78ed74f Updated libopenmpt to version 0.5.2 2020-09-21 21:54:24 -07:00
Christopher Snowhill 0001bd581b Phase one of Big Sur 2020-06-30 01:04:55 -07:00
Christopher Snowhill 3b628c3989 Touched by Xcode 2020-06-07 19:57:15 -07:00
Christopher Snowhill f5c7c4d49a Update midi_processing to latest version, fixing some severe MIDI file handling issues, including Standard MIDI file SysEx and SysEx continuation handling 2020-04-14 02:10:52 -07:00
Christopher Snowhill 53bfe785bb Disable remote file support for CoreAudio decoder 2020-04-11 00:31:22 -07:00
Christopher Snowhill 4aca4a9c77 - Increase HTTP buffer size to 256KB
- Support a different older flavor of ShoutCAST server
2020-04-11 00:30:27 -07:00
Christopher Snowhill b7596caa44 Fixed WavPack tag reading, by actually enabling it 2020-03-22 00:16:13 -07:00
Christopher Snowhill 9ca13ad471 Updated WavPack decoder to 5.2.0 2020-03-22 00:15:45 -07:00
Christopher Snowhill a43ae5fc81 - Redo HTTP buffering mechanism
- Handle HTTP errors better
- Fix handling ShoutCAST servers responding ICY headers
2020-03-10 01:56:59 -07:00
Christopher Snowhill b37a6f0f0d Attempt to add rewinding to CoreAudio for streamed source files, but it doesn't work, it still fails to play anything from a stream 2020-03-09 00:23:58 -07:00
Christopher Snowhill 18acc7fdd2 Handle HTTP redirection, including preventing circular redirects 2020-03-08 20:13:46 -07:00
Christopher Snowhill 25a030a46c Implement custom reader support in CoreAudio decoder, now supports archives and possibly streams 2020-03-08 20:05:03 -07:00
Christopher Snowhill 443aa05f88 Replace HTTPSource with a new reader based on NSURLSession, which actually does support HTTPS. This portion of the player now requires macOS 10.9. 2020-03-07 16:08:47 -08:00
Christopher Snowhill 8bc6396918 Fix local signing issues 2020-02-13 17:45:11 -08:00
Christopher Snowhill c2278b49be Remove unused variable from SID decoder 2020-02-13 14:42:57 -08:00
Christopher Snowhill 765cb5e890 Usual Xcode update mess 2020-02-13 01:41:21 -08:00
Christopher Snowhill 0e4694ba67 Updated libsidplayfp to version 2.0.1 2020-02-13 01:29:08 -08:00
Christopher Snowhill 37b75bf6e7 Fix resource leak with VGMStream container parser, and serialize metadata caching from there as well 2019-12-19 17:12:09 -08:00
Christopher Snowhill 8e9f8237e3 Fix potential error with SID decoder 2019-12-05 18:13:52 -08:00
Christopher Snowhill 86681e9726 Implemented support for VGMStream external !tags.m3u metadata playlists 2019-11-23 20:36:57 -08:00
Christopher Snowhill 5422338d58 Now supports reading playlists from remote paths 2019-11-17 14:44:47 -08:00
Christopher Snowhill fa6c02d3e8 Handle relative redirects without crashing, and fix URLs that require trailing slash on path 2019-11-16 15:25:01 -08:00
Christopher Snowhill 258a88464a Fix VGM metadata and properties reading 2019-11-08 15:05:21 -08:00
Christopher Snowhill cb8fb9ce87 Fix VGM parsing so it doesn't hit the other two registered VGM container handlers 2019-11-08 15:04:43 -08:00
Christopher Snowhill 5c85c2a1b9 Fix handling invalid archive paths 2019-11-08 15:03:45 -08:00
Jan Weiß 105b0f26bb Improve file encoding detection. 2019-10-22 18:19:15 +02:00
Jan Weiß f94226bcf2 Fix file encoding. 2019-10-22 18:19:15 +02:00
Christopher Snowhill 389a701553 Implemented new VGMStream properties and metadata caching, which keeps file smashing under control, which stops Hardened Runtime from crashing on us 2019-10-18 20:21:27 -07:00
Christopher Snowhill a1ec4dba40 Updated FFmpeg 2019-10-15 19:15:52 -07:00
Christopher Snowhill a23085082a Switch back to lazyusf2, and enable JIT entitlement for it 2019-10-15 14:32:18 -07:00
Christopher Snowhill fd7ab684c2 Updates for modern Xcode 2019-10-05 00:12:36 -07:00
Christopher Snowhill b5b4eaf99d Fix AdPlug fileprovider to handle URL fragments properly. 2019-07-07 00:38:19 -07:00
Christopher Snowhill c1a45135b3 Remove unnecessary cleanup code that impeded cases where multiple decoders could handle a single file type. 2019-07-07 00:37:56 -07:00
Christopher Snowhill 050eef7225 Updated to latest Xcode 2019-07-02 16:37:17 -07:00
Christopher Snowhill 412a094b94 Updated VGMStream to r1050-2323-g2e1739e6 2019-06-20 20:57:32 -07:00
Chris Moeller 451e508939 Minor automatic project change 2019-01-23 18:26:37 -08:00
Chris Moeller d1e4abf78c Updated libopenmpt to version 0.4.2 2019-01-23 18:26:37 -08:00
Chris Moeller 16d0d9f5cc Fix File source to not remove text after hash marks, as NSURL does that for us when we use the path property. 2019-01-04 18:30:45 -08:00
Christopher Snowhill eda1c9674a Add HTTPS scheme to HTTP source plugin. 2018-09-23 16:45:03 -07:00
Christopher Snowhill 6980e7b4e9 Fix encoding of strings resources. 2018-07-22 01:58:57 -07:00
Christopher Snowhill b3eb934a38 VGMStream plugin correctly fades channel counts other than stereo. 2018-07-17 23:34:25 -07:00
Christopher Snowhill 5c25e3b071 Fix decoder so it ends properly on non-looped files when Repeat One is enabled. 2018-07-17 18:09:59 -07:00
Christopher Snowhill 951b2e6c7c Replaced lazyusf2 with more compatible lazyusf1, and updated its timing code significantly. 2018-07-12 00:13:30 -07:00
Christopher Snowhill 67495009ff Updates for new build system. 2018-06-28 04:03:37 -07:00
Christopher Snowhill 923440b16b Only include OpenMPT subsongs if they're 10 seconds or longer. 2018-06-18 19:06:16 -07:00
Christopher Snowhill bcf839efd1 Apply Xcode's suggested changes to project files. 2018-06-04 00:13:55 -07:00
Christopher Snowhill aebbef593f Updated Highly Quixotic to include new, more accurate sound emulation. 2018-05-22 00:53:00 -07:00
Chris Moeller baf8e574cf Update mGBA, including a fix for PSG volume. 2018-05-11 19:21:42 -07:00
Chris Moeller 2df8f2acde Fix sidplay default filter configuration for 8580, which is now a different value format. 2018-05-01 19:31:55 -07:00
Chris Moeller f97ffd0574 Updated VGMStream to r1050-1289-g35cd14fa. 2018-05-01 00:05:29 -07:00
Christopher Snowhill ea3ef1cadd Fix AdPlug decoder. 2018-01-27 16:09:02 -08:00
Christopher Snowhill 75bc139600 Don't code sign OpenMPT.bundle on build. 2018-01-27 15:11:08 -08:00
Christopher Snowhill 50616714ad Implemented AdPlug decoder. 2018-01-27 15:08:06 -08:00
Christopher Snowhill aaaa5d574f Replaced DUMB and company with libopenmpt. 2018-01-04 18:00:39 -08:00
Christopher Snowhill 11845e18d6 Update Secret Sauce functionality. 2017-12-27 18:57:41 -08:00
Christopher Snowhill cade10be22 Fix BASSMODS IT input, and add MO3 signature check. 2017-12-27 15:16:27 -08:00
Christopher Snowhill ed625bd63c Oops in VGMStream. 2017-12-16 20:25:18 -08:00
Christopher Snowhill 16e0a006f2 Updated VGMStream to r1050-866-g5cc215b4. 2017-12-16 20:17:41 -08:00
Christopher Snowhill 10f2ee1461 Added new extensions. 2017-12-16 19:58:49 -08:00
Chris Moeller 9e8fd61d8c Update xcschemes. 2017-12-05 19:10:41 -08:00
Christopher Snowhill 913287665d Update project files to current recommendations. 2017-09-26 16:12:33 -07:00
Christopher Snowhill ba78e14909 Updated FFmpeg. 2017-09-24 16:35:45 -07:00
Christopher Snowhill 63eae50486 Fix VGMStream tracknumber metadata, which was causing playlist to be lost on shutdown. 2017-09-17 20:04:05 -07:00
Christopher Snowhill 06f4fb70d4 Silence a warning. 2017-09-17 19:21:48 -07:00
Christopher Snowhill d0f0f516a3 Really add title reading this time. 2017-09-17 19:21:38 -07:00
Christopher Snowhill 29e548d583 Added title reading for multi-song VGMStream files. 2017-09-17 18:41:04 -07:00
Christopher Snowhill 039347f36f Made all scheme configurations shared, imported. 2017-09-17 18:40:02 -07:00
Christopher Snowhill 9c80799aea Updated VGMStream to r1050-670-g165cda22. 2017-09-16 21:24:57 -07:00
Christopher Snowhill 436f1caff7 Updated DMXOPL to version 1.9.1. 2017-07-17 18:34:34 -07:00
Christopher Snowhill 9df683829a Fix VGMStream to not crash on open failure, and generate its file name extension list dynamically. 2017-07-09 15:01:25 -07:00
Chris Moeller 113c52a616 Updated Doom oplmusic synth to latest version. 2017-06-23 16:50:41 -07:00
Chris Moeller b18222052b Updated DMXOPL to version 1.8.2. 2017-06-23 16:50:10 -07:00
Christopher Snowhill 95e853a544 Updated DMXOPL to version 1.7. 2017-06-12 20:24:57 -07:00
Christopher Snowhill d2dc14a72c Added DMXOPL patch set by sneakernets. 2017-06-02 14:36:52 -07:00
Christopher Snowhill 67332f4982 Last minute fix for files with multiple streams, which includes APE files with attached pictures. 2017-05-20 18:29:27 -07:00
Christopher Snowhill 9bc3b55cb7 Fixed XG mode. 2017-05-18 17:51:33 -07:00
Christopher Snowhill 6a28695c5e Fixed Ogg Vorbis plug-in locating its Vorbis framework. 2017-04-03 18:45:41 -07:00
Christopher Snowhill 01b91961ff Fix HighlyComplete for new mGBA header arrangement. 2017-03-12 21:38:46 -07:00
Christopher Snowhill c594690aab Update GME, including support for tag-specified fade times for formats which support it, which are SPC and SFM. 2017-03-12 21:10:35 -07:00
Christopher Snowhill 89a2ab07a1 Updated VGMStream. 2016-12-26 16:45:02 -08:00
Christopher Snowhill 68f8979bbe Updated playptmod plugin to handle MO3 and UMX archives. 2016-12-22 20:43:11 -08:00
Christopher Snowhill 07fef42863 Updated BASSMODS plugin to only handle IT modules. 2016-12-22 20:42:30 -08:00
Christopher Snowhill 31a0f9155c Updated to handle UMX archives with empty type specifier. 2016-12-22 20:42:06 -08:00