73da76f44a
- RenderEngine: orchestriert alle Quellen pro Frame mit fester Master-Bildrate (§12.2): Sync aus StateMirror, Playback-Advancement, unveraenderlicher FrameSnapshot, Telemetry (§28.2) - SourceHandle: verbindet PlaybackController + PreloadSlot + Parameterpfade; Transport (Play/Pause/Stop/Retrigger) aus Mirror; Clip-Wechsel atomar ueber Preload/Commit (§12.2, §16.5) - FrameSnapshot: unveränderlich pro Frame (§11.4): Parameter, Positionen, Transport-Zustaende, aktive Assets; halbe Zustaende ausgeschlossen - RenderTelemetry: Frame-Index, FPS, Framezeit, aktive Layer, pending Preloads, Events (§25.4, §28.2) - TransportState-Mapping: int-Werte 0/1/2 aus Mirror auf Enum - 9 Unit-Tests: Frame-Snapshots, Play-Command, Positions-Advancement, atomarer Asset-Wechsel, Retrigger, Snapshot-Unveränderlichkeit, Telemetry, Multi-Source-Speed, Stopped-Verhalten - Gesamtsuite 595 gruen, Ruff gruen
36 lines
969 B
Python
36 lines
969 B
Python
"""hms_renderer – Render-Worker (PLAN.md §6.1C, §12, §36 Nr. 4–6).
|
||
|
||
Python orchestriert native GStreamer-Komponenten; keine Pixelverarbeitung
|
||
in Python (§2.1, §33). Der RemoteStateMirror hält den über IPC übermittelten
|
||
Showzustand (§6.2, §6.4); die RenderEngine verbindet Mirror, Playback und
|
||
Preload zu Frame-Snapshots (§11.4)."""
|
||
|
||
from hms_renderer.engine import (
|
||
FrameSnapshot,
|
||
RenderEngine,
|
||
RenderTelemetry,
|
||
SourceHandle,
|
||
)
|
||
from hms_renderer.pipelines import (
|
||
D3D11Pipeline,
|
||
DevGLPipeline,
|
||
build_compositor_pipeline,
|
||
build_single_video_pipeline,
|
||
gst_available,
|
||
)
|
||
from hms_renderer.state_mirror import RemoteStateMirror, apply_envelope
|
||
|
||
__all__ = [
|
||
"D3D11Pipeline",
|
||
"DevGLPipeline",
|
||
"build_single_video_pipeline",
|
||
"build_compositor_pipeline",
|
||
"gst_available",
|
||
"RemoteStateMirror",
|
||
"apply_envelope",
|
||
"RenderEngine",
|
||
"SourceHandle",
|
||
"FrameSnapshot",
|
||
"RenderTelemetry",
|
||
]
|