Spaces:
Sleeping
Sleeping
| import base64 | |
| import io | |
| from pydub import AudioSegment | |
| import tempfile | |
| import os | |
| def decode_base64_audio(base64_string: str) -> io.BytesIO: | |
| """Decodes a base64 string into a bytes buffer.""" | |
| audio_data = base64.b64decode(base64_string) | |
| return io.BytesIO(audio_data) | |
| def convert_mp3_to_wav(mp3_buffer: io.BytesIO) -> io.BytesIO: | |
| """Converts MP3 audio buffer to WAV format for processing.""" | |
| try: | |
| audio = AudioSegment.from_mp3(mp3_buffer) | |
| wav_buffer = io.BytesIO() | |
| audio.export(wav_buffer, format="wav") | |
| wav_buffer.seek(0) | |
| return wav_buffer | |
| except Exception as e: | |
| # Fallback: return the buffer as-is, librosa can handle MP3 | |
| mp3_buffer.seek(0) | |
| return mp3_buffer | |