Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Checking if Embedded Artwork is present (Read 12711 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Checking if Embedded Artwork is present

Now that Foobar supports embedding art and removing embedded artwork, is there a way to check what files in the library have or don't have embedded artwork? Are there tag fields for artwork that can be used with PRESENT and MISSING in queries and filters?

Checking if Embedded Artwork is present

Reply #1
Lately, I too have been thinking of this issue of 'managing embedded artwork while using foobar2000'.

1) I don't have any solutions for the OP

2) It would be great to have fb2k syntax support for filtering files containing embedded artwork.

3) It would be super-great if the foobar2000 Properties page was extended with a little panel showing an icon of the embedded image if present.
If you use MP3Tag, you will see a little panel on the bottom of the left-side which does exactly that; allows you to view and edit the embedded image as if it is a 'visual' tag.

 

Checking if Embedded Artwork is present

Reply #2
and in mp3 tag, add a column with:
$if(%_covers%,Yes,No)

This will report whether you have embedded art in a file.
for cover type use:
%_cover_type%

for cover size use:
%_cover_size%



Checking if Embedded Artwork is present

Reply #3
...
3) It would be super-great if the foobar2000 Properties page was extended with a little panel showing an icon of the embedded image if present.
...

Support++

Checking if Embedded Artwork is present

Reply #4
and in mp3 tag, add a column with:
$if(%_covers%,Yes,No)

This will report whether you have embedded art in a file.
for cover type use:
%_cover_type%

for cover size use:
%_cover_size%


It would be great if Foobar added support for this kind of syntax, either natively or through a component. Can we add this as a feature request?

Checking if Embedded Artwork is present

Reply #5
If features for managing/editing embedded artwork in foobar2000 were implemented,
there would be more programming and design considerations than you may think...


I just did a "real" test action using MP3Tag:

      - Open MP3Tag
      - Drag root folder of my entire media library into MP3Tag ==> 7689 items, indexed in 70+ seconds
      - At right-side list view => Select all (CTRL+A)
      - At left-side tag view, we look at the "Embedded Cover" viewing panel.
 
        The panel refuses to show an image (which is correct, because we have selected multiple items) and shows a message: "Cover varies".
        However, In the right-side List View I have created a column to report "YES/NO" for embedded image presence (see previous post above).
        This column gives me immediate and fast feedback to the presence of an image in a very long list, because my eyes need to look for only two words... "YES" or "NO" ...down a vertical column.



So what is the essential thing about MP3Tag which makes it great for such tasks? The coupling of two views side-by-side!
One can imagine the left view as the foobar2000 Properties page. One can imagine the right-view as a foobar2000 playlist view.
MP3Tag couples these two things in real-time !!

So if I was to "imagine" using a future version of foobar2000 with an extended Properties page containing an "embedded cover tag viewing panel". . .

      - Open foobar2000
      - Drag root folder of my entire media library into foobar ==> 7689 items, indexed in 78+ seconds
      - At Playlist View => Select all (CTRL+A) => Open  Properties page (ALT+ENTER)
      - The "embedded cover tag viewing panel" refuses to show an image (which is correct, because we have selected multiple items) and shows a message: "«multiple values»"


So what is the next thing in this graphical interface of this "new" Properties page which will help me quickly manage the embedded artwork of 7689 items !?

The essential difference between the graphical interfaces of the "fb2k Properties page" and "MP3Tag" is ONE view versus TWO coupled views . . .

Hmmmm . . .

A THEORETICAL DESIGN:
      Drag-Drop entire media library into an fb2k playlist, select all and open the Properties window.
      In Properties main window, The "embedded cover tag viewing panel" is showing "«multiple values»" and we double-click on it
      and a second window flies open ... "Edit Value: Embedded Image" .
      Obviously this Tag Properties Edit page is different to all the other ones because it is dealing with an image.
 
      Therefore we may imagine a two-column view...
      The left-side column lists all our items, and is configurable by the user (i.e. right-click column header and choose a "Field name").
      The right-side column has a header named "Cover Present" and its lines will show us one of two words: "YES" or "NO" (and will sort YES/NO items if clicking on column header).
      Also add some mouse and keyboard functions for managing/editing selected items.
      Add some buttons for "frequently used tasks".

      And last but not least...
      MP3Tag is a respected piece of software and its syntax for embedded artwork is good and well thought out,
      instead of reinventing the wheel, maybe it would be a wise idea to "standardize" with it and incorporate the same syntax scheme.


I haven't pondered over it for too long, but the design seems pretty reasonable and logical?

Feel free to share your own thoughts and ideas.
 
***EDIT***     added the "sort by clicking on column header" idea by garym at next post.
 
 

Checking if Embedded Artwork is present

