vgpu in-guest producer in-tree, release CI, flexible vmie discovery

- src/si/vgpu-stream: in-guest vgpu producer built as a Windows cross-compiled target (if(WIN32))
- .gitea: release workflow — cross-build the agent and build/publish the deb against system vmie
- cmake/makefile: resolve vmie from a source tree (LIBVMIE_PATH) or installed libvmie-dev
This commit is contained in:
2026-06-22 18:35:12 +03:00
parent 9bde398b6c
commit bd8b966017
31 changed files with 2393 additions and 8 deletions
+19
View File
@@ -0,0 +1,19 @@
#ifndef VGPU_CAPTURE_WIN32_H
#define VGPU_CAPTURE_WIN32_H
/* capture-win32.h — private win32 plumbing shared by the capture backends.
* Not part of the OS-agnostic capture seam (see src/stream/include/capture.h):
* it depends on the win32 vgpu_ctx and the thread-handoff convention. */
#include "ctx.h" /* win32 vgpu_ctx (full definition) */
/* Thread argument passed to capture threads via LPVOID. Heap-allocated by the
* backend's *_start, owned and freed by the thread. Carries the explicit ctx
* (no global state) plus per-backend state pointer. */
typedef struct {
vgpu_ctx* ctx;
int fps;
void* backend_state; /* opaque per-backend handle block */
} capture_thread_arg;
#endif /* VGPU_CAPTURE_WIN32_H */