Director: come saltare nei digital video.

Di: LutherBlisset | 26/09/2020 17:23:49
Ciao Pablito e a tutti voi, ecco un altro quesito. Sono certo che arriverà una risposta efficace.
Il progetto prevede una sequenza video, diciamo lunga 3 minuti con diversi cambi di scena (e argomenti)
e un'interfaccia che presenti da un lato l'area del filmato, diciamo 2/3 dello stage e dall'altro una serie di immagini (frames) che si riferiscono ai vari argomenti del video.
Un po' come accade con la selezione delle scene sui DVD commerciali, ma non voglio che cambi lo stage, nel senso che sia le anteprime che il video devono coesistere ed essere usabili contemporaneamente.
Semplificando, attraverso le singole anteprime si deve poter saltare ai vari punti del filmato.
Grazie anticipatamente e ancora complimenti!

Risposte


Come saltare all'interno di un video Avi, QuickTime e digital video usando il Lingo e Director.

Ciao LutherBlisset,
Usando le vecchie versioni di Director
Per determinare l'inizio di un digital video puoi usare la proprietà startTime.
Il valore di questa proprietà è espresso in Ticks (sessantesimi di secondo).
Sintassi/esempio :
sprite(canale_sprite_del_video).startTime=(10*60)
-- Questo codice imposterà l'inizio del video a 10 secondi dal primo frame.
Su Director MX 2004
Importa il tuo video ad es. sul primo canale dello Score, impostalo dal Property Inspector come Paused ed usa direttamente la proprietà movieTime assegnando un valore espresso in Ticks (sessantesimi di secondo).
Al bottone associa questo behavior:
on mouseUp me
sprite(1).movietime=90
sprite(1).movierate=1
end
-- Questo behavior farà partire lo sprite di tipo video del primo canale dal 90° Tick.
-- sprite(1) è lo sprite di tipo video che si trova sul primo canale dello Score.
-- sprite(1).movierate=1 invece serve a far partire il filmato dallo stato di "pausa" (movierate=0)
Naturalmente ti interessa sapere il valore da impostare. Come fare per sapere a che punto del video sei?
Usa la proprietà movieTime e la potenza della finestra Message.
- Sul primo frame scrivi: put sprite(canale_dello_sprite_del_video).movieTime
- Associa anche un "go to the frame" per rimanere sullo stesso frame.
- Esegui il tuo filmato in Director (tenendo aperta la finestra Message con l'opzione Trace selezionata)
Segnati i valori che coincidono con i cambi di scena ed avrai già il valore da inserire nella proprietà startTime.
Alternative possibili per sapere i tempi:
1) Metodo a occhio, utilizzando un player video ausiliario (metodo migliore quando il video è molto lungo).
2) Metodo più preciso utilizzando solo Director.
1) A occhio basta contare i secondi... o anche usando i vari player in commercio per visualizzare il filmato, direttamente con i tempi (dopodiché basta moltiplicare per 60 per determinare il valore di Ticks).
2) Spalma il video su X frame della Timeline di Director (a seconda di quanto dura il filmato)
- Apri la finestra Message (Ctrl+m) e scegli l'opzione del "Trace", in modo da tracciare e visualizzare il flusso.
- Riproduci il filmato.
- Prendi nota dei frame dove dovresti cambiare scena.
- A questo punto puoi scegliere tra:
2a) calcolare il tempo sapendo il framerate e convertendo il tutto in Ticks (numero di frame * framerate = secondi).
2b) oppure utilizzi tanti "put the Ticks" associati ai frame dei cambi di scena per farti restituire i valori.
Considerando il valore dei Ticks del primo frame = 0 (anche se ad esempio è: 249876), basta una sottrazione dei Ticks dell punto dove cambia scena, meno i Ticks iniziali (249876). Quello sarà il valore preciso in Ticks dell'inizio della scena. Con il metodo 2a invece non avrai lo stesso grado di precisione.
Fammi sapere.

Di: Pablito | 26/09/2020 17:23:49

Director: scene indice filmato

Beh, non c'è che dire... funziona!!!!
È stato un po' complicato, ma questo è dovuto alla mia poca esperienza su Director.
L'ultima frequentazione infatti risale alla versione 5!
Comunque grazie e mi raccomando continuate così!!

Di: LutherBlisset | 26/09/2020 17:24:49