Streamlit(十三)- API 参考文档(六)- 媒体展示组件

文章目录


一、st.audio:音频播放器

用于在页面渲染音频播放控件,支持本地文件、网络URL、字节流、NumPy音频波形数组。

1.1 核心参数

参数 说明
data 音频源:本地路径/在线URL/二进制字节/Numpy波形数组
format 音频MIME格式,默认audio/wav,MP3填audio/mpeg
start_time/end_time 播放起始/结束时间,支持数字秒、timedelta、时间字符串
sample_rate 仅Numpy数组音频必填,采样率
loop 是否循环播放,布尔值
autoplay 是否自动播放,浏览器限制无交互时无法自动播放

1.2 示例代码

python 复制代码
import streamlit as st
# 本地MP3循环播放
st.audio("cat-purr.mp3", format="audio/mpeg", loop=True)

# Numpy生成正弦波音频
import numpy as np
sample_rate = 44100
seconds = 2
t = np.linspace(0, seconds, seconds * sample_rate, False)
note = np.sin(440 * t * 2 * np.pi)
st.audio(note, sample_rate=sample_rate)

二、st.image:图片展示器

渲染单张或多张图片,支持图片文件、URL、字节、Numpy数组、SVG文本。

2.1 核心参数

参数 说明
image 图片源:路径/URL/二进制/PIL数组/SVG字符串,支持列表批量展示
caption 图片底部说明文字,多张图传入文字列表
width 图片固定宽度像素
use_container_width 图片宽度铺满父容器
clamp 限制像素值0-255,仅Numpy数组生效
channels 数组图片通道格式,RGB默认,OpenCV图片填BGR
output_format 图片传输格式:auto/JPEG/PNG

2.2 示例代码

python 复制代码
import streamlit as st
# 基础图片+图注
st.image("sunrise.jpg", caption="Sunrise by the mountains")
# 铺满容器宽度
st.image("demo.png", use_container_width=True)

三、st.logo:侧边栏Logo组件

在App左上角与侧边栏顶部渲染品牌Logo,侧边栏收起时可切换小图标。

3.1 核心参数

参数 说明
image 侧边栏展开时显示的横版Logo(支持所有st.image图片格式,不可传列表)
size Logo尺寸:small(20px)/medium(24px 默认)/large(32px)
link 点击Logo跳转的外部链接,需http/https开头
icon_image 侧边栏收起时显示的方形小图标,不传则始终显示image

3.2 示例代码

python 复制代码
import streamlit as st
# 侧边栏大图、收起后小图标,附带跳转链接
st.logo(
    "images/horizontal_logo.png",
    link="https://streamlit.io/gallery",
    icon_image="images/icon_logo.png"
)

四、st.pdf:PDF预览组件

内嵌PDF阅读器,直接展示PDF文件,支持本地文件、URL、字节流。

4.1 核心参数

  • data:PDF文件路径/在线链接/二进制字节
  • width/height:预览窗口宽高像素
  • use_container_width:预览宽度铺满容器

4.2 示例代码

python 复制代码
import streamlit as st
st.pdf("report.pdf", height=800)

五、st.video:视频播放器

渲染视频播放控件,支持本地视频、在线URL(含YouTube)、字节流,内置字幕功能。

5.1 核心参数

参数 说明
data 视频源:本地文件/在线URL/二进制字节/Numpy视频数组
format 视频MIME格式,默认video/mp4
start_time/end_time 播放起止时间,数字秒、时间字符串、timedelta
subtitles 字幕文件:VTT/SRT文件路径、字节、字典(多语言字幕)
loop 循环播放
autoplay 自动播放,需搭配muted=True绕过浏览器限制
muted 默认静音播放

5.2 示例代码

python 复制代码
import streamlit as st
# 本地视频+外置VTT字幕
st.video("demo.mp4", subtitles="subtitles.vtt", loop=True)
# 静音自动播放
st.video("bg.mp4", autoplay=True, muted=True)
相关推荐
小野猪都有白菜拱5 分钟前
Proxmox VE 上搭建 Vulhub 靶场:Ubuntu + Docker
web
超级架构师20 分钟前
让 Fortran 模型自己调用 Agent:原生 Fortran 2008 实现深度剖析
人工智能·python·架构·机器人·开源·fortran
小蒜学长24 分钟前
基于Django+Vue喵汪联盟宠物领养系统的设计与实现(代码+数据库+LW)
后端·python·django·宠物领养系统·流程规范化
云边有个稻草人33 分钟前
Prometheus Pushgateway教程:离线任务指标上报、Shell与Python示例、远程访问
开发语言·python·prometheus
fanruitian1 小时前
pycharm 使用anaconda
ide·python·pycharm
Dwzun1 小时前
基于SpringBoot3+Vue3的油莎豆种植管理系统
java·前端·vue.js·spring boot·后端·python·计算机网络
代码山河9 小时前
Python就业方向全解析:后端、爬虫、数据分析、AI你选哪个?
python·学习·架构·教程·面向对象·项目
在世修行9 小时前
智学文枢:题目流水线
python·多线程·状态机·pyside
梯度下降者10 小时前
零基础入门Python 爬虫
爬虫·python·数据分析·入门指南·webcrawler
“AI国潮设计-小江”11 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc