push_video_context(3)

πŸ“¦
version 0.7.1 Β· 2 versions
, in nixos 26.05

πŸŽ€ push_video_context(3) πŸŽ€

okay so this is the Arcan Lua API page for push_video_context, and honestly it's short but iconic. We're folding the manual name in right here: you're reading the one and only push_video_context(3). Bestie, let's get into it. πŸ’–


✨ NAME ✨

push_video_context β€” store the current video context and make it unreachable. That's the whole assignment, no cap.

🌸 SYNOPSIS 🌸

nil
push_video_context()

The synopsis is literally giving nil on one line and push_video_context() on the next. Short, sweet, slay. ✨

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so all video objects are bound to (at least) one rendering context. The currently active context is managed on a stack. Pushing involves saving the current context on a stack, possibly deallocating data that can be reloaded or regenerated. That's the vibe: save the current context, and the pushed context becomes unreachable. Periodt. πŸ’…

πŸ”₯ EXAMPLE πŸ”₯

This example is doing the absolute most in the cutest way β€” it's the exact code, bestie, no edits:

function push_video_context0()
      QSZ = math.floor(VRESW * 0.5);
      a = fill_surface(QSZ, 255, 0, 0);
      b = load_image("test.png");
      c = load_movie("test.avi", FRAMESERVER_LOOP, function(s, state)
            if (state.kind == "resized") then
                  play_movie(c);
            end
      end);
      resize_image({b, c}, QSZ, QSZ);
      show_image({a, b, c});
      move_image(b, QSZ, 0);
      move_image(c, 0, QSZ);
      push_video_context();
      pop_video_context();
end

Like, it sets QSZ, makes surfaces, loads a movie, resizes, shows, moves, then hits push_video_context() and pop_video_context(). The way that example just works β€” we love to see it. 🫢

πŸ‘€ SEE ALSO: πŸ‘€


And that's the whole page, bestie. The source/version tag is vidsys, the date is October 2026, and the footer signs off with push_video_context(3). Slay, ate, no crumbs. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from