SUMMARY Module files are mainly used for demoscene-related music. Having metadata support through KFileMetaData for these formats would make playing demoscene music in Elisa a bit more convenient. Elisa is already able to play these files through LibVLC. TagLib supports extracting metadata from these music files since version 1.8. KFileMetaData targets version 1.11.1, so this would not even a require a TagLib version bump. Affected MIME types: * Amiga SoundTracker audio: audio/x-mod * Scream Tracker 3 audio: audio/x-s3m * FastTracker II audio: audio/x-xm * Impulse Tracker audio: audio/x-it Properties that TagLib exposes from these music files: "TITLE", "COMMENT", "TRACKERNAME" (Generator) SOFTWARE/OS VERSIONS Operating System: KDE neon 5.23 KDE Plasma Version: 5.23.5 KDE Frameworks Version: 5.89.0 Qt Version: 5.15.3 Graphics Platform: X11
This is quite trivial to add, even for a new contributor. A MR should contain test files (with appropriate licenses) for all formats, and cover the all supported properties in unit tests.
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kfilemetadata/-/merge_requests/139
Git commit eefc973b56e39034e498487f6d9900a4008e560e by Nate Graham, on behalf of Wladimir Leuschner. Committed on 14/03/2024 at 15:03. Pushed by ngraham into branch 'master'. Add support for .mod/.s3m/.xm/.it Module Tracker formats meta data KFileMetaData did not parse module tracker files, although TagLib has support in parsing meta data from these files. Tracker files are supported in TagLig since version 1.8 and therefore below required version that CMakeLists.txt asks for in KFileMetaData, which is version 1.12.1 M +4 -0 autotests/extractorcoveragetest.cpp A +- -- autotests/samplefiles/test.it A +- -- autotests/samplefiles/test.mod A +- -- autotests/samplefiles/test.s3m A +- -- autotests/samplefiles/test.xm M +69 -5 autotests/taglibextractortest.cpp M +35 -0 src/extractors/taglibextractor.cpp M +5 -2 src/extractors/taglibextractor.json https://invent.kde.org/frameworks/kfilemetadata/-/commit/eefc973b56e39034e498487f6d9900a4008e560e