Primitive-First Boundary
ScreenKite mantiene l'editing agentico semplice: l'app espone primitive di editing deterministiche, e l'agent gestisce la pianificazione, il ragionamento sulla trascrizione e le politiche editoriali.
Questo confine è fondamentale. ScreenKite deve rispondere a domande come "qual è il layout attuale?", "taglia questo intervallo" o "applica questo layout scena da 12.5s a 17.0s". L'agent dovrebbe decidere quali sono i punti chiave, dove inserire un taglio, se un inserto visivo è utile e quando smettere di iterare.
Start With Facts
Usa queste letture come base:
getProjectState(scope: "summary")come indice rapido per tempistiche, tracce e lo stato complessivo del progettogetProjectState(scope: "layout")come unica fonte di verità per la composizione delle scenegetProjectResources()per confermare quali media esistono realmenteexportTranscript(...)quando le tempistiche del parlato o i tagli sui confini delle parole sono cruciali
Quando la trascrizione include nomi di prodotti inglesi, API o altri nomi propri, rileggili e correggili prima di creare elementi visivi o sottotitoli. Un nome di prodotto errato si propagherebbe in tutti i file successivi.
Recommended Loop
- Leggi
summary,layoute le risorse prima di pianificare qualsiasi cosa. - Esporta e revisiona una trascrizione se i tempi o il contenuto narrato sono importanti.
- Pianifica prima i momenti chiave, quindi decidi quali intervalli necessitano di tagli, modifiche del layout, didascalie o inserimenti visivi.
- Esegui
setCanvas(..., dryRun: true)prima di apportare cambiamenti alle proporzioni esetSceneLayout(..., dryRun: true)prima di lavori di layout complessi. - Applica le mutazioni temporali con
editTimeline,setSceneLayoutemanageEffects. - Verifica i risultati con
getProjectState(scope: "visual")o tramite snapshot dopo ogni iterazione. - Rileggi lo stato del progetto prima di ritentare chiamate di mutazione andate in timeout.
When to Use Each Primitive
editTimelineper tagli, rifiniture e pulizia dei confini di parolesetSceneLayoutper modifiche della composizione con un limite temporale, includendo il layout DSL avanzatomanageEffectsper sottotitoli, zoom e altri passaggi effettivivfxExportVideoSegmentpiùvfxOverlayProcessedClipper roundtrip di rendering esterniexportArtifactper esportazioni definitive, snapshot, SRT e range del video
Advanced Layout and B-Roll
Per gli elementi visivi su ScreenKite, la registrazione dello schermo rimane l'elemento principale. L'Advanced Layout e il B-roll dovrebbero solitamente corrispondere a brevi momenti di supporto, non all'acquisizione dell'intera visuale in modo predominante.
Se renderizzi una visuale esterna e la collochi con <ScreenKite.Visual />:
- renderizza l'asset con le esatte dimensioni (larghezza, altezza), fps e durata del frame del target
- tratta il file renderizzato come se fosse il frame PiP completo, non una piccola carta inserita in un video prevalentemente vuoto
- progetta l'animazione come entrata -> stazionamento fisso -> nessuna uscita interna
- lascia che le transizioni
magicMovedi ScreenKite gestiscano l'uscita fra i vari layout segmentati
Se applichi nuovamente una finestra di Advanced Layout più breve sopra un intervallo che prima era più lungo, riporta le eccedenze su pictureInPicture per "pulire". Altrimenti i vecchi segmenti di layout avanzato continueranno ad essere eseguiti oltre la loro finestra desiderata.
Guardrails
- Non tagliare mai a metà una parola. Usa i confini delle parole della trascrizione ogni qualvolta il tempismo della voce è importante.
- Rileggi sempre il project state prima di ritentare operazioni andate in timeout.
- Fai corrispondere le dimensioni dei render in overlay a larghezza, altezza, fps e frame target prima di posizionarli sulla timeline.
- Conserva gli output generati fuori dallo
.skbundle. - Metti un limite ai loop di autovalutazione. Se i controlli visivi falliscono anche dopo vari tentativi, interrompi o controlla manualmente i layout ed i media sorgenti.