IPB

Welcome Guest ( Log In | Register )

2 Pages V   1 2 >  
Reply to this topicStart new topic
foo_playlist_revive, Revive the dead items in playlist
hakase
post Aug 8 2009, 11:03
Post #1





Group: Members
Posts: 10
Joined: 7-March 07
Member No.: 41258



foo_playlist_revive makes the dead items in the playlist alive again by replacing them with the matching ones in media library.
A handy util for those who often move or rename their media files/folders.

For foobar2000 v0.9.5.2 and upper.

Use main menu -> Edit -> Revive Dead Items to do the job.

Make sure the newly moved tracks have already been scanned into the media library or reviving will fail.

If the playlist is too long or the media library is too large, foobar2k may be unresponsive for several minute since this plug-in runs in the fb2k main thread.

v0.2: http://159.226.40.194/~Gu/fb/foo_playlist_revive_v0.2.rar

Changelog:
* Add progress bar.
* Fix crash caused by illegal file path.

Moderation: Rehosted here, due to broken link
Attached File  foo_playlist_revive.zip ( 71.89K ) Number of downloads: 3408


This post has been edited by shakey_snake: Mar 26 2010, 22:59
Go to the top of the page
+Quote Post
Robertina
post Aug 8 2009, 11:40
Post #2





Group: Members
Posts: 1306
Joined: 4-January 09
Member No.: 65169



QUOTE (hakase @ Aug 7 2009, 23:03) *
foo_playlist_revive makes the dead items in the playlist alive again by replacing them with the matching ones in media library.
A handy util for those who often move or rename their media files/folders.

Make sure the newly moved tracks have already been scanned into the media library or reviving will fail.

Am I wrong? Till yet I thought starting foobar2000 would let it remove tracks from its playlists automatically if they are not longer found in its media library?

Or does your component block this automatic removal?

Sorry for this question, I am a little bit confused.
Go to the top of the page
+Quote Post
2E7AH
post Aug 8 2009, 12:17
Post #3





Group: Validating
Posts: 2424
Joined: 21-May 08
Member No.: 53675



Can you extend your component to cover also this: (find media library items from text files based on some title formatting criterion like: %artist% - %title%)
Go to the top of the page
+Quote Post
callisto
post Aug 8 2009, 12:18
Post #4





Group: Members
Posts: 362
Joined: 2-September 06
From: Berlin, Germany
Member No.: 34723



@robertina
foober2000 does that on autoplaylists, but surely not on static playlists

This post has been edited by callisto: Aug 8 2009, 12:19


--------------------
fb2k on OSX: flac q8 > rockboxed Sansa e280v1: Vorbis q5.0
Go to the top of the page
+Quote Post
hakase
post Aug 8 2009, 14:24
Post #5





Group: Members
Posts: 10
Joined: 7-March 07
Member No.: 41258



Yes, this plugin is for static playlists. It's useless on autoplaylists.

QUOTE (2E7AH @ Aug 8 2009, 19:17) *
Can you extend your component to cover also this: (find media library items from text files based on some title formatting criterion like: %artist% - %title%)


I am afraid this function is beyond the scope of my plugin...
Go to the top of the page
+Quote Post
q-stankovic
post Aug 9 2009, 14:29
Post #6





Group: Members
Posts: 1740
Joined: 28-May 06
From: Düsseldorf
Member No.: 31251



Two issues:

If scanned playlist contains an entry added by foo_random then foobar will crash always.

Dead items wich are not revivable will be highlighted - but old selection before scanning will be kept


--------------------
german support forum: www.foobar-users.de / user: qwert73
Go to the top of the page
+Quote Post
mazy
post Aug 9 2009, 19:36
Post #7





Group: Members
Posts: 680
Joined: 11-July 03
From: Brno, Czech Rep.
Member No.: 7705



Amazing, I always wanted something like this. Thank you.


--------------------
info about my tag guesser script for foo_lua (preview version available):
http://www.hydrogenaudio.org/index.php?showtopic=16987
Go to the top of the page
+Quote Post
hakase
post Aug 11 2009, 03:36
Post #8





Group: Members
Posts: 10
Joined: 7-March 07
Member No.: 41258



