Skip to main content

Topic: foo_dirwatch (Read 128771 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
foo_dirwatch
This plugin allows you to specify directories to monitor, and notifies the Media Library of any changes (additions, renames, deletions) that occur.

Latest version: 0.2 beta 3 (2007-12-08)
REMOVED

Known issues
- a subset of directory removes are not handled
- moved files' playlist entries are not updated (renamed files' entries are, though)
  • Last Edit: 21 October, 2008, 01:15:06 AM by falling down the stairs

  • donnie
  • [*][*][*]
foo_dirwatch
Reply #1
I it doesn't seem to be doing anything for me

I have set the paths of my directories, ticked the remove deleted files from the database box and set the filters to: *.mp3;*.wma

if I then add or remove files from the directories and and select directory watcher from my components menu, the database isn't getting updated.

foo_dirwatch
Reply #2
I like the idea of this plugin

However, the plugin reuqires  MSVCR70.dll to run, and I already have MSVCR71.dll in my foobar directory. I don't know what other foobar plugin uses MSVCR71.dll. I think its ColumnsUI.

Wouldn't it be better to use the newer dll?

foo_dirwatch
Reply #3
I uploaded a new version that fixes a crash bug and removes that menu item (because it doesn't do anything).

donnie - it's not working because you have include filters set -- currently they filter out directory notifications (whoops!). To see what I mean, try renaming an mp3 -- it should receive the notification.

I'll fix the include filters as soon as I can.

metal_termite - Not really. I only have MS Visual Studio.NET 2002. A lot of other plugins also require MSVCR70.DLL, so it's not like this is a unique situation.

EDIT: I uploaded a new version that fixes the include filters.
  • Last Edit: 09 February, 2006, 09:17:06 PM by falling down the stairs

  • francesco
  • [*][*][*][*]
foo_dirwatch
Reply #4
 Great plug-in
thanks for your job

   


on every time does foo_dirwatch monitor the directories ? every x minutes?
  • Last Edit: 11 February, 2006, 09:19:53 AM by francesco

  • lupin
  • [*]
foo_dirwatch
Reply #5
Quote
Please test files that are named with multi-byte character sets (e.g., Chinese, Japanese etc.); they should work fine but I want to be sure.
[a href="index.php?act=findpost&pid=363053"][{POST_SNAPBACK}][/a]

I tested files with Chinese names, and it worked like a charm.
However, directories to be monitored cannot contain Chinese characters.
I tested a directory with a Chinese named sub-folder. The console displayed a warning quoted below.

WARNING (foo_dirwatch) : Please check directories to monitor list in options, because "E:\music\诅咒(the sub-folder)" is not a valid directory on this system.

Please fix it. THX for such a good plugin.

Sorry for my poor English.

  • matth6546
  • [*][*]
foo_dirwatch
Reply #6
this is a good idea, but it doesn't seem to actually do much. when i add files to the directory, it doesn't detect them. i've tried disabling foo_dir and re-enabling it, i've tried closing and opening foobar - nothing. the only thing it does is remove a file from the database after foobar has tried to play it and discovered the file wasn't there.

  • francesco
  • [*][*][*][*]
foo_dirwatch
Reply #7
it seems that foo_dirwatch doesn't work  perfectly

directory to monitor
I:\Music;G:\music mp3

include mask *.mp3;*.wma;*.m4?
exclude blank

I tried to add some dirs inside music , but nothig it did not add new mp3 in the database

in the console i get only these messages
Code: [Select]
INFO (foo_dirwatch) : Added "G:\music mp3\" to directory monitor list.
INFO (foo_dirwatch) : Added "I:\Music\" to directory monitor list.
INFO (foo_dirwatch) : Started monitoring directories



DATABASE setting
G:\music mp3\;I:\Music\
Restrict file type
BLANK
  • Last Edit: 14 February, 2006, 07:30:44 AM by francesco

  • enjoilax
  • [*][*]
foo_dirwatch
Reply #8
Not working here either.

foo_dirwatch
Reply #9
To clarify some things:

foo_dirwatch does not poll for changes; instead, it uses the Win32 API function ReadDirectoryChangesW to tell the OS to notify foo_dirwatch when changes occur. This function does not exist on Windows 9x/Me and so the plug-in will not work on those OS versions.

If the plug-in is not working for you, please list the following info:
- directories to monitor string
- include filter string
- exclude filter string
- amount of files/folders in each directory being monitored

I'll fix the directory to monitor multi-byte problem as soon as I can.

  • tgoose
  • [*][*][*][*]
foo_dirwatch
Reply #10
Awesome  This is just what I wanted!

  • francesco
  • [*][*][*][*]
foo_dirwatch
Reply #11
falling down the stairs i'm really  grateful for the plug in


Quote
foo_dirwatch does not poll for changes; instead, it uses the Win32 API function ReadDirectoryChangesW to tell the OS to notify foo_dirwatch when changes occur. This function does not exist on Windows 9x/Me and so the plug-in will not work on those OS versions.



Could you make an example  that i can come true ,realize,  so i can know if the plugin works to me??


i tried to add directory , tried to save mp3 in new directory , tried to move directory /mp3 , but nothing , this doen't update my database

i have 817 files in 91 subfolders in one directory and 1.580 files in 176 subfolders in another directory


for me could be better  , a plug that every x minutes ,can scan the database(the whole) and remove dead entries
  • Last Edit: 14 February, 2006, 08:25:54 AM by francesco

foo_dirwatch
Reply #12
Quote
Could you make an example  that i can come true ,realize,  so i can know if the plugin works to me??

My setup is as follows:
Directories to monitor: F:\music;G:\music
Include filter: *.mp3;*.mp2;*.shn;*.flac;*.m4a;*.mpc;*.ogg
Exclude filter: *.jpg;*.gif;*.png;*.nfo;*.txt;*.tmp;*.bmp;*.ini

Quote
i tried to add directory , tried to save mp3 in new directory , tried to move directory /mp3 , but nothing , this doen't update my database

Does anything show up in the console? The plug-in prints a console message every time it adds/updates/removes something from the database.

Quote
for me could be better  , a plug that every x minutes ,can scan the database(the whole) and remove dead entries
[a href="index.php?act=findpost&pid=364203"][{POST_SNAPBACK}][/a]

That is not the intent of this plug-in. I don't want it to thrash the hard drive just to update the database - that would be a lot slower, plus you can already do that in foobar (Preferences /  Database / Remove dead entries from database).

  • francesco
  • [*][*][*][*]
foo_dirwatch
Reply #13
Quote
Does anything show up in the console? The plug-in prints a console message every time it adds/updates/removes something from the database.


after several  testes
i get only this info from dir watch plug
Code: [Select]
INFO (foo_dirwatch) : Added "I:\mp3" to directory monitor list.
INFO (foo_dirwatch) : Added "G:\music mp3" to directory monitor list.
INFO (foo_dirwatch) : Started monitoring directories.


only 1 time, i got foo_driwatch found new songs , but it did not add to the database

foo_dirwatch
Reply #14
I've uploaded a new version that fixes the multi-byte problem with the "directories to monitor" field.

I did notice some problems with the plug-in myself (a directory move was not caught for some reason).
If you are having problems please help me track them down with these test cases:

1. Copy a file into one of the monitored directories. (Should trigger a "Precached..." note).
2. Copy a directory into one of the monitored directories. (same as above)
3. Rename a single file in one of the monitored directories. (Should trigger a "... was renamed to ..." note)
4. Rename a directory in one of the monitored directories. (same as above)
5. Move a file from one subdirectory to another in one of the monitored directories. (Should trigger one "Precached..." and one "Removed..." note)
6. Move a directory from one subdirectory to another in one of the monitored directories. (same as above)

Be sure to list the settings you are using in the foo_dirwatch preferences.

To see if database changes did actually occur I recommend the foo_dbsearch plug-in.

  • francesco
  • [*][*][*][*]
foo_dirwatch
Reply #15
[a href="http://imageshack.us" target="_blank"] 
  • Last Edit: 15 February, 2006, 08:37:57 AM by francesco

  • enjoilax
  • [*][*]
foo_dirwatch
Reply #16
Works at deleting at least  Thanks!

  • c0utta
  • [*][*]
foo_dirwatch
Reply #17
falling down the stairs,

An excellent plug-in - works seamlessly with my removable drive.

I do have issues with UNC paths, but I understand that ReadDirectoryChangesW is only for drives - can you confirm?  I haven't been able to deduce whether mapping the UNC path to a drive works either.

Not being a foobar developer myself (dumb question approaching!) is it possible to perform a start-up inventory in the 'background' i.e. with a low priority thread?

Once again, thanks.

c0utta

foo_dirwatch
Reply #18
Quote
falling down the stairs,

An excellent plug-in - works seamlessly with my removable drive.

I do have issues with UNC paths, but I understand that ReadDirectoryChangesW is only for drives - can you confirm?  I haven't been able to deduce whether mapping the UNC path to a drive works either.

What issues are you having? ReadDirectoryChangesW is compatible with UNC paths. There are some limitations, but the current code should work with UNC paths. I don't think mapping a drive would change anything.

Quote
Not being a foobar developer myself (dumb question approaching!) is it possible to perform a start-up inventory in the 'background' i.e. with a low priority thread?

Yes, that's probably the best way to do it. I haven't implemented the inventory scan because I haven't yet decided on the best way to store the relevant data.

foo_dirwatch
Reply #19
I uploaded a new version. This one actually uses foobar's built in reader functionality, so when a file is added to the database its metadata is also automatically added.

No leads on the mysterious missing notifications, though.

  • dubpistol
  • [*][*][*]
foo_dirwatch
Reply #20
Fantastic plugin ... it makes foobar perfect.

thank you

  • francesco
  • [*][*][*][*]
foo_dirwatch
Reply #21
falling down the stairs

tha last version works like a charm !!!
Great plug in     


only 1 time it did not work i renamed a folder placebo to placebo c , and dirwatch detected the change ,  after immediately i re-renamed to placebo , and it did not catch it

by the way , i did several several tests and dirwatch works really like a charm

with the feature Perform startup & shutdown inventory , this plug in makes foobar really perfect without rivals   


thanks falling down the stairs

  • gorman
  • [*][*]
foo_dirwatch
Reply #22
Installing it now. If it works it's pretty much what I've been looking for in a year or so.

One question: for it to work the changes to the monitored directories must happen when foobar is active?
  • Last Edit: 17 February, 2006, 11:13:20 AM by gorman

  • gorman
  • [*][*]
foo_dirwatch
Reply #23
Quote
However, the plugin reuqires  MSVCR70.dll to run, and I already have MSVCR71.dll in my foobar directory. I don't know what other foobar plugin uses MSVCR71.dll. I think its ColumnsUI.

Wouldn't it be better to use the newer dll?
[a href="index.php?act=findpost&pid=363143"][{POST_SNAPBACK}][/a]
Another question, sorry. Can I have both DLLs in my components directory? I currently have only version 71, but when I launch foobar I don't get any error message from this component.

  • matth6546
  • [*][*]
foo_dirwatch
Reply #24
i installed the 2/16 version, but i can't turn on "Perform startup & shutdown inventory" feature. i can't tell that this component is actually doing anything.