# video — a dumb video player, part of the Makepad app family (terminal, wm, # files, image, task, sheets, route, mixer...). # # `video ` opens one clip fit-to-window on a dark makepad_wm_theme # background and plays it, sound and all. Space pauses, Left/Right seek # ±5s (Shift ±30s), Up/Down set the volume, M mutes, double-click hides # the chrome, Escape/Q quits. `--preview ` sizes the window as a # popup — that is files' Quick Look. `--mute` (or MAKEPAD_VIDEO_MUTE=1, or a # hidden window) starts silent, so a test run never talks at whoever is # sitting at the machine. # # The decode path is lifted from apps/asset-ui/src/video_player.rs (a # detached decode thread over the platform's hardware # `makepad_platform::video_file` seam, a small frame ring paced against a # wall clock, and the soundtrack mixed into `cx.audio_output`), with the # VJ's NV12-on-the-GPU trick (apps/vj/src/nv12_view.rs) replacing the # software YUV->BGRA loop: the frames stay NV12 all the way to two plane # textures and the pixel shader does the colour conversion. [package] name = "makepad-video" version = "0.1.0" edition = "2021" default-run = "video" [lib] name = "makepad_video" path = "src/lib.rs" [[bin]] name = "video" path = "src/main.rs" [dependencies] makepad-widgets = { path = "../../widgets" } makepad-wm-theme = { path = "../../libs/wm_theme" } makepad-wm-api = { path = "../../libs/wm_api" }