Spaces:
Sleeping
Sleeping
Commit ·
a218549
1
Parent(s): 1f10fcd
Fix: Final audio processing fixes and enhanced logging
Browse files- app/audio.py +2 -1
- inspect_b64.py +17 -0
- test.mp3 +0 -0
app/audio.py
CHANGED
|
@@ -77,16 +77,17 @@ def process_audio(input_data) -> torch.Tensor:
|
|
| 77 |
# 4. Convert to Numpy Array (float32)
|
| 78 |
# pydub audio is int16 or int32 generally, we want float32 [-1, 1]
|
| 79 |
samples = np.array(audio_segment.get_array_of_samples())
|
|
|
|
| 80 |
|
| 81 |
if audio_segment.sample_width == 2:
|
| 82 |
samples = samples.astype(np.float32) / 32768.0
|
| 83 |
elif audio_segment.sample_width == 4:
|
| 84 |
samples = samples.astype(np.float32) / 2147483648.0
|
| 85 |
else:
|
| 86 |
-
# Fallback for 8-bit?
|
| 87 |
samples = samples.astype(np.float32) / 128.0
|
| 88 |
|
| 89 |
# 5. Convert to Torch Tensor [1, T]
|
| 90 |
waveform = torch.tensor(samples).unsqueeze(0)
|
|
|
|
| 91 |
|
| 92 |
return waveform
|
|
|
|
| 77 |
# 4. Convert to Numpy Array (float32)
|
| 78 |
# pydub audio is int16 or int32 generally, we want float32 [-1, 1]
|
| 79 |
samples = np.array(audio_segment.get_array_of_samples())
|
| 80 |
+
print(f"DEBUG: Loaded samples array shape: {samples.shape}")
|
| 81 |
|
| 82 |
if audio_segment.sample_width == 2:
|
| 83 |
samples = samples.astype(np.float32) / 32768.0
|
| 84 |
elif audio_segment.sample_width == 4:
|
| 85 |
samples = samples.astype(np.float32) / 2147483648.0
|
| 86 |
else:
|
|
|
|
| 87 |
samples = samples.astype(np.float32) / 128.0
|
| 88 |
|
| 89 |
# 5. Convert to Torch Tensor [1, T]
|
| 90 |
waveform = torch.tensor(samples).unsqueeze(0)
|
| 91 |
+
print(f"DEBUG: Output waveform tensor shape: {waveform.shape}")
|
| 92 |
|
| 93 |
return waveform
|
inspect_b64.py
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import base64
|
| 2 |
+
import io
|
| 3 |
+
from pydub import AudioSegment
|
| 4 |
+
import os
|
| 5 |
+
|
| 6 |
+
b64_data = "SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU2LjM2LjEwMAAAAAAA//OEAAAAAAAAAAAAAAAAAAAAAABYaW5nAAAADwAAAAwAAACEALi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4AAAAATGF2ZjU2LjM2LjEwMAAAAAAAAAAAAAAAACQAAAAAAAAAAIQAg8f+77MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//MUZAAAAAAGSAAAAAAAAAMuK6oNoAAAAAAAABmR3QAgAAAAAAAADY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAY6uA4AAAAAAAAAZkd0AIAAAAAAAAAA=="
|
| 7 |
+
|
| 8 |
+
decoded = base64.b64decode(b64_data)
|
| 9 |
+
print(f"Decoded length: {len(decoded)}")
|
| 10 |
+
with open("test.mp3", "wb") as f:
|
| 11 |
+
f.write(decoded)
|
| 12 |
+
|
| 13 |
+
try:
|
| 14 |
+
audio = AudioSegment.from_file("test.mp3", format="mp3")
|
| 15 |
+
print("Success loading with pydub")
|
| 16 |
+
except Exception as e:
|
| 17 |
+
print(f"Failed loading with pydub: {e}")
|
test.mp3
ADDED
|
Binary file (1.98 kB). View file
|
|
|