通过socket发送wav文件 [英] Send wav files through socket
本文介绍了通过socket发送wav文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试通过套接字发送 wav 文件.
I am trying to send a wav file through a socket.
我收到错误:
TypeError: must be string or buffer, not instance
<小时>
waveFile = wave.open(WAVE_OUTPUT_FILENAME, 'rb')
my_socket.sendall(waveFile)
推荐答案
wave
不给你一般的文件 I/O.用于获取媒体属性.
The wave
doesn't give you general file I/O. It is used for getting media properties.
您可以只使用正常的打开/关闭、读/写.
You could use just normal open/close, read/write.
sender.py:
import socket
(HOST,PORT)=('localhost',19123)
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM); s.connect((HOST,PORT))
with open('input', 'rb') as f:
for l in f: s.sendall(l)
s.close()
receiver.py:
import socket
(HOST,PORT) = ('localhost',19123)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT)); s.listen(1); conn, addr = s.accept()
with open('output','wb') as f:
while True:
l = conn.recv(1024)
if not l: break
f.write(l)
s.close()
这篇关于通过socket发送wav文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文