import random import gradio as gr choices = [ "A_001_frames", "A_003_frames", "A_004_frames", "A_005_frames", "A_006_frames", "A_007_frames", "A_008_frames", "A_010_frames", "A_011_frames", "A_012_frames", "A_013_frames", "A_014_frames", "A_016_frames", "A_019_frames", "A_020_frames", "A_021_frames", "A_022_frames", "A_023_frames", "A_024_frames", "A_025_frames", "A_026_frames", "A_027_frames", "A_028_frames", "A_029_frames", "A_032_frames", "B_002_frames", "B_003_frames", "B_006_frames", "B_007_frames", "B_008_frames", "B_010_frames", "B_012_frames", "B_017_frames", "B_019_frames", "B_021_frames", "B_022_frames", "B_023_frames", "B_024_frames", "B_025_frames", "B_026_frames", "C_001_frames", "C_004_frames", "C_005_frames", "C_006_frames", "C_008_frames", "C_009_frames", "C_010_frames", "C_011_frames", "C_012_frames", "C_016_frames", ] def load_video(choice: str): return f"assets/{choice}.mp4" demo = gr.Interface( load_video, [ gr.Dropdown( choices=choices, label="Select an MR sequence", value=random.choice(choices), ) ], gr.Video( height=500, autoplay=True, loop=True, label="MR Sequence", ), live=True, title="TrackRAD2025 Labeled Data Viewer", examples=[[random.choice(choices)]], cache_examples=True, preload_example=0, flagging_mode="never", ) demo.launch()