Ich habe jetzt den Code noch einmal überarbeitet.
Wäre nett, wenn Ihr nochmal so Hilfsbereit sein könntet und von mir eventl. falsche/unschöne Sachen verbessert.
Der Code an sich funtzt.
Code: Alles auswählen
#!/usr/bin/env python
# coding: utf8
import socket
import pyglet
import os
import time
TCP_IP = '192.168.2.108'
TCP_PORT = 4000
BUFFER_SIZE = 1024
PATH = "/media/usb/"
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
def Play():
isPlaying = False
player = pyglet.media.Player()
while 1:
data = conn.recv(BUFFER_SIZE)
if not data: break
elif data == "Pause\r\n":
if isPlaying == True:
player.pause()
isPlaying = False
else:
player.play()
isPlaying = True
elif data[0] == "P" and data[1] == "l" and data[2] == "a" and data[3] == "y":
song = ""
i = 6
while i < len(data):
song += data[i]
i += 1
player.pause()
player = None
player = pyglet.media.Player()
song = song.split(".wav")
playSong = song[0]
playSong += ".wav"
player.queue(pyglet.media.load(PATH + playSong ,streaming=False))
player.play()
isPlaying = True
def searchSongs():
StickInhalt = os.listdir(PATH)
lieder = []
for lied in StickInhalt:
if lied != "System Volume Information" and lied[0] != ".":
lieder.insert(len(lieder),lied)
for lied in lieder:
conn.send(lied + "|")
Play()
def Connect():
s.bind((TCP_IP, TCP_PORT))
s.listen(1)
conn, addr = s.accept()
while True:
data = conn.recv(BUFFER_SIZE)
if not data: break
else:
print "Verbunden mit:",addr
return conn
conn = Connect()
searchSongs()
conn.close()