VAD-BTP / helper.py
Mridul
Adding the initial files
782d9c8
raw
history blame
No virus
1.57 kB
import streamlit as st
from pyaudio import paInt16, PyAudio
import wave
def record_Audio(filename, duration):
"""
A audio-recording helping function Using PyAudio
"""
if not filename:
raise ValueError("Filename not specified. Please provide a filename!")
CHUNK = 1024
FORMAT = paInt16
CHANNELS = 1
RATE = 16000
RECORD_TIME = duration
recording_state = st.session_state.get("recording_state", False)
recording_info_placeholder = st.empty()
if recording_state:
recording_info_placeholder.info("Recording... ")
with wave.open(filename, 'wb') as f:
p = PyAudio()
f.setnchannels(CHANNELS)
f.setsampwidth(p.get_sample_size(FORMAT))
f.setframerate(RATE)
stream = p.open(format=FORMAT,
channels=CHANNELS,
rate=RATE,
input=True)
if recording_state:
stop_button = st.button("Stop Recording")
for _ in range(0, RATE // CHUNK * RECORD_TIME):
f.writeframes(stream.read(CHUNK))
if stop_button:
break
recording_info_placeholder.success("Recording Completed\nThese are the results:")
st.session_state["recording_done"] = True
stream.close()
p.terminate()