ARTIST Cover, Wallpaper, Band Bilder in HD


#1

Hallo,

könnt ihr mir sagen, wie ich am besten automatische Downloads jeweils eines/zweier
HD-Artist Cover (kein Album !) für meine gesamte Musik-Sammlung bekomme ?

Ich habe schon einiges gesucht und gefunden, für MP3Tag ein Sourece-Plugin für Last-FM, das ist aber älter und bringt mit "BIG" ARTIST Wallpapers immer nur so 300*300 px.

Schön wäre das Ansteuern der Google-Bilder API, dort könnte dann genau die von mir benötigte Auflösung von 1280 * 720 px gleich als Suchkriterium mitgegeben werden.

Kann MP3Tag das ?
Ggfls wie ?

Viele Grüße und sorry, falls ich einen vorhandenen analogen Thread nicht gefunden hab '


Cover über Google
Erweiterung Webschnittstelle - Web Scripte
#2

Hier gibt es ein Web source script
[WS] Google Images Cover Search


#3

Super, vielen DANK ohrenkino :rolleyes:

Ich muss das nun Mal , wenn endlich Zeit ist, in Ruhe ausprobieren ....

OB man damit auch die Band-Bilder automatisch in die Musikordner ablegen kann ??


#4

Man kann damit nur nur ein Bild abspeichern. Den Dateinamen dafür kann man in den Mp3tag Einstellungen wählen: Extras > Optionen > Tag Quellen.
Man kann aber nur einen Dateinamen wählen. Die Datei wird auch immer im Ordner der Mp3 Dateien gespeichert.

Gedacht ist das Skript für das Album Cover. Deshalb wird standardmäßig %albumartist% und %album% als Suchbegriff verwendet. Das läßt sich im Skript aber leicht ändern.

Ob das gefundene Bild als Datei abgespeichert wird und/oder im ID-Tag gespeichert werden soll, läßt sich im Tag-Quellen Dialog Fenster links unter bei Klick auf den "Utilis" Button einstellen.
Dort gibt es auch die Möglichekeit "Cover extrahieren", mit der sich das Bild auch unter einem anderen Dateinamen als in den Einstellungen gewählt speichern läßt und auch in einem anderen Ordner als der in dem die Mp3 Dateien liegen.


#5

Wenn man einen Dateinamen zusammensetzen lässt aus Tag-Variablen wie %album%, %title% und %track% müssten auch mehrere Dateinamen möglich sein


#6

Leider nein. Variablen sind zwar möglich. Aber es werden immer die Werte der ersten Datei eines Albums genommen.
Wenn man aber Datei für Datei vorgeht, kann man so mit dem Skript verschiedene Dateinamen erzeugen.

Das bringt mich auf eine weitere Idee:

Man kann in den Einstellungen auch z.B. Folgendes eintragen:

$replace(%track%,1,cover,2,artist)

Dann könnte man mit dem ersten Stück immer das Cover abspeichern, mit dem zweiten immer ein Artist Bild. Vorausgesetz, die Stücke sind vorher schon nummeriert.
Es ist aber immer eine extra Ausführung des Skriptes notwendig. Mehrere Dateien auf einmal herunterzualden erlaubt der Aufbau der Web Sources in Mp3tag nicht.


#7

Wow, besten Dank für Deine direkte Anwort pone - vom Script Meister direkt :w00t:

Ein Bild der Band reicht schon Mal vollkommen aus.

Falls im MP3 file bereits ein eingebettetes Album Cover vorhanden liegt, würde das Script
die Band dann als nächstes freies/zweites Bild in die mp3 Datei einbetten ?
Geht auch nur die Erstellung als file ?

Die Datei im jeweiligen Ordner reicht aber vollkommen aus.

Noch cooler würde das script, falls wir für den seach bei google auch noch das jahr mitgeben könnten, dann hätten wir für unsere Banddarstellungen immer die chronologisch richtige Besetzung zum jeweiligen Albumsveröffentlichszeitpunkt, aber da kommt google pics wohl nicht mit <_<


#8

Ob eingebettet oder/und als extra Datei läßt sich wie gesagt bei Klick auf den "Utils" Button einstellen. Das bleibt dann für alle Web-Sources so gespeichert, bis du es wieder anders einstellst.
Nur als Datei geht natürlich. Einfach bei Utils die Haken entsprechend setzen.

Wenn schon ein Bild vorhanden ist, egal ob eingebettet oder als extra Datei, frägt Mp3tag nach, ob man das überschreiben will oder ein zusätzliches speichern will.

