Spaces:
Running on Zero
Running on Zero
Download tests/test_reference_audio.py from fishaudio/Drama-3: direct link, hf CLI and curl.
- Browser
- Download file 1.3 kB
-
https://huggingface.co/spaces/fishaudio/Drama-3/resolve/main/tests/test_reference_audio.py
- Command line
-
hf download hf://spaces/fishaudio/Drama-3/tests/test_reference_audio.py
-
curl -L -o test_reference_audio.py https://huggingface.co/spaces/fishaudio/Drama-3/resolve/main/tests/test_reference_audio.py
1.3 kB
| """GPU reference encoding must preserve all PCM samples and edited transcripts.""" | |
| import base64 | |
| import io | |
| import numpy as np | |
| import soundfile as sf | |
| from test_gradio_ui import studio, body | |
| import server | |
| def test_clone_and_retake_compression_preserve_every_pcm_sample(studio): | |
| # Include both PCM extremes, plus very quiet samples used by whispered voices. | |
| samples = np.array([-32768, -3000, -1, 0, 1, 3000, 32767] * 500, dtype='<i2') | |
| wav = io.BytesIO() | |
| sf.write(wav, samples, 44100, format='WAV', subtype='PCM_16') | |
| voice = server.Voice('test', 'Test', wav.getvalue(), 'Original words.', len(samples) / 44100) | |
| choice = server.VoiceChoice('clone', voice=voice, transcript='Edited transcript.') | |
| take = server.Take('take', choice, 'Earlier line.', 'Earlier line.', [], samples.tobytes(), 44100) | |
| request = server.engine_request(choice, 'Next line.', [take], body(studio)) | |
| assert voice.wav == wav.getvalue() | |
| assert [r['text'] for r in request['references']] == ['Edited transcript.', 'Earlier line.'] | |
| for reference in request['references']: | |
| assert reference['media_type'] == 'audio/flac' | |
| decoded, rate = sf.read(io.BytesIO(base64.b64decode(reference['data'])), dtype='int16') | |
| assert rate == 44100 and np.array_equal(samples, decoded) | |