QUOTE (q-stankovic @ Aug 9 2009, 21:29) *
Two issues:

If scanned playlist contains an entry added by foo_random then foobar will crash always.

Dead items wich are not revivable will be highlighted - but old selection before scanning will be kept


updated and bug fixed. Thanks for reporting bugs smile.gif

v0.2: http://159.226.40.194/~Gu/fb/foo_playlist_revive_v0.2.rar

Changelog:
* Add progress bar.
* Fix crash caused by illegal file path.

PS. i would like to update this into my original post but can't find the edit button. Is there a time limit for post edit?
Go to the top of the page
+Quote Post
Yirkha
post Aug 11 2009, 11:23
Post #9





Group: FB2K Moderator
Posts: 2359
Joined: 30-November 07
Member No.: 49158



QUOTE (hakase @ Aug 11 2009, 04:36) *
PS. i would like to update this into my original post but can't find the edit button. Is there a time limit for post edit?
See the pinned topic in the Site Related Discussion forum.


--------------------
Full-quoting makes you scroll past the same junk over and over.
Go to the top of the page
+Quote Post
Robertina
post Aug 14 2009, 03:30
Post #10





Group: Members
Posts: 1306
Joined: 4-January 09
Member No.: 65169



hakase,

I need your help again to understand the handling of foo_playlist_revive correctly:

1.
I have a playlist with nine hundred entries in it.

If I perform a search for dead items with foobar's native function (Edit / Remove Dead Items) I see a progress bar and the search needs a few seconds.

I assume your component in the first instance looks for missing items in the playlist as well and then searches for them in the media library. But if I select all tracks and choose Edit / Revive Dead Items all tracks get unselected immediately, no progress bar pops up and it seems nothing to happen.

Is foo_playlist_revive's check for dead items so much faster than foobar's own function or am I doing something wrong?


2.
Your component generates a new entry in Preferences / Advanced: "Playlist Revive: Compare track title in reviving".

Would your component find items even in the case that the files are dead because they have been renamed if I untick this option?

Sorry for my questions, I admit that sometimes I am thinking a little bit complicated, but I am very interesting in using your plugin.  lalala.gif
Go to the top of the page
+Quote Post
hakase
post Aug 14 2009, 10:03
Post #11





Group: Members
Posts: 10
Joined: 7-March 07
Member No.: 41258



QUOTE (Robertina @ Aug 14 2009, 10:30) *
1.
I have a playlist with nine hundred entries in it.

If I perform a search for dead items with foobar's native function (Edit / Remove Dead Items) I see a progress bar and the search needs a few seconds.

I assume your component in the first instance looks for missing items in the playlist as well and then searches for them in the media library. But if I select all tracks and choose Edit / Revive Dead Items all tracks get unselected immediately, no progress bar pops up and it seems nothing to happen.

Is foo_playlist_revive's check for dead items so much faster than foobar's own function or am I doing something wrong?


Yes I just notice it is faster than the fb2k's native one.

My plugin uses filesystem::g_exists() method to check the dead items. It's fast and seems work well.
Maybe fb2k's Remove Dead Item function uses a more delicate algorithm to determine a dead item, though I don't known in what aspect it works better than filesystem::g_exists().

QUOTE (Robertina @ Aug 14 2009, 10:30) *
2.
Your component generates a new entry in Preferences / Advanced: "Playlist Revive: Compare track title in reviving".

Would your component find items even in the case that the files are dead because they have been renamed if I untick this option?


This option became meaningless as I modified the matching algorithm in v0.2. Please just ignore it :-)

Basically the mathcing is based on file size and track length. A matching title field is a positive factor but not determinative.

This post has been edited by hakase: Aug 14 2009, 10:28
Go to the top of the page
+Quote Post
Robertina
post Aug 28 2009, 20:07
Post #12





Group: Members
Posts: 1306
Joined: 4-January 09
Member No.: 65169



hakase,

your plugin is very helpfully for me, thank you again for it.

One thing I am missing is the listing of revived items in foobar's console.

What do you think about this proposal?

Robertina.


Go to the top of the page
+Quote Post
hakase
post Sep 18 2009, 03:31
Post #13





