def get_audio(filename):
with open(filename, 'r', encoding='ansi') as audio:
content = audio.read()
return content
...
content = get_audio(filename=yandex_audio_name)
response_for_client = f'HTTP/1.1\r\nContent-Type: audio/mpeg\r\nContent-Disposition: ' \
f'attachment; filename="1.wav"\r\nTransfer-Encoding: chunked;'\
f'charset=ansi\r\n\r\n{content}'.encode('ansi')
...
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server_socket.bind((MY_LOCAL_IP, 5000))
server_socket.listen()
while True:
client_socket, client_addr = server_socket.accept()
request = client_socket.recv(1024)
response_for_client = response(request)
if response_for_client:
client_socket.sendall(response_for_client)
client_socket.close()
- есть такой код, запускаю сервер, отправляю запрос на сервер через браузер, получаю файл, НО при воспроизведении он он иногда шипит, пищит. Открываю через notepad++ файл который передавал с сервера и который получил , содержимое одинаковое, кодировка тоже, но 5 байт где то теряются в скачанном файле, но не могу найти в каком месте. Сравниваю их через WinMerge - говорит о том что файлы идентичны. Битрейт передаваемого файла 48000 гц. Не могу понять в чем дело, то ли в кодировках то ли нужно указывать явно битрейт в заголовках. Подскажите, где может быть подвох?