[ANNOUNCE] Muggle 0.1.9

  • Hallo Freunde der Musik,


    es gibt mal wieder ein neues Release von Muggle, dem datenbank-basierten Musikplugin für den VDR. Änderungen gab es im wesentlichen bei der Darstellung von (Cover-)Images. Im einzelnen:


    • SQL-Schema angepasst für die Nutzung mit mySQL 5.0. Die Änderungen wurden mit Rolf, dem Autor von GiantDisc, abgesprochen so dass beide Projekte weiterhin kompatibel sein sollten.
    • Der Code, der Cover-Images sucht, wurde in eine eigene Klasse ausgelagert (mgImageProvider), um weitere Entwicklungen in dieser Richtung zu vereinfachen.
    • Der derzeitige Image-Provider stellt alle Images in den ID3v2-Tags eines Songs dar. Wenn es dort keine Images gibt, werden alle Images im Verzeichnis des Songs dargestellt. Gibt es auch dort keine Bilder, wird das Parent-Verzeichnis (sollte ich meiner ehemaligen Deutschlehrerin zuliebe Elternverzeichnis schreiben?) durchsucht und so weiter bis hin zum ToplevelDir. Wenn da auch nix is, wird auch nix angezeigt.
    • Die vorhandenen Bilder werden im Wechsel angezeigt. Das Intervall kann man im Setup einstellen.
    • Die Konvertierung der Bilder mittels image_convert.sh wird nun im Hintergrund durchgeführt. Die Musik sollte also sofort anfangen zu spielen, egal wie viele Bilder im Verzeichnis sind. Es werden natürlich immer nur die konvertierten Bilder angezeigt. Also nicht wundern, wenn manche Bilder erst später auftauchen -- die waren beim ersten Durchlauf halt noch nicht konvertiert.
    • Das neue Service-Interface (ab vdr-1.3.30) wird implementiert. Der Service "ReplayDirectoryImages" spielt anstatt der Cover-Images alle Bilder in dem übergebenen Verzeichnis ab (via Data-parameter, muss ein char* sein).
    • Ich habe dem Archiv einen Patch hinzugefügt, mit dem man das Image-Plugin so verändert, dass es bei laufendem Muggle die anzuzeigenden Bilder (Play/rot) an Muggle schickt, anstatt Muggle zu beenden. Damit kann man sich nun im Image-Plugin eine Diashow zur Musik aussuchen -- Urlaubsbilder zu meiner Lieblingsmusik, das hat mir am VDR immer schon gefehlt!
    • Der Fix für die inkrementelle Suche ist letztes Mal untergegangen. Nun sollte dieses feature aber wirklich funktionieren.
    • Setup-Optionen haben nun Erläuterungen (statt 0,1,2). ACHTUNG: der Background-Mode geht nun von 0 bis 2, nicht mehr bis 3. Wer beim Start einen Segfault sieht muss dies ggf. noch in der setup.conf anpassen.
    • Reichlich Fixes zu Bugs und Memory Leaks (Dank auch an Ville Skyttä)
    • Deutsche und Finnische Übersetzungen erweitert (ebenfalls Dank an Ville Skyttä)


    Ich hoffe, damit habt ihr erstmal genug neues zum rumprobieren... Den Download gibt es unter


    http://www.htpc-tech.de/download/vdr-muggle-0.1.9.tgz


    Lars

  • Hi,


    unter 1.3.34 und gerödel (siehe sig) einwandfrei übersetzt und rennt...


    Bilder werden angezeigt und gewechselt (nach eingestellter Zeit).


    Wenn ich ein Album per "sofort spielen" auswähle, wird nicht mit dem ersten Titel angefangen, sondern ein beliebieger ausgewählt.
    Erst wenn ich im Setup des Plugins den Zufallsmodus auf "an" stelle, wird mit dem ersten Titel angefangen. Scheint dort wohl vertauscht worden zu sein. Gleiches gilt für den Shuffle Modus.


    Sonst ist mir bis jetzt nix aufgefallen...


    Gruß,
    Marcus

    73 es 55 de dc5dm

    • TT DVB-S 1.3 & SkyStar 2, Ext Board v1.3, Intel DH77KC, Intel Celeron G555, 3x Hitachi HDS5C1010CLA382 (Raid5)
    • Debian "Jessie", e-Tobi VDR 2.2.0
    • listed VDR User No. 757

    Einmal editiert, zuletzt von marsipulami0815 ()

  • versuche gerade 0.1.9 für linvdr cody patch zu übersetzen ...


    im file mg_image_provider.c fehlte mir

    Code
    #include <unistd.h>

    weil R_OK nicht definiert war,
    und im mg_tools.c hatte ich folgendes ...


    meines erachtens fehlt hier eine definition von path ... ???

    Code
    long int pathconf (const char *filename, int parameter)
    Code
    path_max = pathconf (path, _PC_PATH_MAX);


    hab das ganze dann über den anderen ifdef zweig per

    Code
    #define PATH_MAX 4096

    umgangen


    compiled hat es mit den hier beschriebenen änderungen...der funktionstest steht noch aus :)

    VDR User: 1141
    VDR1
    ASROCK H67M, CORE i3-2100 3,10GHz,2GB Ram, 2TB HD,Intel SSD,CineS2 + S2 Addon
    EasyVDR 1.0
    Plugins: burn,devstatus,dvdswitch,epgsearch,externalplayer,extrecmenu,femon,live,markad,nordlichtsepg,streamdev-server,systeminfo,text2skin,yaepghd,s.

  • suuuuuuper !


    vielen dank für diese neue version von muggle. funktioniert auf abhieb bestens.


    mal ne frage an die autoren:
    wenn ich möchte, dass die cover bereits beim brwosen durch die musikbestände angezeigt werden, also quasi wenn der "cursor" auf einem album steht, an welcher stelle im code müsste ich da ansetzen ?
    ich stelle mir das in etwa so vor, dass ich in den ordner, auf dem der "cursor" steht reinschaue, ob da ein bild vorhanden ist, bzw. zuerst im ersten titel der darunterliegenden mp3s und das bild dann im hintergrund anzeige.


    auf diese weise könnte man durch die album sammlung quasi auch visuell browsen.


    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Auf meinem VDR-Server:

    Code
    # mugglei -h xeon -u muggle -p xxxx -n GiantDisc -t/vol/users/Musik2
    mgSetup::ProcessArgs   -h  xeon  -u  muggle  -p  xxxx  -n  GiantDisc  -t/vol/users/Musik2


    mehr tut sich da nicht :( Tabellen werden nicht angelegt.


    Die Datenbank "GiantDisc" hab ich mit phpmyadmin angelegt, den User eben so, ein "mysql_connect ("xeon", "muggle", "xxxx");" von einem entfernten Host in php klappt.
    Der User "muggle" hat alle Rechte fuer diese Datenbank.


    Auf dem VDR-Client ist der Musik Folder per Symlink angepasst, hier passiert dann

    Code
    pluto:/vol/users/Musik2# mugglei -h xeon -u muggle -p xp2911 -n GiantDisc -t/vol/users/Musik2
    mgSetup::ProcessArgs   -h  xeon  -u  muggle  -p  xp2911  -n  GiantDisc  -t/vol/users/Musik2
    you should be in /vol/users/Musik2/ or below


    Und... ich finds nicht so toll, dass bei vdr dann das Pass in der Prozessliste (ps ax) auftaucht, So kann es von jedem User gelesen werden.

    Server: Debian/lenny (vserver), vdr 1.6 (3 x Budget DVB-S), streamdev, epgseaach, noad, vdradmin, mysql, Bootserver
    Client 1: Ubuntu/lucid (diskless), XBMC-pvr, Asus AT3IONT (VDPAU)
    Client 2: Debian/squeeze (diskless), XBMC-pvr, Asus AT3IONT (VDPAU)
    Client 3: Debian/etch (diskelss), vdr 1.6, FF-DVB nur Ausgabe, VIA V8000
    Client 4: Debian/etch (diskless), vdr 1-6, DXR3, P1 200 Mhz

  • Code
    -c        --create        delete the entire data base and create a new one

    hab ich anfänglich auch vergessen und mich gewundert :)

    VDR User: 1141
    VDR1
    ASROCK H67M, CORE i3-2100 3,10GHz,2GB Ram, 2TB HD,Intel SSD,CineS2 + S2 Addon
    EasyVDR 1.0
    Plugins: burn,devstatus,dvdswitch,epgsearch,externalplayer,extrecmenu,femon,live,markad,nordlichtsepg,streamdev-server,systeminfo,text2skin,yaepghd,s.

  • des weitern solltest du wohl

    Code
    pluto:/vol/users/Musik2# mugglei -c -h xeon -u muggle -p xxxxx -n GiantDisc -t/vol/users/Musik2 .

    verwenden ....der "." am ende is wichtig ...

    VDR User: 1141
    VDR1
    ASROCK H67M, CORE i3-2100 3,10GHz,2GB Ram, 2TB HD,Intel SSD,CineS2 + S2 Addon
    EasyVDR 1.0
    Plugins: burn,devstatus,dvdswitch,epgsearch,externalplayer,extrecmenu,femon,live,markad,nordlichtsepg,streamdev-server,systeminfo,text2skin,yaepghd,s.

    Einmal editiert, zuletzt von ravenclaw_78 ()

  • uiui seit ihr schnell :) DANKE


    ok -c leuchtet ein und das mit . haette ich wohl nie gefunden.


    aber

    Code
    # mugglei -c -h xeon -u muggle -p xxxx -n GiantDisc -t/vol/users/Musik2 .
    mgSetup::ProcessArgs   -c  -h  xeon  -u  muggle  -p  xxxx  -n  GiantDisc  -t/vol/users/Musik2  .
    mgDbServer
    Using TCP for connecting to server xeon as user muggle.
    Dropping and recreating database GiantDisc
    SQL Error in DROP DATABASE IF EXISTS GiantDisc: 0/Access denied for user: '@xeon.local.net' to database 'GiantDisc'
    SQL Error in DROP DATABASE IF EXISTS GiantDisc: 0/Access denied for user: '@xeon.local.net' to database 'GiantDisc'
    ERROR in DROP DATABASE IF EXISTS GiantDisc:0/Access denied for user: '@xeon.local.net' to database 'GiantDisc'
    Cannot create database:Access denied for user: '@xeon.local.net' to database 'GiantDisc'
    Cannot create database:Access denied for user: '@xeon.local.net' to database 'GiantDisc'


    @xeon.local.net ?
    warum nicht muggle@xeon.local.net ?


    Mit User/Pass hab ich immer wieder Probleme bei mysql :(


    EDIT: mit mysqluser root geht es, also liegts wohl an meinen User/Pass... ist dann wohl mein Problem :/

    Server: Debian/lenny (vserver), vdr 1.6 (3 x Budget DVB-S), streamdev, epgseaach, noad, vdradmin, mysql, Bootserver
    Client 1: Ubuntu/lucid (diskless), XBMC-pvr, Asus AT3IONT (VDPAU)
    Client 2: Debian/squeeze (diskless), XBMC-pvr, Asus AT3IONT (VDPAU)
    Client 3: Debian/etch (diskelss), vdr 1.6, FF-DVB nur Ausgabe, VIA V8000
    Client 4: Debian/etch (diskless), vdr 1-6, DXR3, P1 200 Mhz

    Einmal editiert, zuletzt von devnix ()

  • Hallo,


    marsipulami0815: tatsächlich, die ja/nein-Optionen im Setup sind wohl sämtlich vertauscht...


    Die Vorschläge von ravenclaw078 sollten auf jeden Fall funktionieren. Pfade mit mehr als 4096 Zeichen wird man im praktischen Betrieb wohl selten sehen...


    duc: tjoa, das klingt spannend. Es gibt im Prinzip zwei Möglichkeiten: entweder Du stellst die covers im OSD dar (a la osdimage-plugin oder elchi-skin.plugin) oder im Hintergrund wie derzeit. Was hast Du vor?


    Lars

  • Lars:


    ich würde die bilder einfach so wie es jetzt auch ist im hintergrund darstellen. bei der darstellung übers osd treten zu viele herausforderungen auf - knapper osd speicher etc.


    aber ich habe jetzt ein ganz anderes problem mit muggle. gestern habe ich das neue muggle auf dem vdr meines bruders installiert und dabei sind ständig probleme beim datenbankzugriff aufgetreten. am ende war es dann soweit, dass beim versuch die datenbank zu synchronisieren, das komplette verzeichnis mit den mp3s weg war (hoffe, er hat ein backup davon).
    er hat wie ich einen mysql server auf der selben maschine laufen, der prozess läuft auch. ich habe die datenbank "GiantDisc" gelöscht, ein neues verzeichnis mit ein paar test mp3s angelegt und muggle gestartet. es kommt wie gewünscht die abfrage, ob die datenbank "GiantDisc" angelegt werden soll. hier das ergebnis im syslog:


    Code
    vdr[5304]: confirm: Datenbank GiantDisc anlegen?
     vdr[5304]: confirmed
     vdr[5304]: Dropping and recreating database GiantDisc
     vdr[5304]: Error in Muggle: SQL Error in CREATE DATABASE GiantDisc: 0/Can't create database 'GiantDisc'. (errno: 28)
     vdr[5304]: muggle: no translation found for 'SQL Error in CREATE DATABASE GiantDisc: 0/Can't create database 'GiantDisc'. (errno: 28)' in language 1 (Deutsch)
     vdr[5304]: info: SQL Error in CREATE DATABASE GiantDisc: 0/Can't create database 'GiantDisc'. (errno: 28)
     vdr[5304]: Warning: Cannot create database:Can't create database 'GiantDisc'. (errno: 28)


    der aufruf von muggle in der runvdr ist nach wie vor folgender:
    -P 'muggle -h localhost -u root -n GiantDisc -t /video0/mp3'


    es ist absicht, dass in mysql der user root kein passwort hat, der rechner hängt nicht am internet oder sonst einem netz und das ist auch nicht vorgesehen, daher ist das risiko vertretbar.


    ne idee, was da los ist ?


    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Hast Du mit HAVE_ONLY_SERVER gebaut? Welche mySQL-Version? Was steht im log von mysql? Mal mit der mySQL-Console von Hand probiert, eine Datenbank anzulegen?


    Mich würde sehr wundern, wenn die mp3's wirklich weg wären. In muggle wird nix gelöscht. Per default ist der Code, der im Image_Cache aufräumt ebenfalls auskommentiert.


    Das mit den Hintergrundbildern könnte ggf. so gehen: Du müsstest beim Wechsel in das Menü den Player starten (der ist zuständig für die Hintergrundbilder) und jeweils beim selektieren eines Menüeintrags die dazugehörigen Bilder an den Player schicken. Der müsste allerdings etwas abspielen, damit er auch Bilder anzeigt.


    Lars

  • klar hab ich mit HAVE_ONLY_SERVER=1 und HAVE_MYSQL=1 übersetzt.
    nachdem ich mal versucht habe von hand eine datenbank in der mysql konsole anzulegen, kam ich dem fehler schnell auf die spur:
    die systemplatte, bzw. die systempartition war voll gelaufen. das erklärt übrigens auch noch viele andere probleme.


    was ich mir allerdings leider immer noch nicht erklären kann, sind die verschwundenen mp3s. die sind einfach weg !
    bin mir fast sicher, dass muggle damit überhaupt nichts zu tun hat. aber das ich sie aus versehen gelöscht habe kann ich mir auch nicht vorstellen. da müsste ich schon sehr viel thc intus gehabt haben :)


    dann kann ich mich jetzt mal in ruhe an die bilderchen machen. der tip von dir war schon mal ein guter anfang.


    grüße
    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • die mp3s sind wieder aufgetaucht. sie waren in ein paralell liegendes verzeichnis verschoben worden. muss mir doch irgendwie ausversehen passiert sein.


    mir ist noch was aufgefallen. bei muggle 0.1.8 wurden die bilderchen auch auf dem graphtft angezeigt (graphtft plugin 0.0.8). das ist jetzt nicht mehr der fall. muss das noch extra aktiviert werden oder schlicht nicht mehr drin ?


    ich melde mich nächste woche nochmal per mail wegen der bilder, bin von morgen bis mittwoch verreist...


    grüße
    frank

    Board: ASUS AT5IONT-I, 4 GB Ram
    DVB Karte: Tevii S480
    40 GB ssd als boot/systemplatte (2,5" Wechelrahmen, um auf einer anderen Platte ein Testsystem zu installieren)
    3x2TB hdd für /media
    Medion X10 Fernbedienung
    yaVDR 0.5
    Samsung UE46D5700

  • Hallo,


    mir ist schon seit längerem aufgefallen, dass die Option "TV-Bild" für den Background-Mode nicht funktioniert. D.h. ich auch da immer nur ein schwarzes Bild habe.
    Ich habe mir deshalb mal den Code angeschaut und den Fehler auch gefunden.
    In vdr_player.c Zeile 240 muss es wie folgt heissen:

    Code
    mgPCMPlayer::mgPCMPlayer (mgSelection * plist)
      : cPlayer(the_setup.BackgrMode==2 ? pmAudioOnly:pmAudioOnlyBlack )

    dann klappt es auch mit dem LiveBild als Hintergrund. Schwarz funktioniert damit auch, nur Bilder konnte ich nicht testen.


    Vielleicht was für die nächste Version. ;)


    EDIT:


    der zweite Punkt, der mir bisher nicht gefiel, war die Ansicht "Now playing", die mit text2skin-Skins nicht richtig funktionierte. Dazu habe ich jetzt die folgenden Zeilen geändert (vdr_player.c ab 1430):


    eventuell auch was für die nächste Version.

    Gruss Björn.


    SilverGreen-Skin

    Einmal editiert, zuletzt von Björn ()

  • Hallo,


    ich bin dabei mein altes Musiksystem (Sammlung von eigenen Skripten) zu modernisieren und habe gerade muggle zum ersten mal ausprobiert. Sieht sehr interessant aus.
    Nach kleineren Schwierigkeiten ist jetzt alles übersetzt und läuft (mit sqlite).


    Die Bedienung aus vdr schien aber zunächst überhaupt nicht zu funktionieren.
    Nachdem ich herausgefunden habe dass das vermutlich an fehlenden mp3 tags liegt habe ich nochmals mit einer kleiner Test-Musiksammlung begonnen. Das sieht jetzt schon viel besser aus, auch wenn noch keine Bilder gehen.


    Kann es sein, dass es derzeit Probleme bei mp3s ohne tag gibt?
    Meine komplette Sammlung ist noch ohne mp3-Tags, da ich die vor vielen Jahren mit eigenen Skripten von meinen CDs geholt habe.
    Ich sehe dann einen im wesentlichen schwarzen Bildschirm. Mit dem Cursor kann man wandern, und auswählen, aber es wird immer das selbe Lied gespielt.
    (Tags updaten ist aber sowiso geplant.)


    Hier nun meine Hauptfrage (konnte bisher nichts ergoogeln):
    Ich möchte meine Skripte zur Fernbedienung und automatischen Musikauswahl möglichst weiterverwenden. Gibt es eine einfache Möglichkeit von einem (ruby) Skript aus mit muggle zu komunizieren?
    (z.B. über SVDRP o.ä)
    Am wichtigsten wären:
    - Lied an Playlist anfügen
    - Playlist löschen
    - Grundsteuerung (pause, Lied vor, Lied zurück)


    Gruß


    Michael

  • Hallo,
    habe jetzt auch mal diese Version getestet,
    nur mit den Bildern klappts leider noch nicht so recht :(
    (immer live-TV-Bild oder schwarzer Bildschirm)


    Es wird über image-convert.sh das Bild nach
    /tmp/image-0.jpg konvertiert.
    Das läßt sich auch mit Image-plugin darstellen.


    Wo hängt es jetzt noch? Kann das am Skin liegen? (verwende skinelchi)

    1.VDR mac mini 2009 4GBRam/ freevdr2.0a / TeVii S650 (oder TerraTec_Cinergy_S_USB oder TerraTec_S7>noch ohne HD/CI>) / Harmony 785
    2.VDR - Fanless: ATC620BX1/ AOpeni855GMEm-LFS/ CPU-M1,7GHz/ SST-NT01/ 512MB/ EFN-300/ 3*DVB-S-FFRev1.3/ avBoard/ IREinRev.4 / CF
    3.VDR - Fanless: Rebach-DT-HIFI-01/ ViaEpia5000/ 256MB/ DVB-S-FFRev1.5/ 120GBHD-SV1203N / GLCD/ IREinAus / opt. SPDIF
    4.VDR Samsung-SMT7020s

  • Benötigt Muggle für die Cover-Darstellung Schreibrechte
    im MPR-Verzeichnis oder nur in /tmp ?

    1.VDR mac mini 2009 4GBRam/ freevdr2.0a / TeVii S650 (oder TerraTec_Cinergy_S_USB oder TerraTec_S7>noch ohne HD/CI>) / Harmony 785
    2.VDR - Fanless: ATC620BX1/ AOpeni855GMEm-LFS/ CPU-M1,7GHz/ SST-NT01/ 512MB/ EFN-300/ 3*DVB-S-FFRev1.3/ avBoard/ IREinRev.4 / CF
    3.VDR - Fanless: Rebach-DT-HIFI-01/ ViaEpia5000/ 256MB/ DVB-S-FFRev1.5/ 120GBHD-SV1203N / GLCD/ IREinAus / opt. SPDIF
    4.VDR Samsung-SMT7020s

  • Hallo,


    Zitat

    Original von fastfoot
    Die Bedienung aus vdr schien aber zunächst überhaupt nicht zu funktionieren.
    Nachdem ich herausgefunden habe dass das vermutlich an fehlenden mp3 tags liegt habe ich nochmals mit einer kleiner Test-Musiksammlung begonnen. Das sieht jetzt schon viel besser aus, auch wenn noch keine Bilder gehen.


    Bilder gehen nur, wenn es welche gibt (s. README, zB in den tags ;-)) und Du das script image_convert.sh an eine Stelle gelegt hast, wo ausführbare Dateien gesucht werden.


    Zitat

    Original von fastfoot
    Kann es sein, dass es derzeit Probleme bei mp3s ohne tag gibt?
    Meine komplette Sammlung ist noch ohne mp3-Tags, da ich die vor vielen Jahren mit eigenen Skripten von meinen CDs geholt habe.
    Ich sehe dann einen im wesentlichen schwarzen Bildschirm. Mit dem Cursor kann man wandern, und auswählen, aber es wird immer das selbe Lied gespielt. (Tags updaten ist aber sowiso geplant.)


    Vorübergehend kannst Du via Befehlemenü eine Organisation nach Ordnern zusammenstellen. Die sollte auch ohne Tags funktionieren. Sonst bitte Meldung.


    Zitat

    Original von fastfoot
    Hier nun meine Hauptfrage (konnte bisher nichts ergoogeln):
    Ich möchte meine Skripte zur Fernbedienung und automatischen Musikauswahl möglichst weiterverwenden. Gibt es eine einfache Möglichkeit von einem (ruby) Skript aus mit muggle zu komunizieren?


    Das geht recht einfach, wenn Du einen Datenbank-Adapter für ruby oder python nimmst, um auf die Datenbank direkt zuzugreifen. Dann kannst Du Playlisten erstellen, Tags updaten, etc.


    Lars

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!