Commit Graph

34 Commits (cad09b891282d27bbd963198fbdebf9ef4129c57)

Author SHA1 Message Date
Christopher Snowhill cad09b8912 CUE Reader: Fix enumerating sheets and tag reading
The reader should have been skipping the properties of CUE sheets when
reading the referenced data for the inner files.

Fixes #235

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-13 12:18:58 -08:00
Christopher Snowhill 39dcb88728 FFmpeg input: Support reading metadata
Where TagLib is not being employed, use FFmpeg to read tags where
possible. This allows reading tags from files like IFF. It reads it
through properties, otherwise allowing tag readers to function like
usual.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-10 15:29:13 -08:00
Christopher Snowhill 85c7073649 Reformat my own source code with clang-format
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-06 21:49:27 -08:00
Christopher Snowhill 684951bdc0 Change a bunch of NSArray declarations to const collection literals 2022-01-18 18:12:57 -08:00
Christopher Snowhill f9ace87319 Add static container types to Info.plist generator stub 2022-01-18 16:58:31 -08:00
Christopher Snowhill 39a5ee8ab7 Utility: Add stubs to regenerate Info.plist with file type associations 2022-01-18 03:07:32 -08:00
Christopher Snowhill d24a01a637 Implemented basic embedded CueSheet support 2022-01-14 16:46:35 -08:00
Christopher Snowhill e2bca8f93b OpenMPT: Correctly OS version gate the OpenMPT plugins, and add an interface for any other plugin to use, should it ever become necessary 2021-12-27 17:46:09 -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 4ff38268ae Plugins: Support multiple handlers per MIME type for streams 2021-12-22 16:22:49 -08:00
Christopher Snowhill 483b8d6647 Don't load metadata for stream URLs 2021-02-28 18:48:21 -08:00
Christopher Snowhill 7308aa5f7b Fall back on non-container file parsing, since VGMStream is too greedy with its extension list 2020-02-17 19:50:32 -08:00
Chris Moeller 03b825ced3 Hopefully fix the last of the Automatic Reference Counting issues that remained. 2016-06-19 12:57:18 -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 a6b6369a6d Added class priority levels to metadata readers, properties readers, and containers, all so sidplay can be downvoted for mishandling id MUS format when trying to read its own MUS format 2015-04-13 00:39:24 -07:00
Chris Moeller 63fba5930e Implemented support for multiple decoders per file name extension, with a floating point priority control per interface. In the event that more than one input is registered to a given extension, and we match that extension, it will be passed off to an instance of the multi-decoder wrapper, which will try opening the file with all of the decoders in order of priority, until either one of them accepts it, or all of them have failed. This paves the way for adding a VGMSTREAM input, so I can give it a very low priority, since it has several formats that are verified by file name extension only. All current inputs have been given a priority of 1.0, except for CoreAudio, which was given a priority of 0.5, because it contains an MP3 and AC3 decoders that I'd rather not use if I don't have to. 2013-10-21 10:54:11 -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 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 d7ddda160e Modified plugin logic so one class can be multiple plugin types. 2009-02-28 20:12:47 -08:00
vspader dd89208ee0 Removed singleton nonsense. 2008-03-03 02:18:27 +00:00
matthewleon a0cdf1a03e Fixed CogAudio bool bug. 2008-03-01 15:32:28 +00:00
matthewleon 6b35fee9e3 Cleaning CogAudio code. 2008-03-01 15:28:17 +00:00
matthewleon 666d803897 Code cleanup. 2008-03-01 15:04:46 +00:00
vspader 5715522470 Moved to frame-based reading/seeking instead of byte/second based. Some formats have still not been updated and are broken.
Added icons for other formats.
2007-11-24 20:16:27 +00:00
vspader 9a344922da Fixed the way plugin controller was setup and loaded.
Updated cuesheet to search for alternate types if wav is not there.
2007-10-20 15:53:52 +00:00
vspader cc806285e0 Updated plugin architecture. No more plugin classes! Now loads classes based on protocol alone. 2007-10-20 15:46:39 +00:00
vspader f1b9141f4b Added mime type support. 2007-10-14 18:12:15 +00:00
vspader c536ea06a5 Removed useless PropertiesReader classes.
PluginController now uses the decoder if a properties reader class is not found.
PropertiesReaders should still be created if performance can be improved if code is only reading properties.
2007-10-14 17:31:20 +00:00
vspader 50395e6e72 Basic cue sheet support working. Bug city. 2007-10-10 01:59:25 +00:00
vspader 88aecc7de2 Added AudioContainer plugin and made pls and m3u loaders that use it. 2007-10-09 01:20:46 +00:00
vspader daba91b462 Removed debugging messages. 2007-07-11 01:20:32 +00:00
vspader 96ed93e5eb Fixed some problems with non-lowercase file extensions.
Added automatic filetype finding for quicktime plugin. Note that the files it adds are rather generous (txt, swf, and other file types that are not neccessarily audio)
2007-06-10 22:05:49 +00:00
vspader 934840ace5 Added source plugin support. Things are incredibly broken. Besides Ogg Vorbis. That should still work. 2007-03-02 01:36:52 +00:00
vspader 927b65a4a5 Merged with cog-audio-framework branch. Cog now uses plugins. 2007-02-24 20:36:27 +00:00