feat: fixed direct recording to webservice
This commit is contained in:
15
utils.py
15
utils.py
@ -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()
|
Reference in New Issue
Block a user