-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathArtworkUnify.js
More file actions
66 lines (61 loc) · 1.5 KB
/
Copy pathArtworkUnify.js
File metadata and controls
66 lines (61 loc) · 1.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/**
* This Program goes through all the selected tracks, saves the album art, and links the songs with no artwork to the saved artwork for that album.
* Improved on version from Brian Anders
*/
var extensions;
var NAME = "Folder";
var t;
var ITTrackKindFile = 1;
var AlbumArt = new Array();
var extensions = new Array(4);
imageExtensions[1] = 'jpg';
imageExtensions[2] = 'png';
imageExtensions[3] = 'bmp';
var tracks = WScript.CreateObject("iTunes.Application").LibrarySource.Playlists.ItemByName("Music");
for (t = 1; t <= tracks.Count; t++)
{
try
{
var currTrack = tracks.item(t);
if ( ( currTrack.Kind == ITTrackKindFile ) &&
( currTrack.KindAsString.indexof("audio file" ) != -1 ) )
{
var artworks = currTrack.Artwork;
if (artworks.Count > 0)
{
var artwork = artworks.item(1);
var format = artwork.Format;
if (format != 0)
{
var location = currTrack.location;
var file = location.substring(0, location.lastIndexOf('\\') + 1) + NAME + '.' + extensions[format];
AlbumArt[currTrack.Album] = file;
artwork.SaveArtworkToFile(file);
}
}
}
}
catch (exception)
{
WScript.echo("Problem with " + currTrack.Name);
}
}
WScript.Echo("Starting");
for (t = 1; t <= tracks.Count; t++)
{
try
{
var currTrack = tracks.Item(t);
if(currTrack != null)
{
if(AlbumArt[currTrack.Album] != null && currTrack.Artwork.Count == 0)
{
currTrack.AddArtworkFromFile(AlbumArt[currTrack.Album]);
}
}
}
catch(exception)
{
}
}
WScript.Echo("Done");