01.10.2014, 18:32
Ich bin gerade dabei mir einen Pi zum Mediaplayer - vornehmlich für Internetstreams - zu bauen...
Dafür hab ich mir so einen Pi mit nem 2,8" Display gekauft.
Ich will zwecks ressourcen schonen aber nicht extra einen X aufsetzen und muss daher auf die SDL zurückgreifen. Von Python gabs ein Framework namens pygame. Das ist es dann letztendlich geworden.
Das Grundzeugs ist eigentlich schon Fertig.
Ich habe noch diverse Probleme. Unter <!-- m --><a class="postlink" href="http://test.shron.de/pi-radio.zip">http://test.shron.de/pi-radio.zip</a><!-- m --> kann man das Script für das UI runterladen.
Kann mal bitte ein Python-Dev schauen, wie ich hier:
Für euch zur Erklärung der gewünschten Funktionen: (und warum ich dafür ein neuen Bildschirm mit neuen Controls brauche)
Unter Einstellungen soll dann z.b. der Audioausgang definiert werden, um zwischen HDMI, externer Soundkarte und interner Soundkarte zu wechseln...
Außerdem soll dort ein Script ablaufen um mich in ein (unbekanntes) W-Lan einzuloggen und außerdem mir meine aktuelle IP anzuzeigen.
Unter Playlist soll zum einen ein "ls" auf das Verzeichnis passieren, wo die Playlisten abgespeichert sind. Wenn ich dann eine Playlist antippe, soll die aufgemacht werden und mir den Inhalt darstellen. Außerdem soll hinter jeder Zeile ein "x" (mit dem Bild remove10.png aus dem Archiv) zum entfernen eines Eintrages dargestellt werden, sowie unten in der playlist ein Textfeld mit einem + (key11.png) zum hinzufügen von Einträgen.
Mir würde es schon enorm helfen, wenn mir bei den Oben genannten 2 Punkten geholfen werden könnte. Wobei ich auch noch nicht so recht weiß(bzw. mir vorstellen kann, wie das Problem zu lösen ist), wie ich die einzelnen Einträge der Playlist abfangen kann, um die dann mit dem remove10 button zu entfernen... Also solang ich da nicht scroll, bekomm ich das wahrscheinlich hin, aber das ding muss ja auch scrollbar sein und dann wird es halt schwierig... Hachja...
Was auch noch extrem Cool wäre, wenn da mal einer ein Codereview machen könnte, hinsichtlich einer Optimierung. Z.B. das Wechseln des Play- und Stop-Buttons denke ich, habe ich suboptimal gelöst, da ich 2 mal die selbe Funktion benutze...
Dafür hab ich mir so einen Pi mit nem 2,8" Display gekauft.
Ich will zwecks ressourcen schonen aber nicht extra einen X aufsetzen und muss daher auf die SDL zurückgreifen. Von Python gabs ein Framework namens pygame. Das ist es dann letztendlich geworden.
Das Grundzeugs ist eigentlich schon Fertig.
Ich habe noch diverse Probleme. Unter <!-- m --><a class="postlink" href="http://test.shron.de/pi-radio.zip">http://test.shron.de/pi-radio.zip</a><!-- m --> kann man das Script für das UI runterladen.
Kann mal bitte ein Python-Dev schauen, wie ich hier:
- meinen Bildschirm periodisch(und Ressourcenschonend) update, sodass die richtige Uhrzeit da steht.
Mit refresh_menu_screen() wird dieser aktualisiert. Das passiert aktuell nur, wenn ich einen Event starte(z.B. lauter mach).
- ich hab da noch einen Button für Settings und einen um die Playlist anzupassen.
Wenn ich da rauf klicke sollte ein neuer Bildschirm mit neuen Controls erstellt werden. Ich habe aber keine Ahnung, wie ich das machen soll. Wenn ich dann aus dem jeweiligen Untermenü zurück geh, sollte ich wieder auf dem Mainscreen landen.
Für euch zur Erklärung der gewünschten Funktionen: (und warum ich dafür ein neuen Bildschirm mit neuen Controls brauche)
Unter Einstellungen soll dann z.b. der Audioausgang definiert werden, um zwischen HDMI, externer Soundkarte und interner Soundkarte zu wechseln...
Außerdem soll dort ein Script ablaufen um mich in ein (unbekanntes) W-Lan einzuloggen und außerdem mir meine aktuelle IP anzuzeigen.
Unter Playlist soll zum einen ein "ls" auf das Verzeichnis passieren, wo die Playlisten abgespeichert sind. Wenn ich dann eine Playlist antippe, soll die aufgemacht werden und mir den Inhalt darstellen. Außerdem soll hinter jeder Zeile ein "x" (mit dem Bild remove10.png aus dem Archiv) zum entfernen eines Eintrages dargestellt werden, sowie unten in der playlist ein Textfeld mit einem + (key11.png) zum hinzufügen von Einträgen.
Mir würde es schon enorm helfen, wenn mir bei den Oben genannten 2 Punkten geholfen werden könnte. Wobei ich auch noch nicht so recht weiß(bzw. mir vorstellen kann, wie das Problem zu lösen ist), wie ich die einzelnen Einträge der Playlist abfangen kann, um die dann mit dem remove10 button zu entfernen... Also solang ich da nicht scroll, bekomm ich das wahrscheinlich hin, aber das ding muss ja auch scrollbar sein und dann wird es halt schwierig... Hachja...

Was auch noch extrem Cool wäre, wenn da mal einer ein Codereview machen könnte, hinsichtlich einer Optimierung. Z.B. das Wechseln des Play- und Stop-Buttons denke ich, habe ich suboptimal gelöst, da ich 2 mal die selbe Funktion benutze...
Kellnerin:
Well, there's egg and bacon; egg sausage and bacon; bacon sausage and
spam; spam egg spam spam bacon and spam; spam sausage spam spam bacon
spam tomato and spamspam spam spam egg and
spam.
Mann: I don't like spam!
Well, there's egg and bacon; egg sausage and bacon; bacon sausage and
spam; spam egg spam spam bacon and spam; spam sausage spam spam bacon
spam tomato and spamspam spam spam egg and
spam.
Mann: I don't like spam!