Torna indietro   Hardware Upgrade Forum > Software > Editing e Codec video

DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
Analizziamo nel dettaglio DJI RS 5, l'ultimo arrivato della famiglia Ronin progettato per videomaker solisti e piccoli studi. Tra tracciamento intelligente migliorato e ricarica ultra rapida, scopriamo come questo gimbal eleva la qualità delle produzioni.
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D è la nuova CPU gaming di riferimento grazie alla 3D V-Cache di seconda generazione e frequenze fino a 5,6 GHz. Nei test offre prestazioni superiori a 9800X3D e 7800X3D, confermando la leadership AMD nel gaming su PC.
Le soluzioni FSP per il 2026: potenza e IA al centro
Le soluzioni FSP per il 2026: potenza e IA al centro
In occasione del Tech Tour 2025 della European Hardware Association abbiamo incontrato a Taiwan FSP, azienda impegnata nella produzione di alimentatori, chassis e soluzioni di raffreddamento tanto per clienti OEM come a proprio marchio. Potenze sempre più elevate negli alimentatori per far fronte alle necessità delle elaborazioni di intelligenza artificiale.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-01-2015, 11:26   #1
reggio
Member
 
Iscritto dal: Dec 2008
Messaggi: 45
Creare video con altro video in riquadro piccolo: chiedo tutorial ;P

Ciao a tutti e buon anno nuovo!

Avrei l'esigenza di aggiungere ad un video principale, un altro video posizionato
in un angolo (es. in alto a destra rispetto il video principale) con dimensioni di circa 1/6 rispetto il video principale.

Sapreste dirmi se e come è possibile farlo con Avisynth + Virtualdub? (in realtà in passato avevo già trovato la spiegazione in questo forum, ma non trovo più nulla )

Potreste aiutarmi dandomi indicazioni passo passo o indicando link di tutorial in rete?
__________________
grazie!
reggio
reggio è offline   Rispondi citando il messaggio o parte di esso
Old 12-01-2015, 13:27   #2
reggio
Member
 
Iscritto dal: Dec 2008
Messaggi: 45
Ok ok ok, sono sempre io, non ho trovato il post, ma ho ritrovato alcuni appunti ... non rispondo completamente alla mia domanda, ma almeno eliminano le domande più banali ;P
Li riporto quì per chi può essere interessato (e anche per mè quando, tra qlc mese dimenticherò tutto e tornerò a chiedere ... ;P)

Ok, ora però mi dovreste aiutare a capire come fare lo script per un video grande senza audio + video piccolo con audio, sopra il video grande, posizionato in altro a destra, ma non esattamente nello spigolo bensì un poco discostato dai bordi (così fà più fico) e bordato con un bordo bianco (credo serva il comando ".addborders(2,2,2,2, color=$ffffff)" ) ...

Mi potreste aiutare?


-----------------------------------------------------------------------------

Ora vado a "spiegarmi" come ho ottenuto qualcosa di simile.

Allora, per ottenere questo video composto da 4 video piccoli + 2 video grandi:

serve:
- Avisynth per creare lo script che allego di seguito (basterebbe anche notepad, ma AvsP permette di vedere il preview del risultato).
- VirtualDub per caricare lo script di Avisynth e salvare come file .avi

il testo da inserire in Avisynth è il seguente:

Codice:
A=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (1).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
B=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (2).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
C=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (3).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
D=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (1).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
E=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (2).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
F=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (3).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
G=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (4).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
H=AVISource("Z:\Documenti Luca\Video\AVSP\video-prova (1).avi"). ConvertToYuY2. BicubicResize(358,238).addborders(2,2,2,2, color=$ffffff)
st=StackVertical(e,f,g,d). BicubicResize(180,240)
st1=StackVertical(h,g). BicubicResize(360,240)
clip=StackHorizontal(st,st1,st)
Return clip
.. e per quello che mi ricordo:

"A=AVISource("percorso\video.avi")" assegna un "nome" ad ogni video
". ConvertToYuY2" ???
". BicubicResize(358,238)" assegna la dimensione
".addborders(2,2,2,2, color=$ffffff)" aggiunge i bordi di spessore 2 e il colore ffffff (bianco)

... a presto!
__________________
grazie!
reggio
reggio è offline   Rispondi citando il messaggio o parte di esso
Old 12-01-2015, 20:20   #3
Esavoc
Senior Member
 
L'Avatar di Esavoc
 
Iscritto dal: Jun 2009
Messaggi: 1780
Ciao reggio.

Questo è lo script

Codice:
x1=720
y1=400  
clip1=AviSource("percorso_video",audio=false).BicubicResize (x1,y1) 

x2=360
y2=200
clip2=AviSource("percorso_video").BicubicResize(x2,y2). Addborders (2,2,2,2, color=$ffffff) 

offx=(x1-x2)-10
offy=10
 clipT=Overlay(clip1, clip2,offx,offy)

 audio= GetChannel(clip2, 1)
 return AudioDub(clipt,audio)
Ora un pò di teoria

Audio=false toglie l'audio alla clip

