Log in

View Full Version : 59.941 inside of 29.976


SamuelPG
27th September 2005, 11:35
With the next Avisynth script i can doubling the framerate of one video captured with 29.976 fps (Interlaced) and now have a real and greate real movement.
My question is the next: How i can encode a video with 29.976 fps that it contains 59.941 internally That I need for obtain a real video movemente like from the tv?.
This is the script i used for doubling the framerate obtaining fantastics results, but please remain what i need to do, have this 59.941 fps internally in 29.976 fps.
---------------------------------------------------------------
Loadplugin("D:\Programas\001 CAPTURA DE VIDEO\filtros\TomsMoComp.dll")

avisource("d:\lol.avi")

ConvertToYUY2()

top = AssumeFrameBased().ComplementParity()
bottom = top.SeparateFields.Trim(1,0).weave
Interleave(top.TomsMoComp(1,5,0),bottom.TomsMoComp(0,5,0))
---------------------------------------------------------------
Here an example with the 2 framerates:
59.941 http://www.megaupload.com/?d=HEQ2PAP0
29.976 http://www.megaupload.com/?d=ZA2FIB57
Thank you in advance
Samuel.

Wilbert
27th September 2005, 11:59
Do you mean 29.97 interlaced to 2*29.97 progressive? Look for a script called KernelBob.

edit: stupid typo :)

Mug Funky
27th September 2005, 12:18
you mean maintain the smooth motion of 59.94 in a 29.97 stream? the only way to do that is to re-interlace it.

this will completely undo the deinterlace you performed earlier, so i suggest you simply keep the video interlaced and encode it as such.

if you (for whatever reason) want to re-interlace a progressive source, do it this way:

assumebff()
separatefields()
selectevery(4,1,2) # 4,0,3 if you want bottom-field first for DV playout
weave()
assumetff() # assumebff() for bottom field first

[edit]

by the way, the framerates for NTSC are approximately 29.97, 23.976 and 59.94. you find them by dividing 30, 24, 60 by 1.001

SamuelPG
28th September 2005, 00:50
you mean maintain the smooth motion of 59.94 in a 29.97 stream? the only way to do that is to re-interlace it.

this will completely undo the deinterlace you performed earlier, so i suggest you simply keep the video interlaced and encode it as such.

if you (for whatever reason) want to re-interlace a progressive source, do it this way:

assumebff()
separatefields()
selectevery(4,1,2) # 4,0,3 if you want bottom-field first for DV playout
weave()
assumetff() # assumebff() for bottom field first

[edit]

by the way, the framerates for NTSC are approximately 29.97, 23.976 and 59.94. you find them by dividing 30, 24, 60 by 1.001

Yes !, i want maintain the smooth motion of 59.94 in a 29.97 stream, But Thanks !, somethimes i need re-interlace too !!! :eek:

Mug Funky
28th September 2005, 04:40
yeah... de-interlace/re-interlace is good for stuff like standards conversion, (vertical) risizing, or anything that involves a framerate change, but for anything else it's quickest and least hassle to just maintain interlace.