d24fe3a963
- PlaybackController (§12.5): Play/Pause/Stop/Retrigger, Loop/Once/ Ping-Pong mit In/Out-Fenstern, variable Geschwindigkeit ±4x (§16.6), Ende-Ereignis genau einmal je Pass, monotone Ereignis-Zeitbasis (§12.2) - PreloadSlot (§12.2): atomarer Clipwechsel preload->ready->commit; nicht bereites Medium wechselt nie (Policy beim Aufrufer) - MediaLibrary (§13.2/§13.3): Import mit SHA-256-Duplikaterkennung, Bank-Slots als explizite Show-Metadaten, fehlende Dateien markiert, Relink; Import laeuft im Control-Core-Worker, nie im Renderthread - ContentManifest (§6.4/§10.1): SHA-256 je Datei + resumierbare Chunk-Hashes, Verifikation gegen Veraenderung, Diff fuer Sync-Plan, deterministische Serialisierung mit Revision - 35 neue Unit-Tests; Gesamtsuite 258 gruen, Ruff gruen
20 lines
443 B
Python
20 lines
443 B
Python
"""hms_media – Playback-Transport und Medienbibliothek (PLAN.md §12.5, §13)."""
|
||
|
||
from hms_media.library import ImportOutcome, ImportStatus, MediaLibrary
|
||
from hms_media.transport import (
|
||
PlaybackController,
|
||
PlaybackEvent,
|
||
PlaybackEventKind,
|
||
PreloadSlot,
|
||
)
|
||
|
||
__all__ = [
|
||
"PlaybackController",
|
||
"PlaybackEvent",
|
||
"PlaybackEventKind",
|
||
"PreloadSlot",
|
||
"MediaLibrary",
|
||
"ImportOutcome",
|
||
"ImportStatus",
|
||
]
|