Spaces:
Sleeping
Sleeping
File size: 1,444 Bytes
d19e200 27541b9 896746e 0cfe2ed 27541b9 d19e200 0cfe2ed d19e200 896746e 27541b9 896746e 27541b9 896746e d19e200 896746e d19e200 0cfe2ed d19e200 0cfe2ed d19e200 0cfe2ed d19e200 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import sounddevice as sd
import soundfile as sf
import whisper
from gtts import gTTS
import os
# Load the Whisper model
model = whisper.load_model("base") # You can use other versions like "small", "medium", or "large"
# Function to record audio using sounddevice and save it as a .wav file
def record_audio(filename, sec=5, sr=44100):
print("Recording...")
# Record the audio from the microphone (mono channel)
audio_data = sd.rec(int(sec * sr), samplerate=sr, channels=1, dtype='int16')
sd.wait() # Wait until recording is done
# Save the audio data to a file using soundfile
sf.write(filename, audio_data, sr)
print(f"Audio saved as {filename}")
# Function to transcribe audio using Whisper
def transcribe_audio(filename):
print("Transcribing audio...")
result = model.transcribe(filename)
text = result['text']
print(f"Transcription: {text}")
return {"text": text}
# Function to save text as an audio file using gTTS (Google Text-to-Speech)
def save_text_as_audio(text, audio_filename):
print("Converting text to speech...")
tts = gTTS(text=text, lang='en', slow=False)
tts.save(audio_filename)
print(f"Audio saved as {audio_filename}")
# Function to play audio using the system's default audio player
def play_audio(filename):
print("Playing audio...")
os.system(f"start {filename}") # For Windows; for Linux/macOS, use `os.system(f"mpg321 {filename}")`
|