x1 e y1 sono le dimensioni del video di sfondo, se non devi applicare un ridimensionamento del video nella riga successiva, quella che lo carica, puoi omettere il comando BicubicResize.

x2 e y2 sono le dimensioni del video da sovrapporre

offx calcola automaticamente la posizione orizzontale di questo video, il valore -10 serve per spostarlo verso sinistra di 10 pixel, puoi inserire il valore che vuoi.

offy determina la posizione verticale del video, 10 sono i pixel verso il basso, vale il discorso di prima.

Il filtro che unisce le clip è Overlay, (si poteva usare anche Layer) però l'audio è sempre quello della clip di sfondo che noi abbiamo eliminato quindi mentre la sintassi semplice sarebbe Overlay(clip1,clip2) dobbiamo agire diversamente:

Il filtro GetChannel prende l'audio dalla clip indicata.

Il filtro AudioDub prende il flusso video del primo argomento e il flusso audio del secondo e li unisce.

Se lo spazio colore dei due video è diverso lo script genera un'errore quindi alle prime righe di caricamento dei due video va aggiunto ConvertToyuy2 per renderle compatibili (e questo spero che ti spieghi perchè è stato usato anche nello script che hai descritto)
__________________
no pain, no gain
Esavoc è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2015, 13:56   #4
reggio
Member
 
Iscritto dal: Dec 2008
Messaggi: 45
GRANDE!! ESAVOC!!!!
Funziona alla grande!!!

Adesso però, mi vengo in mente altre 1000 domande per migliorare e aggiungere effetti ...

... ad esempio
- se volessi che clip2 inizi dopo x secondi e sparisca prima della fine di x secondi?
- se volessi che clip2 "volteggi" sopra clip1?
- se volessi che si sentano 10sec di audio clip1, poi 5sec di silenzio poi 10sec di clip2 poi 5sec di silenzio e di nuovo da capo?


... te l'ho già chiesto mi pare, ma, tu.., dove diavolo le hai imparate tutte stè cose? non c'è un manualetto con i vari comandi usati separatamente con piccoli esempietti?

**aggiungo una domanda** partendo da 2 file da 17mb e 48mb, Virtualdub mi crea un avi di 5,3GB!!!!! perchè diventa così enorme?? (mi autorispondo: perchè in "Video/compression" non ho selezionato nessuna compressione ... sorry ... ;P)
__________________
grazie!
reggio

Ultima modifica di reggio : 13-01-2015 alle 14:45.
reggio è offline   Rispondi citando il messaggio o parte di esso
Old 14-01-2015, 20:13   #5
Esavoc
Senior Member
 
L'Avatar di Esavoc
 
Iscritto dal: Jun 2009
Messaggi: 1780
Queste cose le ho imparate in rete, il wiki ufficiale di Avisynth lo trovi a questo indirizzo: http://avisynth.nl/index.php/Main_Page

Per limitare nel tempo la comparsa della clip puoi usare il comando Trim, per farlo con l'audio puoi usare AudioTrim ma ci devi lavorare un pò.
Per far svolazzare la clip... beh, Avisynth può molto ma non tutto, non è un'editor lineare quindi magari si può fare ma idrei che è piuttosto complicato specialmente per chi è alle prime armi.

Prova a usare il comando trim poi se hai dei problemi contattami pure che ti aiuto.
__________________
no pain, no gain
Esavoc è offline   Rispondi citando il messaggio o parte di esso
Old 16-01-2015, 17:20   #6
reggio
Member
 
Iscritto dal: Dec 2008
Messaggi: 45
Quote:
Originariamente inviato da Esavoc Guarda i messaggi
Per limitare nel tempo la comparsa della clip puoi usare il comando Trim, per farlo con l'audio puoi usare AudioTrim ma ci devi lavorare un pò.

Prova a usare il comando trim poi se hai dei problemi contattami pure che ti aiuto.
... ciao, altrochè prime armi sono proprio indietro forte ...
ho guardato quì: http://avisynth.nl/index.php/Trim
ed ho provato a smacchinare un poco, ho aggiunto il comando TRIM, che non dà errori, ma che non da luogo a nessun effetto ...

Immagino non sia applicato bene, ma purtroppo l'help di avisynth indica i comandi "puri", con esempi troppo stringati per chi è alle prime armi ...

Dove sbaglio sotto?

x1=720
y1=400
clip1=AviSource("Z:\Documenti Luca\Video\AVSP\Me and my broken heart.avi",audio=false).BicubicResize (x1,y1)

x2=180
y2=100
clip2=AviSource("Z:\Documenti Luca\Video\AVSP\Me and my broken heart (Andie Case Cover).avi").BicubicResize(x2,y2). Addborders (2,2,2,2, color=$ffffff)
Trim(clip2, 1000, 0)

offx=(x1-x2)-10
#offy=280
offy=(y1-y2)-10
clipT=Overlay(clip1, clip2,offx,offy)

