Over the years I have taken some shot videos with various Kodak point and shoot cameras. Some of this stuff is important to me, but tends to get forgotten out in a folder somewhere on my hard drive. I'm also in the process of converting my old VHS-C video to DVD. I thought I might be nice to mix the MOV videos with the VHS-C ones.
I've been using a Canopus ADVC110 for the VHS-C conversion, so most of that is in DV format. I'm also using Vegas Movie Studio 9 for my edits. Dragging the MOV files to the time line works fine, but viewing the MOV on a TV looks pretty bad.
I'm been playing around with AviSynth to see if I can do a better job there. I'm also going to want to end up placing subtitles containing the date on these MOV files as my VHS-C is already that way. Thought that AviSynth could save me a few steps...or am I better off just staying with Movie Studio. I know this will never look great.
I'm in the US.
Here's a stub of what I have so far:
I'm still a bit foggy on a lot of this--especially the frame rate conversion. Any help would be appreciated.QTInput("UTC 2004-01-01 170128.mov", color=2, audio=true)
ConvertToYV12()
#Convolution3d(0, 32, 128, 16, 64, 10, 0)
LanczosResize(720, 480)
ConvertFPS(30)
AssumeTFF()
#AssumeFPS(30)
SeparateFields()
#SelectEvery(12, 0, 1, 2, 3, 4, 7, 6, 9, 8, 11) #pick 10 fields out of 12
SelectEvery(4,0,3)
Weave()
Subtitle("Test", align=1, text_color=$ffffff, size=18, last_frame=90, x=48, y=432)
Thanks
Here's what MediaInfo says about my MOV files:
General
Count : 261
Count of stream of this kind : 1
Kind of stream : General
Kind of stream : General
Stream identifier : 0
Count of video streams : 1
Count of audio streams : 1
Video_Format_List : H.263
Video_Format_WithHint_List : H.263
Codecs Video : H.263
Video_Language_List : English
Audio_Format_List : ADPCM
Audio_Format_WithHint_List : ADPCM
Audio codecs : U-Law
Audio_Language_List : English
Complete name : UTC 2004-01-11 205053.MOV
File name : UTC 2004-01-11 205053.MOV
File extension : mov
Format : QuickTime
Format : QuickTime
Format/Info : Original Apple specifications
Format/Url : http://www.apple.com/quicktime/download/standalone.html
Format/Extensions usually used : mov qt
InternetMediaType : video/quicktime
Codec : QuickTime
Codec : QuickTime
Codec/Info : Original Apple specifications
Codec/Url : http://www.apple.com/quicktime/download/standalone.html
Codec/Extensions usually used : mov qt
File size : 6434423
File size : 6.14 MiB
File size : 6 MiB
File size : 6.1 MiB
File size : 6.14 MiB
File size : 6.136 MiB
Duration : 27622
Duration : 27s 622ms
Duration : 27s 622ms
Duration : 27s 622ms
Duration : 00:00:27.622
Overall bit rate : 1863564
Overall bit rate : 1 864 Kbps
Stream size : 5672
Stream size : 5.54 KiB (0%)
Stream size : 6 KiB
Stream size : 5.5 KiB
Stream size : 5.54 KiB
Stream size : 5.539 KiB
Stream size : 5.54 KiB (0%)
Proportion of this stream : 0.00088
Title/More : EASTMAN KODAK COMPANY KODAK DX4530 ZOOM DIGITAL CAMERA
Movie name/More : EASTMAN KODAK COMPANY KODAK DX4530 ZOOM DIGITAL CAMERA
Encoded date : UTC 2004-01-11 20:50:53
Tagged date : UTC 2004-01-11 20:50:53
File creation date : UTC 2009-12-23 12:24:18.979
File creation date (local) : 2009-12-23 07:24:18.979
File last modification date : UTC 2008-05-12 23:41:30.000
File last modification date (loc : 2008-05-12 18:41:30.000
Origin : Digital Camera
Video
Count : 149
Count of stream of this kind : 1
Kind of stream : Video
Kind of stream : Video
Stream identifier : 0
ID : 1
ID : 1
Format : H.263
InternetMediaType : video/H263
Codec ID : h263
Codec ID/Url : http://www.apple.com/quicktime/download/standalone.html
Codec : h263
Codec : H.263
Codec/Info : H.263 (3GPP)
Codec/Url : http://www.apple.com/quicktime/download/standalone.html
Codec/CC : h263
Duration : 27622
Duration : 27s 622ms
Duration : 27s 622ms
Duration : 27s 622ms
Duration : 00:00:27.622
Bit rate mode : VBR
Bit rate mode : Variable
Bit rate : 1801315
Bit rate : 1 801 Kbps
Width : 320
Width : 320 pixels
Height : 240
Height : 240 pixels
Pixel aspect ratio : 1.000
Display aspect ratio : 1.333
Display aspect ratio : 4:3
Rotation : 0.000
Frame rate mode : CFR
Frame rate mode : Constant
Frame rate : 14.988
Frame rate : 14.988 fps
Frame count : 414
Bits/(Pixel*Frame) : 1.565
Stream size : 6219513
Stream size : 5.93 MiB (97%)
Stream size : 6 MiB
Stream size : 5.9 MiB
Stream size : 5.93 MiB
Stream size : 5.931 MiB
Stream size : 5.93 MiB (97%)
Proportion of this stream : 0.96660
Language : en
Language : English
Encoded date : UTC 2004-01-11 20:50:53
Tagged date : UTC 2004-01-11 20:50:53
Audio
Count : 130
Count of stream of this kind : 1
Kind of stream : Audio
Kind of stream : Audio
Stream identifier : 0
ID : 2
ID : 2
Format : ADPCM
Format profile : U-Law
Codec ID : ulaw
Codec ID/Url : http://www.apple.com/quicktime/download/standalone.html
Codec : ulaw
Codec : U-Law
Codec/Family : ADPCM
Codec/Url : http://www.apple.com/quicktime/download/standalone.html
Codec/CC : ulaw
Duration : 27622
Duration : 27s 622ms
Duration : 27s 622ms
Duration : 27s 622ms
Duration : 00:00:27.622
Bit rate mode : CBR
Bit rate mode : Constant
Bit rate : 60600
Bit rate : 60.6 Kbps
Channel(s) : 1
Channel(s) : 1 channel
Sampling rate : 7575
Sampling rate : 7 575 Hz
SamplingCount : 209237
Resolution : 16
Resolution : 16 bits
Stream size : 209238
Stream size : 204 KiB (3%)
Stream size : 204 KiB
Stream size : 204 KiB
Stream size : 204 KiB
Stream size : 204.3 KiB
Stream size : 204 KiB (3%)
Proportion of this stream : 0.03252
Language : en
Language : English
Encoded date : UTC 2004-01-11 20:50:53
Tagged date : UTC 2004-01-11 20:50:53
Try StreamFab Downloader and download from Netflix, Amazon, Youtube! Or Try DVDFab and copy Blu-rays! or rip iTunes movies!
+ Reply to Thread
Results 1 to 26 of 26
Thread
-
Last edited by thomasj; 1st Mar 2010 at 15:20.
-
It looks like your source videos were 15fps , and you are trying to integrate this into your project by making it 60i (to match the rest of the DV) - which isn't going to give you good results because there are 4x the temporal samples in DV compared to the camera mov clips.
In your script you have to make it 60fps (not 30) , before you re-interlace it; the way you have it now won't be DVD compliant. So ConvertFPS(60000,1001) - (it's actually ~59.94 fps, not 60fps; "60fps" is just a simple way of saying it)
The basic approaches for frame rate conversions are a) frame duplication b) frame duplication with blending c) frame interpolation (generate new frames) . They all have significant drawbacks. a+b will studder with blurring, c will be cpu intensive and generate new artifacts but will be smoother for playback. ConvertFPS will dupe+ blend.
Also if you want to make it BFF (to match the DV footage, assuming that is BFF), you can use SelectEvery(4,1,2) instead
(not to mention the low resolution and probably quality of the source clips...)Last edited by poisondeathray; 23rd Feb 2010 at 13:40.
-
Thanks poisondeathray, I know the quaiity is going to be bad. I'm just trying to to make is less bad.
MSU_FRC seems to help quite a bit.
Code:Subtitle("Test", QTInput("UTC 2004-01-01 170128.mov", color=2, audio=true) ConvertToYV12() AssumeTFF() MSU_FRC(4, "slow") #Convolution3d(0, 32, 128, 16, 64, 10, 0) #ConvertFPS(60) #StackHorizontal(x,y) LanczosResize(720, 480) SeparateFields() SelectEvery(4,0,3) Weave() Subtitle("Test", align=1, text_color=$ffffff, size=18, last_frame=90, x=48, y=432)
-
MSU_FRC is an example of (c) or frame interpolation . In avisynth, the comparable filters would be mflowfps or mvflowfps (from mvtools2 and mvtools) . On some content, mflowfps is better, on others MSU_FRC is better. You can mix+match frames if you're very picky. YMMV
(Note I edited my above post to include BFF field order information)
You should add AssumeFPS(60000,1001) after the MSU_FRC line, because your frame rate won't quite be exact after MSU_FRC -
Thanks again, yes I just spotted you edits. Stuff I needed to know. Thanks!
Code:QTInput("UTC 2004-01-01 170128.mov", color=2, audio=true) ConvertToYV12() AssumeBFF() MSU_FRC(4, "slow") ConvertFPS(60000,1001) #StackHorizontal(x,y) LanczosResize(720, 480) #Convolution3d(0, 32, 128, 16, 64, 10, 0) SeparateFields() SelectEvery(4,1,2) Weave() Subtitle("Test", align=1, text_color=$ffffff, size=18, last_frame=90, x=48, y=432)
-
It should read AssumeTFF if you want it converted to BFF with SelectEvery(4,1,2) .
Code:QTInput("UTC 2004-01-01 170128.mov", color=2, audio=true) ConvertToYV12() MSU_FRC(4, "slow") ConvertFPS(60000,1001) #StackHorizontal(x,y) LanczosResize(720, 480) #Convolution3d(0, 32, 128, 16, 64, 10, 0) AssumeTFF SeparateFields() SelectEvery(4,1,2) Weave() Subtitle("Test", align=1, text_color=$ffffff, size=18, last_frame=90, x=48, y=432)
It will produce less aliasing than a straight lanczos resize.
Often after upscaling, a light sharpen is helpful as well -
Thanks for the corrections poisondeathray, looks like I wasn't scaling correctly either. I added an "AddBorders".
What do you recommend for sharpening? I was over doing it with ff3dfilter.
Code:QTInput("UTC 2004-01-01 170128.mov", color=2, audio=true) ConvertToYV12() AssumeTFF() MSU_FRC(4, "slow") ConvertFPS(60000,1001) nnedi2_rpow2(rfactor=2) AddBorders(50,0,50,0) #fft3dfilter(sigma=1.5, bt=5, bw=32, bh=32, ow=16, oh=16, sharpen=0.4) SeparateFields() SelectEvery(4,1,2) Weave() Subtitle("Test", align=1, text_color=$ffffff, size=18, last_frame=90, x=48, y=432)
Last edited by thomasj; 1st Mar 2010 at 15:19.
-
I'm assuming you don't want borders?
Since your clips are 320x240 to begin with , you have to scale past 2x , and back down (NNEDI2 only goes in multiples of 2, so the next one would be rfactor=4)
nnedi2_rpow2(qual=3,rfactor=4,cshift="spline36resi ze",fwidth=720,fheight=480)
I would try LimitedSharpenFaster, or LSFMod and adjust the strength to your tastes , but to be honest, with low quality sources , it probably won't make a huge difference. You will get less ringing with those compared to the sharpen in fft3dfilter
As with everything , all these filters and settings are very source dependent, so play with them until you find something you like -
Thanks again poisondeathray. I don't really want borders, but it's more important to me to have everything scaled correctly.
I tried some of you recommendations. As you suspected, they didn't make much difference.
Here's my "final", if I understood everything correctly...
Code:LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\nnedi2.dll") QTInput("UTC 2004-01-01 170128.mov", color=2, audio=true) ConvertToYV12() AssumeTFF() MSU_FRC(4, "slow") ConvertFPS(60000,1001) nnedi2_rpow2(rfactor=2) DegrainMedian(limitY=5,limitUV=5,mode=3) AddBorders(40,0,40,0) SeparateFields() SelectEvery(4,1,2) Weave() Subtitle("Test", align=1, text_color=$ffffff, size=18, last_frame=90, x=48, y=432)
-
But if you are doing this for DVD, I think the 4:3 flag will throw your AR off if you add borders. Your original footages was 320x240 (assuming square pixel, that's a DAR of 4:3) - you're not encoding a square 1:1 pixel DVD
Think of it this way, when you just did the normal lanczos resize to 720x480, you encoded a 4:3 DVD normally and it looked fine, correct? It's the same thing with NNEDI2 upscaling, the AR is unchanged because you scale w,h in multiples of 2. -
I hadn't actually encoded anything yet. Last night I encoded four different versions, and viewed on my television. You were absolutely correct. Thanks for taking the time to look at this. You saved me from making a big mess of everything.
Code:LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\nnedi2.dll") QTInput("UTC 2004-01-01 170128.mov", color=2, audio=true) ConvertToYV12() AssumeTFF() MSU_FRC(4, "slow") ConvertFPS(60000,1001) nnedi2_rpow2(qual=3,rfactor=4,cshift="spline36resize",fwidth=720,fheight=480) DegrainMedian(limitY=5,limitUV=5,mode=3) SeparateFields() SelectEvery(4,1,2) Weave() Subtitle("Test", align=1, text_color=$ffffff, size=18, last_frame=90, x=48, y=432) info()
-
but you're probably going to want to remove the "info()" line before you actually encode
it's always good practice IMO to do a small test encode first, just to test the waters and see if it's going to turn out ok, before potentially wasting time on a long encode -
Yeah, I actually encoded it in during testing. It helped me keep track of my various samples.
Good advise! Thanks -
Ok I'm stuck with a silly question. Now that I know how to convert and clean these videos, what's the best way to save them to a file? I used HC Encode for my testing and it worked great, but since I'm doing my edits in Vegas Movie Studio and the rest of my video is in DV... What's recommended? I could use VirtualDub. Would that do any color space conversions?
For my DV captures (from VHS via ADVC110), I usually do my edits in Studio, save as DV (1 hr segments, no reencoding), then author in DVD Architect--letting DA do the encoding with a 9000 bit rate. Since I keep the edited DV for archive, it seems that I'd want the MOV video also in DV so Studio wouldn't need to reencode these either and I could save as one 1 hour DV clip with both the VHS and MOV parts...
??? -
did you want to save them to a DV-AVI then import into vegas movie studio?
If you use vdub and do all the filtering in avs scripts, you can use "fast recompress mode", which avoids YV12=>RGB colorspace conversion.
Usually footage out of vdub has to interpreted in the editor, or authoring application (aspect ratio 4:3 instead of 1:1 which vdub and avisynth assume)
Note only cuts type editing will pass through without re-encoding in your editor, if you do global changes like color correction, filters etc.... it will still re-encode. In that case it might be better to use a lossless intermediate like huffyuv or ut video codec for all your intermediate steps (even when exporting from vdub) -
I was thinking I wanted to save as DV-AVI for import into Movie Studio. Generally I just do strait cuts in Movie Studio, but perhaps I'll give a lossless codec a try. Can't hurt.
I was thinking I could do the "fast recompress mode" in VD. Thanks for the confirmation.
Sounds like it time for me to stop screwing around and get my last three VHS-C tapes done!
Thank you!Last edited by thomasj; 3rd Mar 2010 at 22:16.
-
I was working my way through my MOV files, until I got to the point were I had bought another camera. Frames are not 15 fps anymore but now are 23.954 fps.
Can I just change this:
Code:MSU_FRC(4, "slow") ConvertFPS(60000,1001)
Code:MSU_FRC(2, "slow") ConvertFPS(60000,1001)
Code:General Complete name : C:\video\in\2005\save\2005-12-13 140645.mov Format : QuickTime Format/Info : Original Apple specifications File size : 7.33 MiB Duration : 52s 600ms Overall bit rate : 1 169 Kbps Movie name/More : EASTMAN KODAK COMPANY KODAK Z760 ZOOM DIGITAL CAMERA Encoded date : UTC 2005-12-13 14:06:45 Tagged date : UTC 2005-12-13 14:06:45 Origin : Digital Camera Video ID : 1 Format : MPEG-4 Visual Format profile : Advanced Simple@L3 Format settings, BVOP : Yes Format settings, QPel : No Format settings, GMC : No warppoints Format settings, Matrix : Default (H.263) Codec ID : 20 Duration : 52s 600ms Bit rate mode : Variable Bit rate : 1 103 Kbps Width : 320 pixels Height : 240 pixels Display aspect ratio : 4:3 Frame rate mode : Constant Frame rate : 23.954 fps Resolution : 8 bits Scan type : Progressive Bits/(Pixel*Frame) : 0.600 Stream size : 6.92 MiB (94%) Language : English Encoded date : UTC 2005-12-13 14:06:45 Tagged date : UTC 2005-12-13 14:06:45 Audio ID : 2 Format : ADPCM Format profile : U-Law Codec ID : ulaw Duration : 52s 600ms Bit rate mode : Constant Bit rate : 64.0 Kbps Channel(s) : 1 channel Sampling rate : 8 000 Hz Resolution : 16 bits Stream size : 411 KiB (5%) Language : English Encoded date : UTC 2005-12-13 14:06:45 Tagged date : UTC 2005-12-13 14:06:45
-
As suggested above, I would use mflowfps. Results are generally better than MSU's plugin on most types of material (less artifacting). If there is too much artifacting, you can add a bit of motion blur. You can look at the documentation for more examples and tweaking parameters. Make sure you use a frame accurate source filter (ie. not directshowsource)
That will give you 60000/1001 ~59.94 fps -
Sorry, I have a couple more questions. I've updated my script as below. I'm using VirtualDub to save to a AVI file before processing via AVSTODVD.
If I save to DV, all is well except my display aspect ratio is 3:2 instead of 4:3.
If I save to HuffyUV or Lagarith, ratio is still 3:2, and isn't marked as interlaced anymore.
How can I fix the display aspect ratio?
What going on with interlacing on HuffUV and Lagarith?
Code:LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\nnedi2.dll") LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mvtools2.dll") v=QTInput("c:\video\in\2005\save\2005-02-06 132312.mov", color=2, audio=true) m=v.GetChannel(1).ResampleAudio(48000) s=mergechannels(m,m) AudioDub(v,s) ConvertToYV12() AssumeTFF() #MSU_FRC(4, "slow") super = MSuper(pel=2) backward_vec = MAnalyse(super, overlap=4, isb = true, search=3) forward_vec = MAnalyse(super, overlap=4, isb = false, search=3) MFlowFps(super, backward_vec, forward_vec, num=60000, den=1001) #ConvertFPS(60000,1001) nnedi2_rpow2(qual=3,rfactor=4,cshift="spline36resize",fwidth=720,fheight=480) #DegrainMedian(limitY=5,limitUV=5,mode=3) SeparateFields() SelectEvery(4,1,2) Weave() Subtitle("02/06/2005 01:23:12 PM", align=1, text_color=$ffffff, size=27, last_frame=300, x=72, y=432)
Code:General Complete name : C:\video\out\short.dv Format : AVI Format/Info : Audio Video Interleave File size : 22.9 MiB Duration : 6s 340ms Overall bit rate : 30.3 Mbps Writing library : VirtualDub build 32706/release Video ID : 0 Format : Digital Video Codec ID : dvsd Codec ID/Hint : Sony Duration : 6s 340ms Bit rate mode : Constant Bit rate : 24.4 Mbps Width : 720 pixels Height : 480 pixels Display aspect ratio : 3:2 Original display aspect ratio : 4:3 Frame rate mode : Constant Frame rate : 29.970 fps Standard : NTSC Resolution : 8 bits Colorimetry : 4:1:1 Scan type : Interlaced Bits/(Pixel*Frame) : 2.360 Stream size : 21.7 MiB (95%) Audio Format : PCM Format settings, Endianness : Little Format settings, Sign : Unsigned Codec ID : 1 Codec ID/Hint : Microsoft Duration : 6s 340ms Bit rate mode : Constant Bit rate : 1 536 Kbps Channel(s) : 2 channels Sampling rate : 48.0 KHz Resolution : 16 bits Stream size : 1.16 MiB (5%) Interleave, duration : 36 ms (1.07 video frame) Interleave, preload duration : 500 ms
General
Complete name : C:\video\out\short-huffyuv.avi
Format : AVI
Format/Info : Audio Video Interleave
File size : 45.0 MiB
Duration : 6s 340ms
Overall bit rate : 59.6 Mbps
Writing library : VirtualDub build 32706/release
Video
Format : Huffman
Codec ID : HFYU
Codec ID/Info : Huffman Lossless YUV and RGB formats (with Alpha-channel)
Duration : 6s 340ms
Bit rate : 58.0 Mbps
Width : 720 pixels
Height : 480 pixels
Display aspect ratio : 3:2
Frame rate : 29.970 fps
Standard : NTSC
Bits/(Pixel*Frame) : 5.600
Stream size : 43.8 MiB (97%)
Audio
Format : PCM
Format settings, Endianness : Little
Format settings, Sign : Unsigned
Codec ID : 1
Codec ID/Hint : Microsoft
Duration : 6s 340ms
Bit rate mode : Constant
Bit rate : 1 536 Kbps
Channel(s) : 2 channels
Sampling rate : 48.0 KHz
Resolution : 16 bits
Stream size : 1.16 MiB (3%)
Interleave, duration : 36 ms (1.07 video frame)
Interleave, preload duration : 500 ms -
everything should be fine when you encode to MPEG2 and/or author it - the 16:9 flag is set then, and you encode as interlaced. vdub and avisynth work with square pixel 1:1, so a 720x480 frame size will give a DAR of 1.5 (or 3:2) as expected
mediainfo just reads the flag in either the header or stream. It's often incorrect, because the actual content is interlaced. Progressive content can be flagged as interlaced and vice-versa. It's the actual content that matters (and what you do with it after).
also , I think your "subtitle" should be placed before it's reinterlaced (before the separatefields line) - what is it exactly?
try it out, and check out the final export. If it isn't ok, then report backLast edited by poisondeathray; 22nd Mar 2010 at 13:45.
-
^I made some edits above in my post, I think you should change your subtitle placement (the order in the script), because the way you have it now it's overlayed on top of the interlaced video, not overlayed on the progressive video then interlaced
There must be some options to disable that stuff (like borders, resize) in avstodvd? (I'm not too familiar with it)
Otherwise, you could encode using HCEnc instead ; you will get exactly what your script indicates. (just preview your .avs script in vdub or avsp)
Also note, HCEnc accepts .avs scripts directly. So it's not necessary to use intermediate like huffyuv. (Although if you are using a 2pass encode with heavy filters in the script it may still be faster to do it that way) -
-
Since the subtitle is static, it shouldn't make any difference.
Thank you poisondeathray and Gavino!
PS - Does it make a difference if you do the frame interpolation or resizing first? -
It's not so much "interlaced-aware", more like "interlaced-neutral".
Since the subtitle is the same on all affected frames, subtitle+interlace gives the same result as interlace+subtitle. (This would not be true for a scrolling title, for example.)
Does it make a difference if you do the frame interpolation or resizing first?
Similar Threads
-
Converting/Combining MOV's and other formats to produce a Power Point
By rocks911 in forum Video ConversionReplies: 4Last Post: 20th Mar 2012, 09:48 -
Problem with converting MOV files from iMovie / Camera
By pred02 in forum Video ConversionReplies: 1Last Post: 23rd Sep 2009, 02:25 -
From Point & Shoot Digital Camera AVI to Xvid High Quality
By kamil in forum Video ConversionReplies: 5Last Post: 25th Jul 2009, 09:28 -
point and shoot videot to DV
By indijay in forum Video ConversionReplies: 8Last Post: 13th Sep 2008, 23:41 -
point and shoot with great video mode?
By mrtunes in forum Camcorders (DV/HDV/AVCHD/HD)Replies: 9Last Post: 5th Sep 2008, 16:42