Post subject: 60fps to 30fps drop vs mashing, 4 video encode experiment
Joined: 9/26/2007
Posts: 55
Location: Michigan
Uh, hello. So I've been trying a handful of various methods of converting 60fps videos to 30fps. I have for years, actually, off and on, and I figured I would share what I have figured out since I am no longer inexperienced with AviSynth. http://dl.dropbox.com/u/61653020/Super_C-60FPSto30FPS_Fourways.mp4 This is published video #830, Super C, in a quad video like the NES Mega Man video that blew my mind. It's all sourced from the same (lagarith/rgb) dump. I have no idea on earth what the sound output from the .avs file is like; I simply loaded the source dump alone and dumped the .wav and used Nero AAC to make the actual .m4a I embedded into the .mp4. For encoding I used AviSynth/VirtualDub/x264 VFW (writing to a separate .mp4 file) and "My MP4 Box GUI" to merge the video/audio. The bitrate is ludicrous so you can expect little to no artifacts in the compression; this is a showcase, not a publishable thing. I guess this is useful for watching specific parts repeatedly while focusing on different sections to see how flicker/motion is handled? Generally speaking, I have almost zero idea what in the world I'm doing. http://pastebin.com/Wp15pXmf There's the .avs script I pieced together with a hammer and a block of cheese. I love these movies and I have a tendency to be uncontrollably obnoxious which is why my post count is so low; I love this site and I love what you guys do, so, I just stay out of it as to not ruin it for myself. But in any case, I figured I'd share this since I worked on it for a bit. I guess I'm up for answering questions if any pop up, it's all pretty well explained. I'm still looking for/playing with other motion compensation methods. If someone wants the plugins I suppose I could slap them on mediafire pretty quickly. So, um, yeah. >_> I know the community has voted against this sort of thing but I have a habit of making personal .mp4's for my phone and I figured there might be other people that do as well. IMO the frame merger plugin wins because it's so subtle, it tends to not blur up fast motion the way other methods are prone to.
creaothceann
He/Him
Editor
Joined: 4/7/2005
Posts: 1874
Location: Germany
In any case it could at least be made more readable...
LoadVirtualdubPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\framemerger.vdf", "VD_FrameMerger", 1)        # automatically loaded ???
#         LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\PointSize.dll")                               # automatically loaded


AVISource("dongs.avi").ConvertToRGB32

AA = ChangeFPS(30).PointResize(512, 448)
BB = Scale2x.VD_FrameMerger(2, 0).ChangeFPS(30)
CC = LQ2x.ConvertToYUY2.ConvertFPS(30, zone=223).ConvertToRGB32
DD = HQ2x.ConvertToYUY2.ConvertFPS(180).AssumeFieldBased.Weave.AssumeFieldBased.Weave.LanczosResize(512,448).AssumeFrameBased.ConvertFPS(30).ConvertToRGB32

AA = AA.Subtitle("30 Frames Dropped, Point Resized"                             , font="ubuntu", size=12, text_color=$F0F0F0, align=7)
BB = BB.Subtitle("VirtualDub Frame Merger Plugin (25%, No Propagation), Scale2X", font="ubuntu", size=12, text_color=$F0F0F0, align=9)
CC = CC.Subtitle("AviSynth ConvertFPS 30, Max Zone, LQ2X"                       , font="ubuntu", size=12, text_color=$F0F0F0, align=1)
DD = DD.Subtitle("AviSynth ConvertFPS 180, Weave X2, ConvertFPS 30, HQ2X"       , font="ubuntu", size=12, text_color=$F0F0F0, align=3)

StackVertical(StackHorizontal(AA, BB),
\             StackHorizontal(CC, DD))

Subtitle("TASVideos.org #830 NES Super C TAS 12:20.02 by Baxter & adelikat", font="ubuntu", size=24, text_color=$6060f0, align=5, last_frame=135)
Joined: 9/26/2007
Posts: 55
Location: Michigan
That's definitely more pleasing to the eye, but I was only following examples from AviSynth's own wiki. Also I actually have almost a dozen separate incarnations of single file ones I was toying with before I figured out how to make a four-video encode, so I picked the simplest route to slam them together (I have seen enough AviSynth error messages to last me until the end of time). Also those plugins should be loaded automatically I agree, but they only are about half the time unless I call them specifically. I am not alone with this weird problem but it doesn't affect most people. Thanks.