Schick , werde sie beilegen .
[NIKOLAUS?] mp3ng-0.0.10 - The next next generation
- Gurkendieb
- Geschlossen
-
-
könnt ihr sowas nicht zwischen zwei leuten klären? da kriegt man richt hunger
-
Ich geh auch kaputt...
-
Hier ist mal die erste Testversion vom neuen Coverdownload-Programm
Für die die es noch nicht wissen: Es ist in Java implementiert. Getestet ist es unter Java 1.4, mit neueren Versionen läufts natürlich auch.
Beispielaufruf unter Windows:
java -cp jdom.jar;coverdownload.jar;. cover.cover "u2" "the joshua tree" mycover.jpgErster Parameter ist der Artistname, zweiter ist der Albumname, dritter Parameter ist optional der Name unter dem das Cover gespeichert werden soll.
Probiert es mal aus, es sollte soweit funktionieren. Falls Änderungswünsche bestehen, schreibt sie einfach hier in den Thread. Ich hoffe die Aufrufparameter sind kompatibel mit denen von der damaligen Version, wenn nicht passe ich das dann an. Ich hab sie leider nicht mehr gefunden.
Gruß
JarnyPS: unter Linux müsste der Aufruf so aussehen:
java -cp jdom.jar:coverdownload.jar:. cover.cover "u2" "the joshua tree" mycover.jpgPSS: Die fehlende jdom.jar müsst ihr euch irgendwo im Netz suchen (zB: Hier ). Kann sie leider nicht hochladen wegen der Größe von ca. 150 kbyte. Einfach mal googeln nach der jdom.jar in der Version 1.0 oder höher. Meist bekommt man als Download ein viel größeres Archiv, von dem aber nur die Datei jdom.jar benötigt wird.
-
huhu,
bekomme diese Ausgabe, wenn ich den Befehl eingebe. Jdom müsste aber korrekt drauf sein.
Exception in thread "main" java.lang.NoClassDefFoundError: org/jdom/Element
Ciao
Benny -
funzt wunderbar.
vielen dank
tom -
hey netrookie,
wie haste das angestellt? Glaube ich hab das mit jdom nicht hinbekommen. Gib mir mal ein Tipp......ich brauch das unbedingt
Ciao
Benny -
Ich habe ein kleines Skript gebastelt, das aus dem aktivem VDR-Theme einen Theme für das music-plugin erstellen kann. Nach einem Eintrag in der musiccmds.dat kann das Skript aus dem Menü gestartet werden.
Mit dieser Version funktioniert das nur mit EnigmaNG. Das Skript ist aber so aufgebaut, das es leicht für die anderen Skins erweitert werden kann.EDIT: Version 0.2 gibt es da
-
Damit die Farben im Scrollmode nicht getauscht werden, benutze ich diesen Patch:
Diff
Alles anzeigendiff -ruN music-0.1.0_wip/mp3control.c music/mp3control.c --- music-0.1.0_wip/mp3control.c 2007-04-11 15:37:49.000000000 +0100 +++ music/mp3control.c 2007-04-11 14:58:12.000000000 +0100 @@ -1118,8 +1118,8 @@ if(scrollmode) { if(num==mode->Num) { - bg=clrListTextActiveFG; - fg=clrListTextActiveBG; + bg=clrListTextActiveBG; + fg=clrListTextActiveFG; hash=(hash^77) + 23; } }
-
Zitat
Original von vdrportaluser
huhu,bekomme diese Ausgabe, wenn ich den Befehl eingebe. Jdom müsste aber korrekt drauf sein.
Exception in thread "main" java.lang.NoClassDefFoundError: org/jdom/Element
Ciao
Benny
Was meinst du mit 'Jdom müsste aber korrekt drauf sein.'? Ist es drauf oder ist es nicht drauf? Bei einer normalen Java-Installation ist die jdom.jar (die ist für die Verarbeitung von XML-Documents nötig) nicht dabei. Die Fehlermeldung oben bekommst du wenn er die jdom.jar nicht findet.
Du kannst sie aber trotzdem mal auf deinem Rechner suchen und in den Java-Classpath aufnehmen oder der Einfachheit halber ins gleiche Verzeichnis wie die coverdownload.jar kopieren. Wenn nicht lade sie unter dem in meinem ersten Posting genannten Link runter und kopiere sie dann ins Verzeichnis.
Ich hätte die jdom-Bibliothek gerne mit beigepackt, dann war der Upload aber insgesamt zu groß um ihn hier ins Forum zu stellen.
Gruß
Jarny -
Zitat
Original von zulu
Damit die Farben im Scrollmode nicht getauscht werden, benutze ich diesen Patch:Diff
Alles anzeigendiff -ruN music-0.1.0_wip/mp3control.c music/mp3control.c --- music-0.1.0_wip/mp3control.c 2007-04-11 15:37:49.000000000 +0100 +++ music/mp3control.c 2007-04-11 14:58:12.000000000 +0100 @@ -1118,8 +1118,8 @@ if(scrollmode) { if(num==mode->Num) { - bg=clrListTextActiveFG; - fg=clrListTextActiveBG; + bg=clrListTextActiveBG; + fg=clrListTextActiveFG; hash=(hash^77) + 23; } }
Hmmm , kannst gleich die ganze if..else.. mit
ersetzen. Wie im Original halt. Auch wenn es imho eher nen Rueckschritt ist. -
Ich wusste das du das schreibst
Der Grund, warum ich es erstmal so gemacht habe ist, das ich damit nicht weiter komme:
Diff
Alles anzeigendiff -ruN music-0.1.0_wip/mp3control.c music/mp3control.c --- music-0.1.0_wip/mp3control.c +++ music/mp3control.c @@ -654,6 +654,8 @@ clrListTextFG = MP3Skin.clrListTextFG; clrListTextActiveFG = MP3Skin.clrListTextActiveFG; clrListTextActiveBG = MP3Skin.clrListTextActiveBG; + clrListTextScrollFG = MP3Skin.clrListTextScrollFG; + clrListTextScrollBG = MP3Skin.clrListTextScrollBG; clrListRating = MP3Skin.clrListRating; clrInfoBG1 = MP3Skin.clrInfoBG1; @@ -1118,8 +1120,8 @@ if(scrollmode) { if(num==mode->Num) { - bg=clrListTextActiveFG; - fg=clrListTextActiveBG; + bg=clrListTextScrollBG; + fg=clrListTextScrollFG; hash=(hash^77) + 23; } } diff -ruN music-0.1.0_wip/mp3control.h music/mp3control.h --- music-0.1.0_wip/mp3control.h +++ music/mp3control.h @@ -62,6 +62,8 @@ int clrListTextFG; int clrListTextActiveFG; int clrListTextActiveBG; + int clrListTextScrollFG; + int clrListTextScrollBG; int clrListRating; int clrInfoBG1; int clrInfoBG2; diff -ruN music-0.1.0_wip/skin.c music/skin.c --- music-0.1.0_wip/skin.c +++ music/skin.c @@ -53,6 +53,8 @@ clrListTextFG = 0xFFBABBC0; clrListTextActiveFG = 0xFFF2A00C; clrListTextActiveBG = 0xDF303F52; + clrListTextScrollFG = 0xFFF2A00C; + clrListTextScrollBG = 0xDF303F52; clrListRating = 0xFFCC0C0C; // INFO: 4 colors clrInfoBG1 = 0xEF2D435A; @@ -143,6 +145,8 @@ else if (strstr(line.c_str(),"clrListTextFG")) clrListTextFG = strtoul(Value.c_str(), NULL,16); else if (strstr(line.c_str(),"clrListTextActiveFG")) clrListTextActiveFG = strtoul(Value.c_str(), NULL,16); else if (strstr(line.c_str(),"clrListTextActiveBG")) clrListTextActiveBG = strtoul(Value.c_str(), NULL,16); + else if (strstr(line.c_str(),"clrListTextScrollFG")) clrListTextScrollFG = strtoul(Value.c_str(), NULL,16); + else if (strstr(line.c_str(),"clrListTextScrollBG")) clrListTextScrollBG = strtoul(Value.c_str(), NULL,16); else if (strstr(line.c_str(),"clrListRating")) clrListRating = strtoul(Value.c_str(), NULL,16); else if (strstr(line.c_str(),"clrInfoBG1")) clrInfoBG1 = strtoul(Value.c_str(), NULL,16); diff -ruN music-0.1.0_wip/skin.h music/skin.h --- music-0.1.0_wip/skin.h +++ music/skin.h @@ -45,6 +45,8 @@ int clrListTextFG; int clrListTextActiveFG; int clrListTextActiveBG; + int clrListTextScrollFG; + int clrListTextScrollBG; int clrListRating; int clrInfoBG1; int clrInfoBG2;
Wäre es möglich zB in der Progressbar eine Farbe einzusparen und diese für die Tracklist zuverwenden?
-
Zum Coverdownload.
Glueckwunsch , ist ja schon ne Steigerung von 99% gegenueber dem
alten Programm.
Damit es sinnvoll(er) eingesetzt werden kann stelle ich mir das so vor :Parameter "Verzeichnis" "Artist" "Songname/Album"
Dein Script laedt dann alles runter (hmm vielleicht mit Begrenzung)
im uebergebenen Verzeichnis.
Im Plugin kann es dann so aussehen:Befehle -> Cover besorgen ->
neues Submenu erscheint ala :---------------------------------------------------
Abfrage zuruecksetzten
Abfrage ausführen (oder OK, Blau)Artist: Madonna (editierbar)
Song/Album: Confession (editierbar)Zielverzeichnis: /mp3/Album/
---------------------------------------------------bei Ausführung , kommt dein Programm zum Einsatz
Ich check hinterher ob da was liegt und lass nen kleinenPicturebrowser drauf los, mit dem man mit Links/Rechts die
Ergebnisse durchlaeuft (siehe pic). Dann kann man entscheiden ob man
es als Cover/Artistname.jpg(im Trackverzeichnis)/Artistname.jpg(Artistdir)
speichern (mit Farbtasten) moechte oder mit Rot halt zurueck/Abbruch.Hat quasi den Vorteil , dass ich mit einem Menue fast alles abdecke,
wie bei der Suche halt und man ist nicht immer auf den aktiven
Track angewiesen durch editierbare Eingaben. -
Zitat
Wäre es möglich zB in der Progressbar eine Farbe einzusparen und diese für die Tracklist zuverwenden?
4 Farben fuer Trackliste (2bpp area) oder musst ne 4bpp draus machen,
was aber Overkill fuer ne ungemoddete Karte sein kann.mp3control.c
-
Zitat
Original von Morone
Zum Coverdownload.
Glueckwunsch , ist ja schon ne Steigerung von 99% gegenueber dem
alten Programm.
Damit es sinnvoll(er) eingesetzt werden kann stelle ich mir das so vor :Parameter "Verzeichnis" "Artist" "Songname/Album"
Dein Script laedt dann alles runter (hmm vielleicht mit Begrenzung)
im uebergebenen Verzeichnis.
Im Plugin kann es dann so aussehen:Befehle -> Cover besorgen ->
neues Submenu erscheint ala :---------------------------------------------------
Abfrage zuruecksetzten
Abfrage ausführen (oder OK, Blau)Artist: Madonna (editierbar)
Song/Album: Confession (editierbar)Zielverzeichnis: /mp3/Album/
---------------------------------------------------bei Ausführung , kommt dein Programm zum Einsatz
Ich check hinterher ob da was liegt und lass nen kleinenPicturebrowser drauf los, mit dem man mit Links/Rechts die
Ergebnisse durchlaeuft (siehe pic). Dann kann man entscheiden ob man
es als Cover/Artistname.jpg(im Trackverzeichnis)/Artistname.jpg(Artistdir)
speichern (mit Farbtasten) moechte oder mit Rot halt zurueck/Abbruch.Hat quasi den Vorteil , dass ich mit einem Menue fast alles abdecke,
wie bei der Suche halt und man ist nicht immer auf den aktiven
Track angewiesen durch editierbare Eingaben.
Ok, das kann ich so machen. Im Moment bewerte ich die Suchergebnisse von Amazon selbst und lade nur das Cover mit dem besten Match. Ich kann es so umbauen, dass er alle (bis zur einstellbaren Obergrenze) Cover runterläd. Wie soll er die Cover benennen? Einfach cover1.jpg, cover2.jpg, ... etc.? Oder gibst du als Parameter den reinen Dateinamen vor und ich hänge hinten die Nummer und '.jpg' dran?
Gruß
Jarny -
Zitat
Im Moment bewerte ich die Suchergebnisse von Amazon selbst und lade nur das Cover mit dem besten Match.
Genau deshalb (mal wieder das beruehmte Beispiel;)
Findet schon das richtige Album aber gespeichert wird das
"Falsche" (in dem Sinne)...Ich scanne das Verzeichnis nach suffix und erstelle daraus
ne (Play)liste (Endung ist egal ,
Hauptsache verschiedene Dateinamen :D).
Je einfacher umso weniger Komplikationen. Von mir aus cover1.jpg..cover5.jpgBtw. Geht das auch in Perl ??!!
-
Also wenn du das so bestaetigst , dann koennte ich schon bei Gelegenheit das so ein/umbauen.
Ich geh sonst auch kaputt..
-
@Morone,
gibts im mom ne Möglichkeit das Script mit music schon zu benutzen? ich habe die music_getcover.sh angepasst:ARTIST=$3
ALBUM=$4
ARTISTCOVER=$5
TMPDIR='/vdr/etc/plugins/music/downloads/music_cover/'
#
#
#
cd $TMPDIR
CMD="/opt/j2re1.4.2/bin/java -cp jdom.jar:coverdownload.jar:. cover.cover '$ARTIST' '$ALBUM' Cover.jpg"Leider hat das bei mir zur Folge, das bei Alben bestehend aus mehreren Wörtern z.B. "Confessions on The Dancefloor" das Wort Confessions zur Suche herangezogen wird und das Cover.jpg dann einfach nur on heißt.
gruß
tom -
Zitat
4 Farben fuer Trackliste (2bpp area) oder musst ne 4bpp draus machen,
was aber Overkill fuer ne ungemoddete Karte sein kann.Klappt leider nicht.
Hättest du Lust den zweiten Patch zu übernehmen?
Damit gäbe es zumindest ein bisschen mehr Spielraum und so könnte im Scrollmodus zB die Farbe für das Rating auch für den Text eingesetzt werden... -
Zitat
Original von Morone
Genau deshalb (mal wieder das beruehmte Beispiel;)
Findet schon das richtige Album aber gespeichert wird das
"Falsche" (in dem Sinne)...
Hmm, mein Programm entscheidet aber bei deinen eingegebenen Suchbegriffen "Madonna" "Confession" trotzdem absolut sinnvoll. Kurz:
1. Madonna - Confessions Tour
2. Madonna - Confessions on a dancefloorNr. 1 bekommt einen höheren Match weil dort nur ein Wort drinne ist (nämlich 'tour') was nicht richtig passt. Bei Nr. 2 sind drei Worte ('on' 'a' 'dancefloor') drinne die nicht passen, deshalb die leichte Abwertung.
Aber genau deshalb willst du ja den Coverbrowser machen. Der User soll letztendlich die 'richtige' Entscheidung treffen. Ich werde versuchen es heut abend noch ins Programm einzubauen. Um es zu benutzen muss man ja ab jetzt immer nur das coverdownload.jar austauschen.
Ich bin bei der Entwicklung davon ausgegangen, dass der User keinerlei Eingriffmöglichkeiten hat und habe deshalb eine automatische und relativ intelligente Ergebnisbewertung eingebaut und bei den Suchbegriffen automatisch Füllwörter und einige Sonderzeichen etc. entfernt. Die Cover werde ich in der neuen Version in der Rangfolge meiner Bewertungen abspeichern, so dass das mit dem besten Match zuerst angezeigt wird wenn du die Dateien sortiert nach Dateiname in deine Liste einliest.Zitat
Ich scanne das Verzeichnis nach suffix und erstelle daraus
ne (Play)liste (Endung ist egal ,
Hauptsache verschiedene Dateinamen :D).
Je einfacher umso weniger Komplikationen. Von mir aus cover1.jpg..cover5.jpgok
ZitatBtw. Geht das auch in Perl ??!!
Ja, klar! Nur kann ich das dann nicht proggen. Durch die Webservice-Schnittstelle von Amazon ist das aber gar nicht mal so aufwendig. Vielleicht findet sich ja jemand wenn du unbedingt drauf bestehst.
Gruß
Jarny
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!