Reply #6
and I assume you noted that in mp3tag, one can sort on these columns (so you could end up with the "no" embedded art albums all sorted together.  There are view filters for such things in mp3tag as well.

Checking if Embedded Artwork is present

Reply #7
Many users want foobar to support this syntax but for various uses, so the mp3tag won't work for them.


I want the album artwork component to check if there is an artwork or not, if not then I want it to display a certain image instead of the default black one.





Checking if Embedded Artwork is present

Reply #8
1. Grab your library from foobar to mp3tag
2. Sort files by %_covers% column
3. select files with covers equal 0
4. (optional) perform "import cover from file" action, sort by covers again, select tracks that still don't have cover
5. grab tracks to foobar playlists window - you have playlist with files w/o cover 
6. (optional, if u use discogs tagger) perform "update album art" on those tracks
7. add missing covers

Checking if Embedded Artwork is present

Reply #9
My favorite option would be like the one adapted for ReplayGain, Peter may have his own reasons why he didn't make it the same. "Remove ReplayGain" shows greyed out if no ReplayGain tags are present in the file/s.

Re: Checking if Embedded Artwork is present

Reply #10
I want the album artwork component to check if there is an [embedded] artwork or not...
I absolutely second that, as this would be a very important feature to identify artless songs and i.e. create a NoCover Tag to work specifically on these files.

Re: Checking if Embedded Artwork is present

Reply #11
Serch with no albumart and with no embeddedd.
And create playlist.

Serch with no albumart v1.00 beta3 (foo_stnaa.dll)
http://ux.getuploader.com/foobar2000/download/169/foo_stnaa_v1.00_beta3.fb2k-component
Download: ”ダウンロード”button

Context menu > Serch tracks with no album art
SHURE SRH1840, SENNHEISER HD660S2, SENNHEISER HD 490 PRO, DT 1990 PRO, HIFIMAN ANANDA, HIFIMAN Arya, AKG K712 PRO, SONY MDR-1AM2, Bowers & Wilkins P7, FiiO FT5, Bose QuietComfort 45 (made a Upgrade/Balanced Cable by myself) Shall I write more?

Re: Checking if Embedded Artwork is present

Reply #12
Thank you very much, Air KEN !

Works very fine and helped to discover not wanted embedded album art.

Just 2 remarks:
  • The actual name is "Search tracks with no album art".
    But the plugin can also search for existing album art.
    What do you think about the name "Search tracks for album art"?
  • There are 16 searches in 4 blocks in the context menu.
    Each block has FRONT, BACK, ARTIST and DISC.
    What do you think about an additional search for each block:
    I think NOT ANY  would be fine for the 1st and 2nd block
    and ANY for the 3rd and 4th block.

Re: Checking if Embedded Artwork is present

Reply #13
Hi :)
Not My Release.
I hope the developer is watching.
SHURE SRH1840, SENNHEISER HD660S2, SENNHEISER HD 490 PRO, DT 1990 PRO, HIFIMAN ANANDA, HIFIMAN Arya, AKG K712 PRO, SONY MDR-1AM2, Bowers & Wilkins P7, FiiO FT5, Bose QuietComfort 45 (made a Upgrade/Balanced Cable by myself) Shall I write more?

Re: Checking if Embedded Artwork is present

Reply #14
Serch with no albumart v1.00 beta3 (foo_stnaa.dll)
This component works very good, thank you for the hint!

It creates playlists with criteria like "has front cover" or "has no front cover", etc.

Its a pity, that adyry's description does not work within fooobar2000, but only mp3tag.

Re: Checking if Embedded Artwork is present

Reply #15
Is there a way to check for the embedded icon with this component?
I'm late

Re: Checking if Embedded Artwork is present

Reply #16
You can check for icon type with this snippet for JScript Panel.

Code: [Select]
var search_current_playlist = true; // if false, entire library is searched. foobar may become unresponsive with large collections - be patient.
var type = 3; // types: 0 front, 1 back, 2 disc, 3 icon, 4 artist

///////////////////////////////////////////////////////////////////////////////////

var types = ["front", "back", "disc", "icon", "artist"];
var items = search_current_playlist ? plman.GetPlaylistItems(plman.ActivePlaylist) : fb.GetLibraryItems();
var found_items = plman.GetPlaylistItems(-1);
for (var i = 0; i < items.Count; i++) {
if (utils.GetAlbumArtEmbedded(items.Item(i).Rawpath, type))
found_items.Add(items.Item(i));
}
if (found_items.Count > 0) {
plman.CreatePlaylist(plman.PlaylistCount, "Tracks with embedded art: " + types[type]);
plman.ActivePlaylist = plman.PlaylistCount - 1;
plman.InsertPlaylistItems(plman.ActivePlaylist, 0, found_items);
} else {
fb.ShowPopupMessage("None found.");
}

Re: Checking if Embedded Artwork is present

Reply #17
Thanks again, indeed you're in a good mood today.
I'm late

Re: Checking if Embedded Artwork is present

Reply #18
y'all know that the syntax $if(%_covers%,Yes,No) is supported now? The only annoying thing is that it does not care about folder covers...
nevermind I was being dumb
and can't delete posts on here wtf?

Re: Checking if Embedded Artwork is present

Reply #19
Is there a chance to implement this function into fb2k ? Of course, I'm thinking of using a feature that will show the presence of embedded covers, something like:
Code: [Select]
$if(%_covers%,Yes,No)
Code: [Select]
%_cover_type%
Code: [Select]
%_cover_size%
I admit that it would be very useful to me  :)

Re: Checking if Embedded Artwork is present

Reply #20
Getting the $info(tagsize) and $info(coversize) would be great additions to add to columns.

As people may know. You might have no artwork embedded in a FLAC. But the padding i.e. the %_tag_size% will still be bloated with the old image size.
Would be good to see those in a column quickly.

Cheers devs.

Re: Checking if Embedded Artwork is present

Reply #21
Is there any update on that topic? I would also need the columns with artwork info in Foobar.
And, yes, MP3Tag is not working for me...