Hi all,I have two clips, called Clip1 and Clip2. I want "Layer" Clip1 with selected ranges (approximate 200-300 ranges) from Clip2. Each range has start frame and endframe.
Basically, i can use Trim to do it but i think is not optimize for large amout range. So anyone can provide me better solution to do this. Exam
with timecode.txt has startframe and endframe of each range.Code:Layer(Clip1,Clip2,"timecode.txt")
Thank so much.
+ Reply to Thread
Results 1 to 6 of 6
If it's just 1 replacement range, trim() is probably the easiest way to do it with least overhead.
When you have multiple frame ranges, or have a list or replacement frame ranges, you can look at remapframes plugin by stickboy which can take a mappings .txt file or string with RemapFramesSimple , ReplaceFrames, or other plugins like ClipClop
ReplaceFramesSimple(clip1, clip2 , mappings="[10 20] [10 20]")
this would replace frames 10-20 inclusive of clip1 with those from clip 2. Look at the documentation for the syntax and examples of the mappings txt file
For listing with a txt file, use RemapFrames
RemapFrames(clip1 , "PATH\replacement.txt", sourceClip=clip2)
If replacement.txt was something like:
[10 20] [10 20]
[100 200] [200 300]
10-20 of clip1 would be replaced by 10-20 of clip2
100-200 of clip1 would be replaced by 200-300 of clip2
Last edited by poisondeathray; 13th Sep 2013 at 10:15.
Another thing that should go without saying is you need frame accurate source filters when using plugins like these or any temporal filters - otherwise you can get mixed up frames. ie. that rules out things like DirectShowSource()
So if i have an Avi file (VFR framerate).
If i call it with script
So if call it with FFVideoSource("path.avi")
How about fps script?
I want to get same result, same frames order like load it with DirectShowSource("path.avi",fps=25,convertfps=true )