audio= GetChannel(clip2, 1)
return AudioDub(clipt,audio)
__________________
grazie!
reggio
reggio è offline   Rispondi citando il messaggio o parte di esso
Old 17-01-2015, 01:24   #7
Esavoc
Senior Member
 
L'Avatar di Esavoc
 
Iscritto dal: Jun 2009
Messaggi: 1780
L'errore è che scritto così il filtro Trim non funziona dato che successivamente il filtro Overlay va a caricare di nuovo la clip2 per intero.
Per farlo funzionare puoi:
Aggiungere il comando Trim alla riga dove dichiari la clip2
clip2=AviSource("percorso del video.avi").BicubicResize(x2,y2). Addborders (2,2,2,2, color=$ffffff). Trim(1000,0)

Oppure creare una nuova variabile a cui deve far riferimento il comando Overlay:

clip2=AviSource("percorso del video.avi").BicubicResize(x2,y2). Addborders (2,2,2,2, color=$ffffff)
clip3=Trim(clip2,1000,0)

....

clipT=Overlay(clip1, clip3,offx,offy)

Però così non riesci ad ottenere l'effetto che cerchi perchè la clip partirà dal frame 1000 ma contemporaneamente alla clip di sfondo.

Per farla sia partire che apparire dopo 1000 frame devi aggiungere qualche riga.

In genere si crea una funzione dedicata applicando il filtro Animate che deve agire sulla trasparenza e sul volume della clip in modo continuo ma si va nel complicato.

Un modo più "semplice" è questo:

Crei una prima sovrapposizione con la seconda clip con opacità a 0, volume a 0 di 999 frame

clip3=Overlay(clip1, clip2,offx,offy, opacity=0). Trim(0,999)
Per rendere compatibili i flussi audio, per portare a zero il volume non si può usare semplicemente KillAudio ma una strada più contorta:

audio=GetChannel(clip2, 1)
clip3a=AudioDub(clip3,audio). amplifydb(-20).Trim(0,350)

Crei una seconda sovrapposizione per il resto della clip

clip 4=Overlay(clip1, clip2,offx,offy). Trim (1000,0)
Aggiungi l'audio come nello script precedente

audio=GetChannel(clip2, 1)
clip4a=AudioDub(clip4,audio). Trim (351,0)

Unisci le clip

clipT=clip3a+clip4a
return clipt

Quindi lo script completo è:

x1=720
y1=400
clip1=Avisource("percorso del video").bicubicresize (x1,y1)

x2=360
y2=200
clip2=Avisource("percorso del video").bicubicresize(x2,y2). addborders (2,2,2,2, color=$ffffff)

offx=(x1-x2)-10
offy=10
clip3=Overlay(clip1, clip2,offx,offy, opacity=0)
audio=GetChannel(clip2, 1)
clip3a=AudioDub(clip3,audio). amplifydb(-20).Trim(0,350)

clip4=Overlay(clip1, clip2,offx,offy)
audio=GetChannel(clip2, 1)
clip4a=AudioDub(clip4,audio). Trim (351,0)

clipT=clip3a+clip4a
return clipt
__________________
no pain, no gain
Esavoc è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2015, 10:40   #8
reggio
Member
 
Iscritto dal: Dec 2008
Messaggi: 45
Quote:
Originariamente inviato da Esavoc Guarda i messaggi
Quindi lo script completo è:

x1=720
y1=400
clip1=Avisource("percorso del video").bicubicresize (x1,y1)

x2=360
y2=200
clip2=Avisource("percorso del video").bicubicresize(x2,y2). addborders (2,2,2,2, color=$ffffff)

offx=(x1-x2)-10
offy=10
clip3=Overlay(clip1, clip2,offx,offy, opacity=0)
audio=GetChannel(clip2, 1)
clip3a=AudioDub(clip3,audio). amplifydb(-20).Trim(0,350)

clip4=Overlay(clip1, clip2,offx,offy)
audio=GetChannel(clip2, 1)
clip4a=AudioDub(clip4,audio). Trim (351,0)

clipT=clip3a+clip4a
return clipt
Fantastico, grazie, funziona!! (Non avevo dubbi)
.. mi ci vorranno anni per capire tutto il codice, ma intanto sono riuscito a editare il video con le Barbie di mia figlia ;P

Grazie e a presto!
__________________
grazie!
reggio
reggio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
SpaceX vuole portare nello Spazio 1 mili...
Realme 16: il nuovo mid-range che si isp...
DAZN lancia il piano Full Mobile a 19,99...
Samsung Galaxy S26, ormai è tutto...
Smartphone sempre più cari: super...
L'ultima puntata di Falsissimo rimossa d...
NASA Perseverance ha utilizzato percorsi...
Blue Origin sospende per almeno due anni...
Stampanti, Los Angeles verso il divieto ...
Roscosmos Amur: il razzo spaziale riutil...
Robot aspirapolvere per tutte le tasche:...
Accedere alle mail di un lavoratore lice...
Amazon Haul scatenato: migliaia di prodo...
Amazon Seconda Mano rilancia: sconto ext...
Super prezzo Amazon per ECOVACS DEEBOT T...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 20:20.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v