-
Type:
Improvement
-
Resolution: Fixed
-
Priority:
Normal
-
Affects Version/s: None
-
Component/s: Plugins API
-
None
Add a new extension point that allows plugins to register custom CD ripping log parsers for the "Lookup CD log file" feature.
Currently, supported log formats (EAC, XLD, fre:ac, Whipper, dBpoweramp, SCSI TOC) are hardcoded in _parse_disc_ripping_log(). This change would introduce a disc_log_readers extension point and exposes it as api.register_disc_log_reader(function) in the plugin v3 API.
A disc log reader is a function that takes a file path and returns MbTocNumbers (the MusicBrainz TOC tuple), or raises an exception if it cannot parse the file. All registered readers are tried in sequence until one succeeds.
Built-in readers are also registered through this extension point, making it straightforward to move any of them to a plugin in the future.