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

Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Il nuovo Deebot X12 OmniCyclone abbina un sistema di raccolta dello sporco senza sacchetto, un rullo di lavaggio esteso e la tecnologia FocusJet per intervenire più efficacemente sulle macchie più persistenti. Un robot completo e preciso che aiuta a tenere puliti i pavimenti di casa con il minimo sforzo
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2 implementa un mocio a nastro che esegue una pulizia dettagliata del pavimento di casa, in abbinamento ad un potente motore di aspirazione della polvere: un prodotto ideale per gestire in autonomia e con grande efficacia le necessità di pulizia dei pavimenti di casa
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
MSI FORGE GK600 TKL WIRELESS: switch lineari hot-swap, tripla connettività, display LCD e 5 strati di fonoassorbimento. Ottima in gaming, a 79,99 euro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-01-2015, 10: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, 12: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, 19: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, 12: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 13:45.
reggio è offline   Rispondi citando il messaggio o parte di esso
Old 14-01-2015, 19: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, 16: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, 00: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, 09: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


Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet Ecovacs Deebot X12 OmniCyclone: lava grazie a Fo...
Narwal Flow 2: la pulizia di casa con un mocio a nastro Narwal Flow 2: la pulizia di casa con un mocio a...
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Huawei punta sul canale europeo: per il ...
Ubuntu 26.04: le GPU guadagnano il 17% i...
La Commissione UE registra l'iniziativa ...
SSD troppo cari? La soluzione alla crisi...
Anteprima mondiale Hyundai IONIQ 3: segm...
Fintool sbarca su Microsoft 365: arrivan...
Hanno chiesto 1 dollaro per salvare un M...
Arriva AgentExchange, il marketplace di ...
Blizzard fa chiudere Turtle WoW: perché ...
Claude Desktop e la modifica silenziosa ...
Blue Origin ha mostrato gli interni del ...
Linux alla pari di Windows in gioco: con...
Il rientro del secondo stadio del razzo ...
Il controller ufficiale Microsoft per Xb...
DJI Power 1000 Mini: la power station da...
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: 00:54.


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