Maintaining several libraries in one place, Creating hardlink copies by tags? |
![]() ![]() |
Maintaining several libraries in one place, Creating hardlink copies by tags? |
Mar 21 2012, 14:51
Post
#1
|
|
|
Group: Members Posts: 143 Joined: 27-January 05 Member No.: 19370 |
Hi.
I'm managing the library for my family (3 persons) for the sake of convenience, because we have a similar interest in music. I'm storing all this on a server, in one single music folder. I introduced a 'library' tag field to distinguish the three libraries. As I said, there's a lot of overlapping between libraries. Now i want to (semi-?)automatically hardlink each user's library to a separate folder for easy synchronisation with the user's computer. I manage the library on the server with foobar, so I'd be in favor of a solution within foobar, but if it can be done differently, that's fine too. The only solution I can think of at the moment is creating a full hardlink copy (link shell extension) of the whole library and deleting the files there that don't belong to a user's library. I tried solving this with foo_run, but foo_run can't take a list of files and call external application (like ln.exe from link shell extension) for every file in the list, it only calls the application once. TL;DR Decide by tag if a file should be hardlinked to another folder. I'm open to completely different approaches, too. Tell me whatever comes to your mind. BTW the codecs used are mp3, aac, wv and flac (mainly) edit: CODE X:\music\ (should contain all music)
X:\music_usr1\ (should contain hardlinks to the music in X:\music\ which usr1 has added to his library) X:\music_usr2\ etc. This post has been edited by soulsearchingsun: Mar 21 2012, 14:54 |
|
|
|
Mar 26 2012, 12:58
Post
#2
|
|
|
Group: Members Posts: 143 Joined: 27-January 05 Member No.: 19370 |
bump
I'll appreciate any input from your side. |
|
|
|
Mar 26 2012, 18:44
Post
#3
|
|
![]() Group: Members Posts: 379 Joined: 16-December 10 From: Palermo Member No.: 86562 |
If you want to operate at filesystem level, you might define three different network users and then give read permission to each file of the library to the user(s) it belongs. Every user opens the same share but can read only his/her files.
Can't see a way to automate it, though. This post has been edited by Nessuno: Mar 26 2012, 18:45 -------------------- ... I live by long distance.
|
|
|
|
Mar 28 2012, 11:43
Post
#4
|
|
|
Group: Members Posts: 143 Joined: 27-January 05 Member No.: 19370 |
Thanks, that's a take on my problem I couldn't think of.
Seems I need to think some more, though. |
|
|
|
Mar 28 2012, 12:33
Post
#5
|
|
|
Group: Members Posts: 141 Joined: 14-February 12 Member No.: 97162 |
How is the foobar user tag stored - in the audio file itself as a real tag, or in some separate database?
|
|
|
|
Mar 28 2012, 13:19
Post
#6
|
|
|
Group: Members Posts: 438 Joined: 26-March 08 Member No.: 52303 |
Maybe JRiver Media Center offers a solution.
In general you don’t want to have multiple libraries and you don’t want to have them at all if the content has overlaps. So 1 library on the server. Clients can sync the local library with the one on the server. You can define rules like “Display this when User=X”, using your own “library” tag as a filter. http://yabb.jriver.com/interact/index.php?topic=70600.0 -------------------- TheWellTemperedComputer.com
|
|
|
|
Mar 28 2012, 14:11
Post
#7
|
|
|
Group: Members Posts: 143 Joined: 27-January 05 Member No.: 19370 |
How is the foobar user tag stored - in the audio file itself as a real tag, or in some separate database? Real tag. So 1 library on the server. Clients can sync the local library with the one on the server. You can define rules like “Display this when User=X”, using your own “library” tag as a filter. I'm already using a similar solution on the server, with foobar and foo_facets. Works well for what I do. Would work on the client side, too. Problem is, I'd rather have this sorted out on the server side. My mother doesn't need my prog-rock collection jamming her netbook -.- Opt-out while syncing needs to be done by hand, again. I begin to think that if I need a solution - I have to create it. |
|
|
|
Mar 28 2012, 15:34
Post
#8
|
|
|
Group: Members Posts: 141 Joined: 14-February 12 Member No.: 97162 |
Real tag. ... I begin to think that if I need a solution - I have to create it. If you used linux on your server, there are several FUSE-based virtual filesystems solving your problem, such as http://www.pytagsfs.org/Introduction , http://erislabs.net/ianb/projects/id3fs/or older https://gna.org/projects/tagsfs . I have not tested them personally (I am happy with mp3fs http://khenriks.github.com/mp3fs/ ) though but most likely they will work OK. |
|
|
|
Mar 28 2012, 16:17
Post
#9
|
|
|
Group: Members Posts: 143 Joined: 27-January 05 Member No.: 19370 |
If you used linux on your server, there are several FUSE-based virtual filesystems solving your problem. This looks promising! Linux? Not yet, but for this, a VM should suffice. I need to take a look into this. As so often, I expect them to reach their limits with wv+embedded cue of which I have a lot. |
|
|
|
Mar 28 2012, 16:36
Post
#10
|
|
|
Group: Members Posts: 141 Joined: 14-February 12 Member No.: 97162 |
This looks promising! Linux? Not yet, but for this, a VM should suffice. I need to take a look into this. Probably the performance will suffer, but if I understand correctly performance of your tag-filtered filesystem is not critical. As so often, I expect them to reach their limits with wv+embedded cue of which I have a lot. I would be surprised if those filesystems supported wv, at least they do not specify this format. Is splitting them to flacs eventually viable? |
|
|
|
Mar 28 2012, 21:10
Post
#11
|
|
|
Group: Members Posts: 318 Joined: 26-November 04 Member No.: 18345 |
For the cost of some disk drive space, it's probably simplest to just duplicate the common files in each library. Then you don't have to worry about tagging or specific application support. Give the other two users read/write permission only to their own library. If you rip a new CD, copy the files to each library. If they don't want them they can delete them.
|
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 21st May 2013 - 10:12 |