| 函数签名[source] | |
|---|---|
st.audio(data, format="audio/wav", start_time=0, *, sample_rate=None, end_time=None, loop=False, autoplay=False) | |
| 参数 | |
data (str, Path, bytes, BytesIO, numpy.ndarray, 或 file) | 要播放的音频。这可以是以下之一:
如果data是NumPy数组,它必须是一个波形的一维数组或形状为(C, S)的二维数组,其中C是通道数,S是样本数。请参阅默认通道顺序在 http://msdn.microsoft.com/en-us/library/windows/hardware/dn653308(v=vs.85).aspx |
format (str) | 音频文件的MIME类型。默认为"audio/wav"。 更多信息,请参见https://tools.ietf.org/html/rfc4281。 |
start_time (int, float, timedelta, str, or None) | 元素应该开始播放的时间。这可以是以下之一:
|
sample_rate (int or None) | 音频数据的采样率,单位为每秒样本数。仅当data为NumPy数组时需要。 |
end_time (int, float, timedelta, str, 或 None) | 元素应停止播放的时间。这可以是以下之一:
|
loop (bool) | 音频是否应循环播放。 |
autoplay (bool) | 音频文件是否应自动开始播放。默认情况下为 False。如果用户未通过点击页面上的某个位置与页面进行交互,浏览器将不会自动播放音频文件。 |
示例
要显示本地文件的音频播放器,请指定文件的字符串路径和格式。
import streamlit as st st.audio("cat-purr.mp3", format="audio/mpeg", loop=True)你也可以将bytes或numpy.ndarray对象传递给st.audio。
import streamlit as st import numpy as np audio_file = open("myaudio.ogg", "rb") audio_bytes = audio_file.read() st.audio(audio_bytes, format="audio/ogg") sample_rate = 44100 # 44100 samples per second seconds = 2 # Note duration of 2 seconds frequency_la = 440 # Our played note will be 440 Hz # Generate array with seconds*sample_rate steps, ranging between 0 and seconds t = np.linspace(0, seconds, seconds * sample_rate, False) # Generate a 440 Hz sine wave note_la = np.sin(frequency_la * t * 2 * np.pi) st.audio(note_la, sample_rate=sample_rate)
还有问题吗?
我们的 论坛 充满了有用的信息和Streamlit专家。