Du kannst das Skript relativ einfach so verändern, dass das Jahr mit zur Suche verwendet wird. Ob du so immer ein Bild mit der richtigen Bandbesetzung erhältst, ist natürlich fraglich. Ein großer Nachteil des Skriptes im Vergleich zur Google-Bildersuche im Browser ist, dass man nicht gleich eine Vorschau auf alle Bilder erhält. Man muss immer jedes Bilde einzeln anklicken um es zu sehen und dann wieder auf zurück gehen. Da müßtest du mit den gegeigneten Suchbegriffen ein bisschen rumexperimentieren um zu sehen, wie du die besten Ergebnisse erzielst.

Die Suchbegriffe werden im Skript mit der [SearchBy]=... Zeile definiert. Da steht jetzt:

[SearchBy]=$replace(%album%+$if2(%albumartist%,%artist%),&,+,#,+,?,+,=,+,%,+)

Wie du siehst, nach [SearchBy]=folgt einfach ein normaler Mp3tag Formatstring. $replace Funktion bitte so stehen lassen, die ist dafür da Zeichen zu ersetzen die in der URL Probleme machen. Das innere kannst du aber nach belieben ändern und anpassen, z.B.:

[SearchBy]=$replace(%year%+$if2(%albumartist%,%artist%),&,+,#,+,?,+,=,+,%,+)

oder auch mit zusätzlichen Begriffen, um ein Bandfoto zu erhalten:

[SearchBy]=$replace($if2(%albumartist%,%artist%) group members %year%,&,+,#,+,?,+,=,+,%,+)

Ausserdem würd ich in der [IndexUrl]=... Zeile die Zusätze löschen, die die Suche auf quadratische Bilder beschränkt. Das ist im Startbeitrag zu dem Google Sript von mir ganz gut beschrieben, was da was bedeutet.


#9

Heute morgen habe ich das Script so 3 Stunden ausprobiert.

Aber irgendwie raff ich das noch nicht :unsure: , hat
vielleicht gar nichts mit dem Script selbst zu tun, sondern mehr mit dem
Scripting bei MP3tag im Allgemeinen.

Also:
Habe das script im ... Mp3tag\data\sources Ordner abgeseichert und kann
es über MP3tag bei der Weltkugel ausführen.

Erweiterte Suche (erst Mal zur Einfachheit)
Danach bekomme ich immer erst ein Input Fenster "Suche in ...",
dort ist der %artist% korrekt voreingestellt mit "wallpaper" als Suchwort.
So weit so gut.

ABER:
Als Rückmeldung erhalte ich aber immer:
"Es wurde keinen Einträge zu ihrer Suchanfrage gefunden "

Was mache ich hier noch falsch, kann mir jemand bitte weiterhelfen ?

Hier das script / eigentlich habe ich nicht viel verändert ...:

this is google images cover search script v 1.6

created by pone in November 2010, last update April 2012

Mp3tag (v2.36 or higher) parsing for google.com/images

This file should be in your sources directory

On my Windows Vista it's:

C:\Users*username*\AppData\Roaming\Mp3tag\data\sources

S E A R C H

[Name]=Google Images Cover Search v 1.6
[BasedOn]=www.google.com/images
[IndexUrl]=http://www.google.com/images?q=%s
[WordSeperator]=+
[SearchBy]=$replace($if2(%albumartist%,%artist%) wallpaper ,&,+,#,+,?,+,=,+,%,+)

[ParserScriptIndex]=...

I N D E X

#debug "on" "C:\debug\debug.txt"

findLine "imgurl="

Replace "%3F" "?"
Replace "%3D" "="
Replace "%26" "&"
Replace "%25" "%"
Replace "%3B" ";"
replace "" ""
replace "
" ""

do
findinLine "imgurl="
sayUntil "&"
say "|"

findInLine "&amp;h="
sayUntil "&amp;w="
say " x "
findinline "&amp;w="
sayuntil "&amp;sz="
say "|"

findinline "&amp;sz="
sayuntil "&amp;"
say "|"

findinline "<br/>"
sayuntil "<br/>"
say "|"

findinLine "imgurl=" -1
findinline "&amp;"
FindInLine "/" -1
movechar 2
sayUntil "&amp;"
say "|"

findInLine "imgrefurl=http://"
if "www."
	movechar 4
endif
sayUntil "/"
say "|"

movechar 1
sayUntil "&amp;"
say "|"

saynewline
findinline "<a href=\"/imgres" 1 1

while "?imgurl" 100

[ParserScriptAlbum]=...

A L B U M

outputto "coverurl"
sayoutput "currenturl"


#10

Du hast wohl versehentlich die folgende Zeile gelöscht:

[IndexFormat]=%_url%|%imagesize%|%filesize%|%description%|%filename%|%website%|%page%|

Diese Zeile gehört zwischen die [WordSeperator] und die [SearchBy] Zeile.
Ansonsten müßte das passen wie du es verändert hast.


#11

Hoppla, ich habe mir gerade das orginale Source-Script nochmal gezogen und da kommt ein Ergebnis ... peinlich peinlich, da habe ich das Script schön "zer-bastelt" , ööhm :huh:

Also da ändere und teste ich noch etwas ...


#12

Vielen Dank für Deinen Hinweis, pone.

Zeitgleich mit Deiner Antwort ist mir meine peinliche Aktion gerade bewusst geworden ....


#13

So... jetzt läuft das Script.
Kurz vorweg: Das Werk ist schon Mal auf jeden Fall cool,
besten Dank für dieses Coding, pone.

Leider trifft es noch nicht so ganz meinen Einsatzzweck,
im englischen Teil wurde das bereits kurz diskutiert.

"..simply automation:
for each file
search for cover with google images cover search
choose first pic
save it "

Damals war die Info, dass MP3tag das nicht kann.

Das ist sehr schade und ich verstehe es noch nicht ganz.
Das Script soll nur einmal durchlaufen und den ersten Treffer nehmen.
Danach das gleiche mit der nächsten markierten Datei in MP3tag.
Könnte man das Script nicht irgendwie (wie die vorhandenen anderen) auch als Aktionstyp in eine separate, eigene Aktion einbinden und einen loop darüber legen ?

Quasi analog zu "Albumcover aus Datei importieren" ein "Albumcover aus Script importieren" ?


#14

Nein, da müßte Florian die Funktionsweise von Mp3tag verändern. Web Skripte lassen sich nicht als Aktion verwenden oder einbinden.
Und selbst wenn er es wie bei Export machen würde, wo man eine Pseudoaktion durchführen kann die dann ein Exportskript auslößt, müßte man für deine Verwendung ja immer noch die extra Einstellung haben, dass das Skript für jede Datei und nicht etwa für jeden Ordener einzeln durchgeführt werden soll.

Technisch könnte man das sicher einbauen. Ich hab den Eindruck dass Florian das aber igendwie nicht will, dass man mit Mp3tag automitisierte Skripte auf irgendwelche Webseiten loslassen kann. So was kann ja dann auch missbraucht werden, um Webseiten lahm zu legen und wird wahrscheinlich auf von vielen Seiten unterbunden.
Ist aber jetzt Spekualtion von meiner Seite. Du kannst das ja mal hier im Forum vorschlage, dass man das in Mp3tag einbauen könnte.

Was man machen aktuell am Skript ändern könnte, ist die erste Anzeige mit der Liste der Suchtreffer ("Ergebins der Suchanfrage...") überspringen und immer den ersten Treffer nehmen. Das "Anpassen der ermittelten Informationen" Fenster kann man aber nicht überspringen, dass musst du immer extra bestätigen.
Dazu müßtest du einfach zwei Zeilen aus dem Skript entfernen oder mit einem # am Zeilenanfang deaktivieren, und zwar folgende:

Zeile 38:
do

Zeile 78:
while "?imgurl" 100

Und wenn du der Dateinamen des Skriptes auf "&Google Images Cover Search 1.6.src" änderst, kannst du es mit der Tastenfolge Strg+Q und dann G aufrufen. Auch etwas schneller als mit der Maus. So hab ich das auch, das & Zeichen geht nur immer beim Hochladen ins Forum verloren.

Oder, wenn du mehrere Dateien nach dem selben Muster durchgehst, immer Strg + Shift + I drücken, das ruft einfach immer das zuletzt verwendete Web Script auf.


#15

Hhm, ach so, wirklich bedauerlich.

Dass es hier einen Unterschied macht, ob Scripting lokal oder webweit prozessiert wird,
war mir nicht klar. Danke für die Erklärung und auch Erläuterung dazu, pone.

Wenn man die Webschnittstelle von MP3tag erweitern würde, dann wäre MP3tag wohl ein noch viel mächtigeres Werkzeug für unsere Musiksammlungen, als es das heute schon ist.

Die vorgeschlagenen Script-Anpasungen werde ich hoffentlich heute noch ausprobieren, ich kann es gar nicht erwarten.Auch dafür vielen Dank,pone :rolleyes: :rolleyes:

Ob das mit den Webscripten sicherheitstechnisch wirklich so heikel ist, kann ich nicht einschätzen.
Aber eigentlich öffnen sich ja immer mehr Programme dem Web, auch für Entwicklungserweiterungen außerhalb des "eigenen" Kernel, daher sollte das schon vertretbar sein.

Eventuell könnte MP3tag ja auch nur den Webscript-Zugang auf eine definierte Liste mit APIs, die genau dafür zur Verfügung gestellt werden (zb Amazon, google pics API, etc) aufmachen.

Ein Vorschlag an Florian ist es m.M. auf jeden Fall wert !
Die Webscripte sind ein tolles Zukunftsfeld für MP3tag und werden künftig wohl immer mehr Parameter bieten ...

Sind eigentlich die Scripte für Last.FM ("big pictures") von Florian per default eingebaut gewesen ?
Ich weiß gar nicht, ob die von Anfang an da waren, oder das sukzessive dazu kam.


#16

Ist als neuer Vorschlag inzwischen eingekippt ..
Mal sehen - (Daumen drück :rolleyes: )


#17

Hallo pone, alle,

ist das script eigentlich auch für andere APIs geeignet ?

zb finde ich , gerade für Musik Band-Wallpaers in HD, auch das hier:

http://www.htbackdrops.com/v2/index.php?fi...raper_api/intro

ganz nett ... wobei google pictures wohl etwas mächtiger sein wird


#18

Wie meinst du das jetzt? Das google images script ist speziel für Google Images geschrieben. Es benutzt auch gar keine API, sonder liest die HTML Seite von Google.

Aber das Web Sources Modell von Mp3tag ist grundsätzlich offen für alle Seiten. Gut möglich dass man für die von dir verlinkte Seite ein Skript erstellen kann. Aber man muss immer für jede Seite ein extra Skript schreiben, das bei der Suche, bei der Auflistung der Ergebnisse und bei der Zuweisung zu den verschiedenen Tag Feldern auf die jeweilige Seite eingeht.


#19

Ah verstehe, Danke für Deine Erklärung , pone.

Es ist also so, als ob man in die URL oder das Suchfeld direkt eingeben würde.
Damit läßt sich nun viel Schönes machen :w00t:

Vielleicht wage ich mich auch Mal an http://www.htbackdrops.com/v2/index.php ran

Wirklich heftig, dass wir das Script dann aber für jede Datei/Ordner einzeln absetzen müssen,
eine mittelgroße Musiksammlung hat schon Mal schnell zig tausend oder mehr Lieder ...


#20

Genau, du schaust wie die URL auf der Seite aussieht wenn du etwas in die Suchbox eingibst. Der Suchbegriff muss Teil der URL nach der Suche sein. Bei den allermeisten Seiten ist das der Fall.
Dann dersetzt du den den Suchbegriff in der URL durch %s, dann hast du die [IndexURL] Zeile für das Skript. Diese Seite wird dann von Mp3tag aufgerufen.

Beim [ParserScriptIndex]=... musst du dann mit den speziellen Skript Kommandos eine regelmäßige Verarbeitung der Seite erarbeiten, mit der sich vor allem die URLs der verschiedenen Bilder auflisten lassen, und am besten noch möglichst viel Beschreibungen der Bilder, ja nachdem was die Seite bietet.

Im [ParserScriptAlbum]=... Part folgt dann die Verarbeitung der Zielseite. Bei den meisten Skripten ist das der Hauptteil, weil dort die verschiedenen Informationen den jeweiligen Tag Feldern und auch dein jeweiligen Dateien eines Albums zugeordnet werden. Bei einem Skript das nur nach Bildern sucht, fällt das relativ knapp und einfach aus.
Das ist auch der Grund, warum das Mptag Web Sources Gerüst für das Taggen von einzelnen Liedern nicht ganz optimal ist. Es ist eigentlich für die Verarbeitung eines ganzen und vollständigen Albums pro Skriptdurchlauf gedacht. Dabei ist es auch sehr effektiv. Für einzelne Lieder ist der Arbeitsaufwand relativ groß. Aber wenn du Artistbilder suchst, kannst du das doch wahrscheinlich auch immer für mehrere Lieder auf einmal machen. Du wirst ja von den meisten Artists nicht nur ein Lied haben.