View Full Version : Merging together a frame range: how?
Chainmax
30th September 2006, 22:07
I have a clip in which the frame range [x,y] has two rows of text and frame range [z,t] has a third row of text. How can I merge those frames so that the frame range [x,t] shows all three rows of text?
Prettz
30th September 2006, 22:23
Can you isolate the text into a mask using MaskTools?
stickboy
30th September 2006, 22:48
Copy representative frames from [x, y] and [z, t] into Photoshop (or the image editor of your choice), isolate the text, combine them into a single still image, and use ImageSource + Overlay.
Chainmax
3rd October 2006, 21:34
Prettz: I don't think I can.
stickboy: I'll try that, thanks :).
Chainmax
3rd October 2006, 22:49
Here's what I have so far:
MPEG2Source("X:\wherever\myvideo.d2v")
Trim(0,1982)+Trim(2355,0)
a = ImageSource("X:\wherever\Frm3.bmp")
Overlay(clip,a)
Overlay's readme doesn't say anything about applying it to a frame range but to a whole clip. I'd rather not have to divide the video in three sections and encode them separately, is there an easier way?
Seed
4th October 2006, 03:59
MPEG2Source("X:\wherever\myvideo.d2v")
a = ImageSource("X:\wherever\Frm3.bmp")
ovl_range = trim(1983, 2354)
Trim(0,1982) ++ Overlay(ovl_range, a) ++ Trim(2355,0)
Not tested, might contains minor syntax errors, but you should get the idea.
stickboy
4th October 2006, 08:17
Overlay's readme doesn't say anything about applying it to a frame range but to a whole clip. I'd rather not have to divide the video in three sections and encode them separately, is there an easier way?Uh, ApplyRange? :)
Chainmax
5th October 2006, 00:30
I tried this
p=last
a = ImageSource("X:\wherever\Otrarr.bmp")
ApplyRange(2354,2357,"Overlay",p,a)
And got an error message saying that I gave invalid arguments to ApplyRange :confused:.
stickboy
5th October 2006, 02:49
The first argument is implicit; it assumes you're trying to apply the given function the clip you're using ApplyRange on. (It wouldn't make sense otherwise.)
Try:
ApplyRange(2354, 2357, "Overlay", a)
You also might find the syntax to my JDL_ApplyRange function (http://www.avisynth.org/stickboy/) easier.
Chainmax
5th October 2006, 17:06
I see, thanks. I remember JDL_ApplyRange, it was faster than Avisynth's version, right? I'll try it instead, thanks for remembering me of it :).
[edit]Using this line:
p = last
a = ImageSource("C:\MPEG-4\Bar Mitzvah Daniel\Otrarr.bmp")
JDL_ApplyRange(2354,2357,"Overlay(p,a)")
I get a I don't know what "p" means error message that points to this line in JDL_ApplyRange:
filtered = Eval(thunk)
foxyshadis
5th October 2006, 18:55
You need to make variables global to use them with JDL_ApplyRange.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.