feat: fixed direct recording to webservice

This commit is contained in:
2023-12-18 19:33:58 +01:00
parent d721eb3a5b
commit 85c89d5343
5 changed files with 548 additions and 860 deletions

View File

@ -3,6 +3,9 @@ import os
from typing import DefaultDict, Dict, List
from pydub import AudioSegment
import io
def tree() -> DefaultDict:
return defaultdict(tree)
@ -44,3 +47,15 @@ def defaultdict_to_dict(d: defaultdict) -> dict:
if isinstance(d, defaultdict):
d = {k: defaultdict_to_dict(v) for k, v in d.items()}
return d
def convert_to_mp3(audio_data: bytes, sample_width: int, frame_rate: int, channels: int) -> bytes:
audio = AudioSegment.from_raw(
io.BytesIO(audio_data),
sample_width=sample_width,
frame_rate=frame_rate,
channels=channels
)
mp3_buffer = io.BytesIO()
audio.export(mp3_buffer, format="mp3")
return mp3_buffer.getvalue()