Skip to content

Instantly share code, notes, and snippets.

@Sketchwhale
Created April 20, 2017 20:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Sketchwhale/9585d8efb1e9f60b5bdf508490be1b4b to your computer and use it in GitHub Desktop.
Save Sketchwhale/9585d8efb1e9f60b5bdf508490be1b4b to your computer and use it in GitHub Desktop.
import socket, pyaudio, sys, wave, signal
#reset something about signals in unix systems... or something
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
# variable initialization
host = socket.gethostname()
port = 12345
server_server = None
CHUNK = 1024
# socket stuff
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server_socket.bind((host, port))
server_socket.listen(5)
# audio
wf = wave.open(sys.argv[1], 'rb')
if len(sys.argv) < 2:
print("plays an mp3 file. \n\nUsage: %s filename.wave" % sys.argv[0])
#reset something about signals in unix systems... or something
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
print("I'm waiting to send data")
while True:
client, address = server_socket.accept()
while True:
try:
sent = client.send(wf.readframes(CHUNK))
except BrokenPipeError as bpe:
print(bpe)
sys.exit(-1)
if not sent: break
client.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment