通过socket发送wav文件 [英] Send wav files through socket

查看:61
本文介绍了通过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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