[Request]Foo_quicktag + sqlite.dll |
![]() ![]() |
[Request]Foo_quicktag + sqlite.dll |
Feb 24 2005, 10:35
Post
#1
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
Hi,
After having installed the mod foo_playcount by kode54 that uses sqlite.dll to store the playcount information, so no tagging your file, I wonder if someone (musicmusic?) would be interested in implementing the same feature for foo_quicktag. This way the users that want to use it to rate their songs but want this information to be kept outside of their file itself, will have the choice. In the same time, such a implementation will make other tags written by quiktag also out of the file, so at the end, it depends what you want this component to do (really tag the file, or just a database). -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
Feb 25 2005, 04:46
Post
#2
|
|
|
Group: Members Posts: 305 Joined: 8-January 03 Member No.: 4465 |
Just out of curiousity, how do I get this sqlite thing to work? It doesn't seem to do anything... is there something that I have to set up somewhere or something?
|
|
|
|
Feb 28 2005, 18:07
Post
#3
|
|
|
Group: Members Posts: 305 Joined: 8-January 03 Member No.: 4465 |
Hmm.. maybe this plugin could be expanded into a more general database component, called foo_sql perhaps? There could be a general framework in place so that other plugins could be modified to use the external database accordingly. OTOMH, foo_skip, foo_quicktag, foo_playcount, are all plugins where having an external db makes sense.
Just a few things that could stand to be added to a foo_sql dealie.. -list of everything in the db - each file path and whatever tags have been associated with it, option to delete/modify certain entries, etc. -option to merge tag data with db data, configurable with TAGZ -Automatic notification for missing files - if I move a file outside of Foobar, I'd like to retain the db data associated with it. Maybe an option to search your HD/a certain folder for missing files? This feature's kinda important to me, I'd hate to lose everything because I had to move something outside of Foobar. |
|
|
|
Feb 28 2005, 18:46
Post
#4
|
|
![]() Group: Members Posts: 184 Joined: 10-July 04 Member No.: 15291 |
1. why do people dont like to save info in the file tag?
2. the sql saves other tags as artist, album, etc. ? could it be useful to other things too? like generated playlist? |
|
|
|
Feb 28 2005, 22:27
Post
#5
|
|
|
Group: Members Posts: 305 Joined: 8-January 03 Member No.: 4465 |
QUOTE (eliazu @ Feb 28 2005, 09:46 AM) 1. why do people dont like to save info in the file tag? 2. the sql saves other tags as artist, album, etc. ? could it be useful to other things too? like generated playlist? 1. Some people like to keep their files unchanged, primarily when file sharing. Otherwise, the data will change, resulting in a different hash and requiring people to regenerate any sfvs (or have people stratching their heads as to why the files are getting shared seperately from the rest of the network) Additionally, since ratings are subjective and playcounts vary from user to user, it doesn't make sense to keep this data in the file when it is transferred to another user. 2. Foobar already has an internal database for the storage of data, which does exactly what you're talking about. The problem here is that some of us want to modify the actual tags, but keep certain tags from getting added to the file, which is currently impossible. |
|
|
|
Mar 1 2005, 09:53
Post
#6
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
QUOTE (Killmaster @ Feb 28 2005, 09:07 AM) Hmm.. maybe this plugin could be expanded into a more general database component, called foo_sql perhaps? There could be a general framework in place so that other plugins could be modified to use the external database accordingly. OTOMH, foo_skip, foo_quicktag, foo_playcount, are all plugins where having an external db makes sense. That's an excellent idea, hope someone will be interested. Don't know how difficult could it be to make it -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
Mar 11 2005, 10:59
Post
#7
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
QUOTE (Killmaster @ Feb 28 2005, 09:07 AM) Hmm.. maybe this plugin could be expanded into a more general database component, called foo_sql perhaps? Sorry to bump this thread but I find this idea quite interesting and really nice for having out of your files personal info while keeping the ability to use tagging fb2k functions. One of the issues that fb2k brings me is the fact that I can't just use the 'block updates operations' in my files, because if I ever wants to tag my files in fb2k (mainly using masstagger, which is very powerful and I can't find something similar out of fb2k) then I have to unblock and my files will also be tagged with any already 'blocked' tags. I think that having the possiblity of writing (as mod playcount does) to a sql database is really a good solution, the sqlitle approach is really as simple as copying two dll files into your PC and that's it. From a user point of view is simple, fast and it works without problems. I don't have the impression that someone is really interesting in implementing this (i.e. foo_quicktag using the same sqlitle approach, or the foo_sql proposed idea), but let's see if I can give some arguments to make someone a little more interested - It'll store in a external DB personal fields like %rating%, and you could also make use of other custom fields like (just an example) %favourite%. - It'll make possible to different people using the same PC under different accounts to rate their music differently. - It'll not make your files change everytime you rate it (which I believe it's a personal taste that shouldn't stick to the file itself). - It'll reduce problems about duplicates (or even more) songs using fb2k and external players like the ipod. Not a problem for a 256mb key, but for a 20 GB of music it's really hard to keep track of duplicate songs. I would like to hear critics, comments, etc... -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
Mar 11 2005, 22:07
Post
#8
|
|
![]() Group: Members (Donating) Posts: 713 Joined: 8-July 04 From: Sao Paulo Member No.: 15173 |
I second this request. Maybe the external database (sql or whatever) support/SDK could be considered as a foobar2000 core change/addition to the next version(s), I mean for storing usage related info and plugin development.
I'm just speaking my mind out and please bear with me if I said anything stupid/unfeasible... -------------------- http://volutabro.blogspot.com
|
|
|
|
Mar 11 2005, 23:04
Post
#9
|
|
![]() Group: Members Posts: 271 Joined: 26-October 03 From: Seattle, WA, USA Member No.: 9461 |
QUOTE (beto @ Mar 11 2005, 01:07 PM) I second this request. Maybe the external database (sql or whatever) support/SDK could be considered as a foobar2000 core change/addition to the next version(s), I mean for storing usage related info and plugin development. I'm just speaking my mind out and please bear with me if I said anything stupid/unfeasible... Did peter say "absolutly not" to database filtering, so that user specific tag info isnt stored in the file and only in the database? This seems to me like the most sensable solution. This post has been edited by hunted: Mar 11 2005, 23:05 |
|
|
|
Mar 13 2005, 17:40
Post
#10
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
QUOTE (hunted @ Mar 11 2005, 02:04 PM) Did peter say "absolutly not" to database filtering, so that user specific tag info isnt stored in the file and only in the database? This seems to me like the most sensable solution. It desn't seems that kind of features (separate DB and file tags info) is going to be implemented anytime soon, at least I've never seen any fb2k developper talk about that in this forum (if it has been I've missed it and I'll appretiate if someone can post links). So I only see as a solution if someone would like to implement an external database plugin (even a simple one) based in SQL or whatever and let the user the choice of what to store in it. -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
Mar 13 2005, 20:51
Post
#11
|
|
|
Group: Members Posts: 55 Joined: 26-November 04 Member No.: 18351 |
I did some coding (and copy pasting kode54's code
|
|
|
|
Mar 13 2005, 21:04
Post
#12
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
QUOTE (Fermion @ Mar 13 2005, 11:51 AM) Well, at least I have a perfect quicktagger for my own needs, because there are only couple of fields I need it for. Could you make it available? I mean, i'll only use it for playcounts, rating and maybe a favourite tag. If this can be done with your mod version then I'll interested in this kind of compoentn (and I'm sure many people around here as well) -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
Mar 13 2005, 22:23
Post
#13
|
|
![]() Group: Developer Posts: 195 Joined: 24-December 02 Member No.: 4220 |
QUOTE (Fermion @ Mar 13 2005, 11:51 AM) I did some coding (and copy pasting kode54's code Easy to solve with a bit of creative thinking... Use a table like: "fileurl","fieldname","value" -------------------- You can fool some of the people all of the time, and all of the people some of the time, but you can not fool all of the people all of the time.
- Abraham Lincoln |
|
|
|
Mar 13 2005, 22:50
Post
#14
|
|
|
Group: Members Posts: 55 Joined: 26-November 04 Member No.: 18351 |
|
|
|
|
Mar 14 2005, 00:03
Post
#15
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
QUOTE (Fermion @ Mar 13 2005, 01:50 PM) Ok. But do you have plans to make it available if it becomes stable and usuable? -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
Mar 14 2005, 21:13
Post
#16
|
|
|
Group: Members Posts: 55 Joined: 26-November 04 Member No.: 18351 |
Ok here it is. But this version is meant only for testing! I would appreciate if you could check that all the features below are working properly. I'd recommend taking backups before experimenting.
Download No longer available, check here Features - Uses external SQLite database to save the applied tags. (quicktag.db in foobar directory). You can use a database analyzer tool or something to check the contents. For example SQLite Analyzer - The tags in audio files are not modified. - Tags are shown in tech info, and can be accessed in tagz-scripts using two underscores like "__RATING" etc. - Also the tags from ext. database are reloaded when foobar reloads tags from files. - When a file is removed from foobar database, the entries in external database are also removed. - When a file is moved (trough foobar), the entries in the external database are modified to the new file name. - Has all the same functionality as the original quicktag plugin. Installation Copy foo_quicktag_sqlite.dll to foobar2000\components\ directory and sqlite.dll to foobar2000\ directory. Thanks to Musicmusic (foo_quicktag), kode54 (sql functionality in foo_playcount), thoehrer (foo_playcount) This post has been edited by Fermion: Mar 15 2005, 22:33 |
|
|
|
Mar 14 2005, 21:34
Post
#17
|
|
![]() Group: Members (Donating) Posts: 713 Joined: 8-July 04 From: Sao Paulo Member No.: 15173 |
Excellent. thanks a lot for this. I'll try it as soon as I get home.
in the future could you please consider supporting MySQL? For me it would be much more manageable, but thanks anyway. -------------------- http://volutabro.blogspot.com
|
|
|
|
Mar 14 2005, 22:07
Post
#18
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
QUOTE (Fermion @ Mar 14 2005, 12:13 PM) Ok here it is. But this version is meant only for testing! I would appreciate if you could check that all the features below are working properly. Thanks you for this! I'll try asap and report any problems. Damn, I'm so happy... finally, DB only personal info tags... -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
Mar 14 2005, 23:33
Post
#19
|
|
![]() Group: Members Posts: 1317 Joined: 4-January 03 From: Finland Member No.: 4418 |
Cool, I really need to test this one. Thanks!
edit: I just did a "%rating% to %__rating%" conversion with this plugin for 5128 tracks so I'm ready for some real testing now. It sure took some time converting those tags.. This post has been edited by anza: Mar 15 2005, 00:20 |
|
|
|
Mar 15 2005, 01:05
Post
#20
|
|
![]() Group: Members (Donating) Posts: 713 Joined: 8-July 04 From: Sao Paulo Member No.: 15173 |
i've been trying it and so far so good!!
This post has been edited by beto: Mar 15 2005, 02:03 -------------------- http://volutabro.blogspot.com
|
|
|
|
Mar 15 2005, 18:03
Post
#21
|
|
|
Group: Members Posts: 836 Joined: 20-December 02 Member No.: 4166 |
QUOTE (Fermion @ Mar 14 2005, 02:13 PM) Ok here it is. But this version is meant only for testing! I would appreciate if you could check that all the features below are working properly. I'd recommend taking backups before experimenting. I haven't tried your component yet, but one thing that kode54's component missed was an implementation for metadb_callback::on_info_edited(). This prevents outside component from modifying the metadata and having it stored to the database. The particular component I'm thinking of is my foo_pod. Certain people (hi jkwarras!) have been asking for a way to sync up the iPod's rating with something that work with Foobar. So what will happen is when the iPod's playlist is loaded into Foobar, foo_pod will extract the rating from the iPod and find the corresponding song in Foobar and set the rating metadata. Without metadb_callback::on_info_edited(), your component won't notice that foo_pod has set the rating. |
|
|
|
Mar 15 2005, 19:49
Post
#22
|
|
|
Group: Members Posts: 55 Joined: 26-November 04 Member No.: 18351 |
QUOTE (Aero @ Mar 15 2005, 07:03 PM) I haven't tried your component yet, but one thing that kode54's component missed was an implementation for metadb_callback::on_info_edited(). This prevents outside component from modifying the metadata and having it stored to the database. The particular component I'm thinking of is my foo_pod. Certain people (hi jkwarras!) have been asking for a way to sync up the iPod's rating with something that work with Foobar. So what will happen is when the iPod's playlist is loaded into Foobar, foo_pod will extract the rating from the iPod and find the corresponding song in Foobar and set the rating metadata. Without metadb_callback::on_info_edited(), your component won't notice that foo_pod has set the rating. So would it be a good solution for example to have a user defined list of the tags to be updated to the external database automatically in on_info_edited()? And after that what should be done with the metadata values in foobar database, delete them or just let them be? Because there's not very much point in having an external database, if the same data is also in the foobar database or in the files. Or is it possible for foo_pod to set the values straight to the tech info? |
|
|
|
Mar 15 2005, 22:31
Post
#23
|
|
|
Group: Members Posts: 55 Joined: 26-November 04 Member No.: 18351 |
Fixed version is here.
|
|
|
|
Mar 16 2005, 02:44
Post
#24
|
|
|
Group: Members Posts: 13 Joined: 26-January 05 Member No.: 19323 |
Great plugin. Thanks!
Is that possibility to add "resync" button as in modified foo_playcount? I notice that if I copy my foobar or clean my database, I can't retrieve the information that is stored in quicktab.db. It will be handy to have "resync" button as in foo_playcount which I can have all my information back. |
|
|
|
Mar 16 2005, 10:25
Post
#25
|
|
|
Group: Members Posts: 808 Joined: 10-June 03 From: Zaragoza Member No.: 7113 |
So far everythign works fine for me. I've trasnfered all my %rating% to %__rating%
I have some requests, if you could have the time to take alook at them I'll appretiate: 1) Could it be possible to allow lower-case, I mean instead of %__RATING%, to have %__rating%. I know it's not a big deal, but it's just that I don't like having these values in caps in the tech info properties page, but I can live with it 2) Could you add the possibility of using system date and hour values as playcount mod? I mean, having the possiblity of using i.e. %Y-%m-%d %H:%M:%S (that will show up as 2005-03-16 10:22:10). In my case I would like that to use system info to create a %__added% field (added to database info). But it could be used for other things. 3) A nice feature would be to allow to add more than one field at a time. i.e. when you press on Quick tag SQL>Rate 5 will fill the two fields %__rating% and %__rating_date%. In anycase, thanks you very much because your plugin is really useful -------------------- Iván
My Blog: http://www.ivancastell.org |
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 21st November 2009 - 22:07 |