Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow Plugins to store additional fields in library #310

Closed
triplem opened this issue Jun 5, 2013 · 2 comments
Closed

Allow Plugins to store additional fields in library #310

triplem opened this issue Jun 5, 2013 · 2 comments

Comments

@triplem
Copy link

triplem commented Jun 5, 2013

I am using currently the discogs plug for determination of album information. Right now I do have the discogs release id stored in my tags (well basically I am storing this into a file called id.txt in each album) and I would also like to see this information in the library to avoid the need to type this in again on a re-scan.

Did I miss anything?

So what I propose is the possibility for each plugin to store additional fields in the library (like discogs_id).

@triplem
Copy link
Author

triplem commented Jun 5, 2013

I have browsed through the source code and would suggest one solution, which could also be implemented for already existing plugins/fields:

  • a new plugin_album table, fields: album_id, plugin_name, key_name, value
  • a new plugin_item table with the following fields: album_id, item_id, plugin_name, key_name, value

This could be used by already existing plugins (e.g. chroma) to store their values. Most of this could be abstracted away by using a "plugin_library" to have a common handling of this. Of course, if already existing fields are done with the new structure, a migration have to be written as well.

Queries could be offered on this one as well. Problem could be, that on very large collection, the above mentioned table could grow quite fast.

It would be even more perfect if the above would be "automatically" done with the MediaFile fields, but I guess, that this would not be as easy and not really needed anyway.

@sampsyo
Copy link
Member

sampsyo commented Jun 5, 2013

Great idea—this is probably the right design, and is in fact almost exactly what we're already starting to implement in the flexattr branch. See the discussion in #101. If you're interested, we could use some bright ideas about the implementation strategy there—it's nearly working but still has a few warts. I plan pushing on this feature more aggressively after the next release is finalized.

@sampsyo sampsyo closed this as completed Jun 5, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants