View Full Version : AVS editing methodology
fvisagie
13th August 2009, 12:06
Hi All,
I'm an Avisynth newbie trying to find my way forward. From what I've seen so far, it seems Avisynth was designed for subtractive timeline editing - one starts off with all of the source clip(s) available and then use Trim commands to discard unwanted footage.
Unfortunately this approach is very difficult with my kind of work. A typical project starts off with around 9 - 12 hrs of camera footage which needs to be cut down to 1.5 - 3 hrs' playing time. For this kind of work the additive approach works better for me: you start off with nothing in your project, then pick some footage and cut and insert some clips, then add some photos between clips here and there, etc.
Is this kind of approach possible with AVS or one of its GUIs, and what sequence of steps do you follow to implement it?
Many thanks in advance,
Francois
Gavino
13th August 2009, 14:26
In fact, it's more usual to use an 'additive' approach, and you could just as easily view Trim as selecting a clip section for inclusion rather than as discarding the unselected bits.
The equivalent of a timeline can be built up using the + and/or ++ operators, so a typical script might have the form:
# define assets
a1 = AviSource(...)
a2 = DirectShowSource(...)
...
# define sections and filtering
part1 = a1.Trim()
part2 = a2.Trim().SomeFilter()
...
# define overall result
return part1 ++ part2 ++ ...
Once you get into more complex processing, you can define your own functions to handle common operations, or to provide more levels of structure (eg define the construction of each major section as a separate function). The flexibility and power of the language means you can do just about anything.
fvisagie
13th August 2009, 15:17
That's very helpful, thanks.
m3mbran3
15th August 2009, 16:22
If you are editing a lot of footage you may find it easier to use a graphical based editor like Video ReDo. I usually edit my footage in this and then apply my basic filters (denoise / stabilise / sharpen etc.) to the whole file afterwards.
fvisagie
17th August 2009, 09:11
If you are editing a lot of footage you may find it easier to use a graphical based editor like Video ReDo. I usually edit my footage in this and then apply my basic filters (denoise / stabilise / sharpen etc.) to the whole file afterwards.
Yes, in some cases this approach does have its merits. To some extent I'm using it in the current project - the final rendering will be with AVS to inlay subtitles authored in Aegisub.
From a quick glance I couldn't tell whether Video ReDo supports DV AVI, do you know? And if it does, do you know which file handler (VfW AVIFile, OpenDML etc.) it uses? I.e., how frame-accurate can it be expected to be with DV AVI?
Guest
17th August 2009, 13:55
It's an MPEG editor. DV is not MPEG.
DV is all intra frames, so any app that edits it should not have any problems with frame accuracy.
NerdWithNoLife
18th August 2009, 07:38
I've done this for a while, probably because I like a challenge. If nothing else, it's very educational. You'll get lots of great messages like "Splice: Frame sizes don't match... Video formats don't match... Frame rates don't match..." - and all along you'll be learning about colorspaces, frame rate numerators & denominators, codecs, and many more things. Seriously, you'll know things that people with big expensive programs are completely blind to. It's worth more than any video course I've taken.
But if time is an issue, you should probably get a real editing program.
fvisagie
18th August 2009, 10:32
You make a good point. Innately I tend to take the same approach. Because of time constraints I sincerely regret each second spent on that approach and highly value what I've learnt. Right now, everything says I should shy away from juicy challenges that can be avoided.
Blue_MiSfit
19th August 2009, 09:13
I would only subject myself to manual Trim() commands for small tasks.
Anything involving editing 9-12 hours of footage down to 2-3 hours requires an NLE in my opinion. Using AviSynth for this task is pretty masochistic :D
No offense intended - I absolutely love AviSynth, but it's not well suited to the task!
Use a frameserver to go from NLE -> AviSynth after your project is complete. Render your script using any AviSynth enabled apps you want. x264's lossless mode is my usual preference.
~MiSfit
JohannesL
19th August 2009, 10:43
I do crazy stuff like this solely with AviSynth:
a = AVISource("TAS Competition Task 6 by adika25630.avi").Crop(0,16,0,-16)
aC = a.Trim(0,2438).ChangeFPS(30)
b = AVISource("TAS Competition Task 6 by Johannes.avi").Crop(0,16,0,-16)
bC = b.Trim(0,2346).ChangeFPS(30)
c = AVISource("TAS Competition Task 6 by SmashFiles.avi").Crop(0,16,0,-16)
cC = c.Trim(0,2274).ChangeFPS(30)
d = AVISource("TAS Competition Task 6 by Sndopdodg2222.avi").Crop(0,16,0,-16)
dC = d.Trim(0,2262).ChangeFPS(30)
e = AVISource("TAS Competition Task 6 by JumpDiveSlope.avi").Crop(0,16,0,-16)
eC = e.Trim(0,2235).ChangeFPS(30)
f = AVISource("TAS Competition Task 6 by Blaze.avi").Crop(0,16,0,-16)
fC = f.Trim(0,2220).ChangeFPS(30)
V1W = Dissolve(aC,bC,cC,dC,eC,fC,12).Spline36Resize(1028,720).AddBorders(126,0,126,0).ConvertToYV12
H1 = StackHorizontal(a,b,c)
H2 = StackHorizontal(d,e,f)
V6W = StackVertical(H1,H2).Spline36Resize(1280,600).AddBorders(0,60,0,60).ConvertToYV12.ChangeFPS(30)
Full = AudioDub(TransWipe(V1W,V6W,15,"up"),WAVSource("FCo.wav"))
H = StackHorizontal(e,f).AddBorders(0,136,0,136).ConvertToYV12
audio = MergeChannels(e.ConvertToMono,f.ConvertToMono)
V2W = AudioDub(H,audio).ChangeFPS(30).AssumeFPS(15,1,true).ChangeFPS(30).ResampleAudio(44100)
TransWipe(Full,V2W,60,"left")
It's fun. I can't stand the big expensive editing programs.
NerdWithNoLife
19th August 2009, 14:23
ITA; it is masochistic, which is why I finally bought Vegas Platinum. This video (http://www.youtube.com/watch?v=6dAxOPlaeEU) is entirely composited with Avisynth. Even the opening sequence was "animated" with KenBurnsEffect. I had a template for easily creating these shows, but in this one it gets complicated since I took a caller on Skype, synced it up with the larger video, and overlayed it. Audio was handled in Audacity. 67 lines of code. Oh, and the caller was my cousin - he was in on the gag. I'm not that mean.
sumawo13
19th August 2009, 15:29
Although it can be a pain, I enjoy writing scripts with Avisynth. It taught me a lot about video and working with it that I might not know otherwise.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.