Ankündigung

Einklappen
Keine Ankündigung bisher.

[mmh] iTunes

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Wie soll ich es erklären....

    iTunes verwaltet die mp3 Informationen selbständig. Es benötigt also keine weiteren Infos aus den mp3 Files selbst. Beim Importieren der mp3 Files wird die Datenbank mit entsprechenden Informationen gefüllt und lediglich ein Cover (wenn vorhanden) dem Album zugeordnet. Wenn die importierten Files dann schon über ein Cover verfügen sollte, welches sich iTunes auch aus den Files holen kann, wird lediglich das zuerst gefundene in die Datenbank übertragen. Dieses erste gefundene Cover gilt dann in der iTunes Anzeige für das gesamte Album, egal ob im ID Tag des Files ein anderes Cover eingetragen ist.

    Unser Webserver hingegen bezieht das Cover nicht aus der iTunes Art Library, also der Datenbank, sondern aus dem mp3 File direkt und stellt das Cover eben dar, wie dort abgelegt. Es ist ziemlich ausgeschlossen, dass der Webserver die Anzeige, wie von Dir beschrieben, verzerren kann...

    Du kannst das einfach prüfen, in dem Du Dir die Tags der Files anschaust. (im iTunes File markieren, rechter Mausklick, Informationen) dort kannst ggfl. auch das Cover tauschen.

    Wie kommt es nun zu diesen unterschiedlichen Covern in den Files....

    Dies ist zu 99% der Fälle Ursache aus mehrfach eingepflegten Alben, wobei später dann doppelte Titel entfernt wurden. Hierbei ist eben nicht sichergestellt, das Titel gleicher Quellen selektiert werden können. Album A hatte ein Cover guter Qualität und Album B eben ein Cover schlechter Qualität...

    Ich Pflege meine Files im Übrigen mit CoverScout von Equinux... das funzt perfekt und behebt auch derartige Fehler...

    LG

    Kommentar


      #17
      Wie soll ich es erklären....

      iTunes verwaltet die mp3 Informationen selbständig. Es benötigt also keine weiteren Infos aus den mp3 Files selbst. Beim Importieren der mp3 Files wird die Datenbank mit entsprechenden Informationen gefüllt und lediglich ein Cover (wenn vorhanden) dem Album zugeordnet. Wenn die importierten Files dann schon über ein Cover verfügen sollte, welches sich iTunes auch aus den Files holen kann, wird lediglich das zuerst gefundene in die Datenbank übertragen. Dieses erste gefundene Cover gilt dann in der iTunes Anzeige für das gesamte Album, egal ob im ID Tag des Files ein anderes Cover eingetragen ist.

      Unser Webserver hingegen bezieht das Cover nicht aus der iTunes Art Library, also der Datenbank, sondern aus dem mp3 File direkt und stellt das Cover eben dar, wie dort abgelegt. Es ist ziemlich ausgeschlossen, dass der Webserver die Anzeige, wie von Dir beschrieben, verzerren kann...

      Du kannst das einfach prüfen, in dem Du Dir die Tags der Files anschaust. (im iTunes File markieren, rechter Mausklick, Informationen) dort kannst ggfl. auch das Cover tauschen.

      Wie kommt es nun zu diesen unterschiedlichen Covern in den Files....

      Dies ist zu 99% der Fälle Ursache aus mehrfach eingepflegten Alben, wobei später dann doppelte Titel entfernt wurden. Hierbei ist eben nicht sichergestellt, das Titel gleicher Quellen selektiert werden können. Album A hatte ein Cover guter Qualität und Album B eben ein Cover schlechter Qualität...

      Ich Pflege meine Files im Übrigen mit CoverScout von Equinux... das funzt perfekt und behebt auch derartige Fehler...

      LG

      Kommentar


        #18
        Doppelte Antwort...

        Ok. Ich hab mir von equinux das CoverScout besorgt und die Mediathek
        neu "durchgezogen". Nun funzt es auch mit den "scharfen" Cover´s.
        Gruß Jörg.


        "Wir sind nicht die ersten, die dieses Feature einbauen, aber wir werden es am besten umsetzen."
        (Steve Jobs)

        Kommentar


          #19
          Titel weiterspulen

          erstmal hallo an alle mmh Freaks..

          wie kann man wenn man einen Musiktitel mit dem Befehl <ITUNES><FF></ITUNES> zum weiterspulen veranlasst den Titel an einer Stelle wieder weiterlaufen lassen??? Ich habs bis jetzt nur geschafft indem ich <ITUNES><PAUSE></ITUNES> und dann wieder <ITUNES><PLAY></ITUNES> ausgelöst habe..... da gibs sicher eine besser Möglichkeit.....

          LG Günther

          Kommentar


            #20
            Sorry Problem gelöst...
            den Befehl <ITUNES><RESUME></ITUNES> hab ich wohl übersehen... bzw die Beschreibung nur überflogen

            LG
            Günther

            Kommentar


              #21
              Hallo zusammen.
              Ist jemanden von euch aufgefallen dass wenn man eine Playlist mit eine Playlistname welcher Umlaute (ä, ö, ü) enthält löschen möchte dies nicht funktioniert. D.h. die Wiedergabeliste wird im ITunes nicht gelöscht.. Im Logging Monitor wird aber ein korrektes Rückmeldetelegramm gesendet. Beispiel: <ITunes><DELETEPLAYLIST=Günther2></ITunes> => wird vom PC gesendet

              <ITunes><DELETEPLAYLIST=|OK</ITunes> => wird vom MAC geantwortet

              Das gleiche Problem besteht wenn man eine Playlist erstellt, nur dass hier das Erstellen funktioniert aber die Umlaute nicht als Umlaute dargestellt werden, es wird z.B. für ein ä ein % Zeichen dargestellt.....

              LG Günther

              Kommentar


                #22
                Hallo Günther,

                warum heisst Du auch nicht Franz, oder Dieter....
                Nein, nicht aufgefallen... Kannst Du die Playlist mir Umlaut den Aufrufen ??

                Die Antwort "=|OK" kommt immer und besagt, dass der Befehl von der Applikation angenommen wurde bzw. korrekt von mmh abgesetzt wurde. Ob ausgeführt oder nicht sagt das OK leider nicht aus. Das liegt aber eben an der Applikation...

                LG

                Kommentar


                  #23
                  Hallo Mike....
                  Die Playlist kann problemlos gestarten werden..... Das ist kein Problem....
                  Ist halt nicht so schön... wenn eine Playlist erstellt wird und dann der Name nicht richtig angezeigt wird oder das löschen nocht funkt.....
                  Bin aber eh erst in der Testphase... Für ein Kundenprojekt reichts noch nicht... Vielleicht kannst du da etwas machen..........
                  Als Applikation meinst du Itunes... Oder????

                  LG
                  Günther

                  Kommentar


                    #24
                    Hallo Günther,

                    danke für Deinen Bug-Report. Das Problem mit den Umlauten wird mit Version 1.0.91 behoben sein.
                    Gruß

                    Sascha

                    Kommentar


                      #25
                      Hallo... Etwas habe ich noch nicht durchblickt....
                      Wie stelle ich im scripting client den Code zusammen dass ich das aktuell laufende Lied (Titel) zu einer bestimmten Playlist hinzufügen kann.
                      Mit dem Befehl ADDIDTOPLAYLIST ist mir klar... Wie bekomme ich sber die ID des aktuell laufenden Titel in die Eigenschaften des ADDIDTOPLAYLIST-Befehl.
                      Ich habe schon alles mögliche proviert.... da mach ich irgendwo einen Fehler....

                      LG
                      Günther

                      Kommentar


                        #26
                        Hallo Günther,

                        das geht z. Zt. nur indirekt, indem man aus dem Broadcast den Titel ausliest und sich dann mit SEARCHTITLE die ID holt. Allerdings muß ich gestehen, daß uns dieser Anwendungsfall bisher nicht untergekommen ist...
                        Gruß

                        Sascha

                        Kommentar


                          #27
                          Beispiel

                          Ich erkläre nun, wie man obigen Anwendungsfall mit Hilfe des Eventservers lösen kann.
                          mmh sendet ja grundsätzlich den aktuellen iTunes-Titel über den Broadcast:
                          <ITUNES>GETPLAYERSTATE=PLAYING|OK|GETTITLE=Prope r Education (Club Mix)|OK|GETSTREAMTITLE=|OK|GETARTIST=Eric Prydz Vs Floyd|OK|GETALBUM=Proper Education CDM|OK</ITUNES>
                          Teil 1:
                          Zu diesem Titel benötigt man die Titel-ID. Hierfür legt man im "events"-Unterordner eine .csv (z.B. getid.csv) an, die genau das erledigt:
                          [CONFIG];
                          TRIGGERIP;INTERNAL
                          TRIGGERPORT;BROADCAST
                          TRIGGERMODE;ASCII

                          [TRIGGERS];
                          |GETTITLE=\*|;<ITUNES><SEARCHTITLE=\#></ITUNES>
                          Was macht nun diese .csv für den Eventserver?
                          Sie wartet auf mmh-Events (TRIGGERIP;INTERNAL) über den Broadcast-Port (TRIGGERPORT;BROADCAST) und interpretiert alles als ASCII-Zeichen (TRIGGERMODE;ASCII).

                          Wenn auf diesem "Kanal" der String "|GETTITLE=" auftaucht, wird alles bis zur nächsten Pipe ( "\*|" ) als Argument gelesen und dem Befehl SEARCHTITLE übergeben.
                          Das Ganze ausgeschrieben: Auf ein Event im Stile von
                          |GETTITLE=Proper Education (Club Mix)|
                          führt der Eventserver also automatisch den Befehl
                          <ITUNES><SEARCHTITLE=Proper Education (Club Mix)></ITUNES>
                          aus.

                          Teil 2:
                          Der Befehl "SEARCHTITLE" liefert also die gesuchte ID zurück, die wir jetzt auswerten. Da wir faul sind, lassen wir das natürlich auch den Eventserver machen:
                          [CONFIG];
                          TRIGGERIP;INTERNAL
                          TRIGGERPORT;OUT
                          TRIGGERMODE;ASCII

                          [TRIGGERS];
                          SEARCHTITLE=\*|;<SYS><SETVAR=CURRENT_ID,\#></SYS>
                          Diese .csv (ich habe sie setcurrentid.csv genannt) liegt ebenfalls im events-Unterordner und wartet auf dem OUT-"Kanal" (TRIGGERPORT;OUT) von mmh (das ist der "Kanal", auf dem mmh die Antworten auf Kommandos sendet). OUT deshalb, weil die .csv aus Teil 1 ja eigenständig ein Kommando (nämlich das SEARCHTITLE) absetzt und wir uns für die Antwort auf diesen Befehl interessieren:
                          SEARCHTITLE=\*|
                          übernimmt die zurückgelieferte ID als Argument und führt folgenden Befehl aus:
                          <SYS><SETVAR=CURRENT_ID,\#></SYS>

                          Was hat eine Variable "CURRENT_ID" da zu suchen? Nun, natürlich möchte man nicht jeden Titel, den man gerade hört, zu seiner eigenen Playliste hinzufügen. Deshalb legt man mit dieser Sequenz einfach eine beliebige Variable an, in der die jeweils aktuelle ID vorgehalten wird, falls man sie benötigt.

                          Teil 1 und Teil 2 sorgen also dafür, daß die ID des aktuellen iTunes-Titels immer in der Variable "CURRENT_ID" vorgehalten wird.

                          Teil 3:
                          Jetzt ist das Hinzufügen des Titels ein Kinderspiel. Angenommen, meine zu füllende Playliste heisst "My Playlist".
                          Man sendet mmh von irgendwoher folgende Sequenz:
                          <ITUNES><ADDIDTOPLAYLIST=[CURRENT_ID],My Playlist></ITUNES>
                          Damit setzt mmh für das [CURRENT_ID] die zwischengespeicherte ID des aktuellen Titels ein und fügt ihn der Playliste "My Playlist" hinzu.

                          Es gibt z.Zt. nur eine Einschränkung: Es dürfen keine Titel mit identischem Namen in iTunes vorhanden sein, da der Befehl SEARCHTITLE sonst mehrere IDs zurückliefern würde, was wiederum nicht eindeutig wäre.
                          Wir prüfen jedoch gerade die Möglichkeit, die ID des aktuellen Titels direkt abzufragen, was natürlich den Aufwand erheblich reduzieren würde.

                          Trotzdem hoffe ich, daß dieses Beispiel eine Anregung ist, wie trickreich man sich verschiedenste Funktionen selbst zusammenbasteln kann.
                          Gruß

                          Sascha

                          Kommentar


                            #28
                            Anregung für einen Befehl....

                            Hallo Sascha...
                            Vielleicht noch eine Anregung für einen Befehl für die ITunes.
                            Es wäre doch schön wenn man in der Visualisierung eine Liste der Titel einer bestimmten Playlist anzeigen könnte und so auch die Titel auswählen könnte. Praktisch einen Befehl der mir alle Titel (Titelname) einer Playlist liefert...

                            LG
                            Günther

                            Kommentar


                              #29
                              Hallo Günther,

                              das ist an sich eine gute Idee allerdings hast Du mit diesem Verfahren dann ein Problem, wenn Du - wie oben schon angedeutet - mehrere Titel mit dem selben Namen in iTunes eingepflegt hast. Woher soll mmh wissen, welchen Titel iTunes abspielen soll, wenn nur der Titelname von der Visu gesendet wird?
                              Um eine eindeutige Zuordnung zu erhalten, ist leider zwingend die Titel-ID erforderlich. Die zur ID passenden Anzeigen wie Titel, Interpret usw. kann man ja über die GETID...-Befehle umsetzen.
                              Gruß

                              Sascha

                              Kommentar


                                #30
                                Hallo Sasha.
                                Den Befehl den ich meine um alle Titel einer Playlist in der Visu anzuzeigen wäre der wie GETALLPLAYLISTS halt nur zB. GETALLTITLEFROMPLAYLISTS.
                                Somit könnte man alle Titel der gewälten Playlist in der Visu anzeigen.
                                Um einen bestimmten Titel zu starten bräuchte man dann logisch die ID. Das wäre dann ein zweiter Schritt...
                                Und das wäre ja nicht das Problem. Beim markieren des Titels lässt man sich über GETIDTITLE die ID des Titels geben und bei Betätigung eines Button schickt man dann die erhaltene ID zum mmh. Das Problem mit gleichen Titel würde hier auch bestehen aber ich glaube das lässt sich so nicht vermeiden.......

                                Grüße
                                Günther

                                Kommentar

                                Lädt...
                                X