2015-11-05 4 views
0

Я отправляю blob с пользовательским микрофонным входом от углового до конечной точки django api. БЛОБ - это монофонический wav-файл 8000 Гц.Экспорт данных blob в файл в django

// Prepare data 
var data = new FormData(); 
data.append('section_item_id', id); 
data.append('blob', blob); 

вид апи:

def compare_audio(request): 
    print dict(request.data) 
    return Response({'status' : random.choice(['true', 'false'])}) 

Я могу видеть блоб отправляются с этой печатью. Для целей тестирования я хотел бы экспортировать blob, который я получаю в django, и сохранить его в файл на сервере. Как?

ответ

0

Из данных, которые можно создать с помощью WAV SciPy:

import numpy as np 
import scipy.io.wavfile 
import math 

file_name="another.wav" 
rate=8000 
data2 = np.asarray(request.data, dtype=np.int16) 

scipy.io.wavfile.write(file_name,rate,data2) 

Вы можете использовать mod_xsendfile для обслуживания файлов с Джанго просмотреть с помощью Apache, например:

response = HttpResponse(mimetype='audio/wav') 
response['Content-Disposition'] = 'attachment; filename=%s' % smart_str(file_name) 
response['Accept-Ranges'] = 'bytes' 
response['X-Sendfile'] = smart_str(path_to_file) 
return response 
Смежные вопросы