Group: Members
Posts: 10
Joined: 7-March 07
Member No.: 41258



QUOTE (Robertina @ Aug 29 2009, 03:07) *
hakase,

your plugin is very helpfully for me, thank you again for it.

One thing I am missing is the listing of revived items in foobar's console.

What do you think about this proposal?

Robertina.


I am not sure whether that info is helpful to user. I'll consider it.
Go to the top of the page
+Quote Post
O8h7w
post Jan 23 2010, 16:54
Post #14





Group: Members
Posts: 6
Joined: 29-December 09
Member No.: 76464



QUOTE (hakase @ Sep 18 2009, 03:31) *
I am not sure whether that info is helpful to user. I'll consider it.


I'm rather sure it is. I was about to download your plugin just because I've needed it a few times, and will be needing it again and again... but I didn't download. Because I will wait until I need it, sincerely hoping this feature will be there. But just highlighting them seems to me like a rather unpleasant status report...

The more control the better. A report when done, that seems obvious to me. I think it should state which items worked and weren't touched, which items were changed, last but not least any items that were broken but couldn't be found. If it could also show all new filepaths, that would be great. That way I could check that there hasn't been any mixing up of similar songs.


--------------------
How short a signature am I allowed to have?
Go to the top of the page
+Quote Post
ThibWay
post Jan 25 2010, 19:47
Post #15





Group: Members
Posts: 21
Joined: 19-October 09
Member No.: 74145



Hi,

Your component rocks, thank you so much !! I have entires albums and generally I only listen to 2 to 3 tracks in each of them laugh.gif , when I use my external hard drive, if the letter change it breaks my playlist everytime dry.gif . I'm so glad to be able at last to have my playlists working while on holidays for instance.
However it is not perfect to me, I would need two things, second being optional, let me tell you about these suggestions :

1) I have several tracks that have the same name, yeah I know it's stupid but it's just that it's not the same version, it's cut or unmixed or whatever but it's the same name... And your component cannot load two tracks that have the same name. Would it be possible to have the component compare byte to byte the two versions of the same-nammed songs ? It seems difficult I know, I wish I could help... Anyways thanks for your consideration.

And 2) - optional - I'd like your component to automatically revive all playlists not just one and automatically when something's dead biggrin.gif .

Thanks again,

Thib

This post has been edited by ThibWay: Jan 25 2010, 19:48
Go to the top of the page
+Quote Post
Pickaxe
post Jan 25 2010, 20:33
Post #16





Group: Members
Posts: 41
Joined: 9-January 10
Member No.: 76876



Awesome component, that's all I have to say.
Go to the top of the page
+Quote Post
TimUK
post Feb 19 2010, 23:31
Post #17





Group: Members
Posts: 23
Joined: 18-March 07
Member No.: 41592



I can't thank you enough for this plug-in.

What with my obsessive habit of tidying and sorting my library, and adding newly loaded MP3's into Foobar's playlists too soon, prior to allocating them to a their most appropriate folder. I never got to work with Foobar's file management tools fluently, I'd like it to be more drag-drop. So Playlist Revive is, to me, a totally essential and valuable plug-in.

This post has been edited by TimUK: Feb 20 2010, 00:07
Go to the top of the page
+Quote Post
RogerG
post Feb 20 2010, 14:13
Post #18





Group: Members
Posts: 154
Joined: 2-April 06
From: Germany
Member No.: 29078



What critera does this component use to match items? Does it consider only the filenames? It would be good to optionally use some additional criteria like filesize and date. I think such things are stored in the playlist.
Go to the top of the page
+Quote Post
TimUK
post Feb 22 2010, 21:41
Post #19





Group: Members
Posts: 23
Joined: 18-March 07
Member No.: 41592



QUOTE (RogerG @ Feb 20 2010, 13:13) *
What critera does this component use to match items? Does it consider only the filenames? It would be good to optionally use some additional criteria like filesize and date. I think such things are stored in the playlist.


