Spaces:
Sleeping
Sleeping
import streamlit as st | |
import soundfile as sf | |
import numpy as np | |
import matplotlib.pyplot as plt | |
# Configuraci贸n de la p谩gina de Streamlit | |
st.title("An谩lisis de Se帽al de Audio") | |
# Carga del archivo de audio | |
audio_file = st.file_uploader("Cargar archivo de audio", type=["wav", "flac", "ogg", "mp3"]) | |
# Funci贸n para calcular la envolvente | |
def calculate_envelope(audio): | |
signal, sr = sf.read(audio) | |
abs_signal = np.abs(signal) | |
envelope = np.convolve(abs_signal, np.ones(100)/100, mode='same') # Suavizado con promedio m贸vil | |
return envelope | |
# Procesamiento y visualizaci贸n del resultado | |
if audio_file is not None: | |
if st.button("Calcular envolvente"): | |
envelope = calculate_envelope(audio_file) | |
# Visualizaci贸n de la envolvente | |
plt.plot(envelope) | |
plt.title("Envolvente de la se帽al de audio") | |
plt.xlabel("Tiempo (muestras)") | |
plt.ylabel("Amplitud") | |
st.pyplot(plt) | |