streamlit4c / app.py
seawolf2357's picture
Update app.py
e6bc869 verified
raw
history blame
1.99 kB
import streamlit as st
# μ‚¬μ΄λ“œλ°” 타이틀 μ„€μ •
st.sidebar.title("ViDraft")
# 메뉴 ν•­λͺ©κ³Ό ν•˜μœ„ ν•­λͺ© μ •μ˜
menus = {
"Free Stock": ["Template Video", "Template Image", "Search Video", "Search Image"],
"Image": ["Generation", "Face ID", "Inpainting", "Remove Background", "Studio"],
"Video": ["Generation", "Talking Face", "Remove Background", "Studio"],
"Sound": ["Video SFX", "Video Music", "TTS(Voice)", "Voice Clone", "Image SFX", "Image Music"],
"Scripts": ["Script"]
}
# μ„ νƒλœ 메뉴 ν•­λͺ©μ„ μ €μž₯ν•  λ³€μˆ˜, κΈ°λ³Έκ°’μœΌλ‘œ None μ„€μ •
selected_menu = None
selected_sub_menu = None
# 메뉴 선택 처리
selected_menu = st.sidebar.selectbox("Menu", list(menus.keys()))
if selected_menu:
selected_sub_menu = st.sidebar.selectbox("Sub Menu", menus[selected_menu])
# μ—¬κΈ°μ„œλΆ€ν„°λŠ” μ‚¬μš©μžκ°€ μ„ νƒν•œ 메뉴에 따라 λ‹€λ₯Έ λ‘œμ§μ„ μ‹€ν–‰ν•©λ‹ˆλ‹€.
# 'Template Video'κ°€ μ„ νƒλ˜μ—ˆμ„ λ•Œ λΉ„λ””μ˜€ 가러리λ₯Ό ν‘œμ‹œ
if selected_menu == "Free Stock" and selected_sub_menu == "Template Video":
st.subheader("Template Videos")
# λΉ„λ””μ˜€ 가러리 및 μ„ νƒλœ λΉ„λ””μ˜€ μž¬μƒ λ‘œμ§μ„ 여기에 κ΅¬ν˜„ν•©λ‹ˆλ‹€.
# 예λ₯Ό λ“€μ–΄, λΉ„λ””μ˜€ 파일 λͺ©λ‘μ„ μƒμ„±ν•˜κ³ , μ‚¬μš©μžκ°€ μ„ νƒν•œ λΉ„λ””μ˜€λ₯Ό μž¬μƒν•˜λŠ” μ½”λ“œ λ“±
# λΉ„λ””μ˜€ 파일과 썸넀일 이미지 경둜 μ„€μ •
video_files = ["ex1.mp4", "ex2.mp4", "ex3.mp4", "ex4.mp4", "ex5.mp4", "ex6.mp4"]
thumbnails = ["thum1.png", "thum2.png", "thum3.png", "thum4.png", "thum5.png", "thum6.png"]
# 가러리 ν˜•νƒœλ‘œ 썸넀일 ν‘œμ‹œ
cols = st.columns(3)
for index, thumbnail in enumerate(thumbnails):
with cols[index % 3]:
st.image(thumbnail, width=200, caption=f"Video {index+1}")
# 'Play Video' λ²„νŠΌ μΆ”κ°€
if st.button(f"Play Video {index+1}", key=f"play_{index}"):
# μ„ νƒλœ λΉ„λ””μ˜€ μž¬μƒ
st.video(video_files[index])