I've no idea, but it seems to work and is adequately fast enough. I had given some thought to coding such a utility myself and in my case I planned to generate a CRC32 from the MP3 audio frames data portion of the file. There are quite likely better methods of securing a unique identifier. I didn't get any further as I could not resolve how I would consistently handle the plethora of other audio formats: MPC, WAV, FLAC, APE et al, without giving myself a mamoth coding job! However, I was trying to find a method that would create a unique track identifier which would resist both filename and tag changes.
Go to the top of the page
+Quote Post
progorp
post Mar 29 2010, 08:38
Post #20





Group: Members
Posts: 1
Joined: 2-May 09
Member No.: 69455



Thanks for the plugin. I think it would be useful to add an option to ignore file format. For example, if the old playlist contains mp3 files but you have since replaced them with FLAC files, it would still update the playlist entries.
Go to the top of the page
+Quote Post
dr_astral
post May 2 2010, 01:28
Post #21





Group: Members
Posts: 4
Joined: 22-September 05
Member No.: 24626



Thanks for the irreplaceable plugin. I've many static playlists that have been built over the years and just about died when I changed the location of my music to accommodate a filesystem expansion and none of the files could be found or rediscovered by foobar natively. One part I find lacking, however, is preserving the original file's database info for the one in the new location. When I revive my playlists I lose the playcount (foo_playcount), last played date, and rating (foo_quicktag) for all mp3's. I understand that the decision to do this is by design, although it would be seamless if it could just include this info in the new entry. Oddly, I'm not seeing that with my flac files, although I'm having a different problem with those - when I go to update the rating for a revived flac I get an error saying that the tag in the file must be updated, yet there is no actual tag in the file and when I click yes to this it fails to make the change at all.

To give a brief overview of my setup - my music collection is effectively a library; when content is added to it, the files should never be changed or rewritten to. Each song/directory has an sfv and I'll periodically scan all sfv's in the library to verify its integrity. I've had data corruption in the past, and this has in turn lead to failed conversions and playbacks (mostly while using Traktor resulting in an application crash) when I least expect it. I have no need to sync a track's rating between Foobar2000 and Traktor or players (although the ability for Traktor to work with foobar's database would be seriously impressive). Suffice to say, I'm happy to use foobar's database to keep all the details, like the number of times played, the time it was last played, and what the rating is I've given it separate from the file's own tag, and this has worked well for me over the past 6 years, even after migrating from foobar 0.8.3 to 1.0.

Given that I'd like to keep my playlists updated with the new locations to my files when they change, and also retain the database tags I've given to them, can this ability be added to the componen? Here's what I'm looking for:
1) If item needs to be revived, copy all database attributes from the orginal file, locate the new file, then add the stored attributes to the new database entry.
2) Do the same thing for flac, cue, and mp3 files. Currently the new entry is clean for mp3 (and this is by design, I understand), but something is broken when reviving flac's, and/or flac's called from a cue.
Go to the top of the page
+Quote Post
GeSomeone
post Jul 30 2010, 19:55
Post #22





Group: Members
Posts: 921
Joined: 22-October 01
From: the Netherlands
Member No.: 335



QUOTE (dr_astral @ May 2 2010, 02:28) *
.. When I revive my playlists I lose the playcount (foo_playcount), last played date, and rating (foo_quicktag) for all mp3's.

With the Playcount v3.0 for foobar2000 1.1.0 (or up) this will no longer happen.


--------------------
In theory, there is no difference between theory and practice.
Go to the top of the page
+Quote Post
Miralys
post Sep 21 2010, 11:30
Post #23





Group: Members
Posts: 3
Joined: 13-September 10
Member No.: 83821



Thanks so much! Worked like a charm!
Go to the top of the page
+Quote Post
s33m33
post Oct 26 2010, 16:33
Post #24





Group: Members
Posts: 246
Joined: 4-January 07
Member No.: 39305



Any progress on title formatting features which 2E7AH suggested in post #3 ?
Go to the top of the page
+Quote Post
martin88
post Mar 12 2011, 23:42
Post #25





Group: Members
Posts: 2
Joined: 12-March 11
Member No.: 88953



Hello,
This is almost exactly what I need, but I am wondering if you can add one more function: to revive multiple playlists at once.

Thanks.
Go to the top of the page
+Quote Post

2 Pages V   1 2 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 23rd July 2014 - 00:40