View Full Version : how to write 17fps source video to DVD ?
bachopin
2nd July 2003, 12:21
Hi everyone,
I got some very old vintage footage that was shot
at 17 fps. I'd like to convert this source material
to PAL-MPEG2 and eventually write to DVD+R or SVCD/CVD.
The problem I faced during my first attempt was how to
convert it to 25 fps without too much hassle and to achieve
the more importantly visually smoothest results.
I believe standard 3-2 pulldown is designed for Film(24)
-> NTSC(29.9) but maybe some other similar tools exists.
I normally use Vdub + Avisynth 2.08 + CCE for the process.
All comments are warmly appreciated...
Best regards
Peter Dekany
from Hungary
I never tried this, but i think, a Framerate-Conversion should work.
ConvertFPS(25, zone=80)
ppera2
2nd July 2003, 14:55
By my experience ConvertFPS gives best results (at least by freeware programs).
It inserts some blending, but it's better than simple frame duplication.
You can try it with and without zone parameter, and see what is better for you.
Wilbert
2nd July 2003, 15:25
I moved it to the Avisynth forum, because (imo) AviSynth is the best way to go ...
scharfis_brain
2nd July 2003, 15:41
IMO this method will give the best results (best fluidity/ no ghosts), but I'm not able to make an avisynth script for this:
17 fps is very close to 16,66666fps
and 16,666 * 3 = 50 fps
so it would be clever to slowdown the video from 17fps to 16 2/3 fps
( assumefps(16,6666666) )and then tripeling every frame, so that 50fps will be achived ( changefps(50) )
Then you have to reduce the progessive 50 full-fps to interlaced 50 half-fps. But I don't know, how to do this last step.
btw. the audio has to be slowed down , too!
replace xxx with your actual samplerate (xxx=44100 or 48000)
assumesamplerate(xxx/1.02)
resampleaudio(48000)
@Bach
I think your solution will work but is not the best one, because you get a unsymmetrical order of the Pictures. But without having such souce, i don't have a better Idea. I think, blending some Frames/Fields will do a better job.
Awatef
2nd July 2003, 17:17
My motto is: avoid blending where you can! sharfis idea is the best IMHO, but he got it a little bit off, because 16,66fps is very odd and unprecise.
Better do this:
SelectEvery(1,1,1,1)
AssumeFPS(50)
SeparateFields()
SelectEvery(2,1)
Weave()
And encode interlaced.
You have to slowdown the audio a little bit (102%)
My motto is: avoid blending where you can!
And that's often right, but IMO not in any case.
@Bach
Hum, there it is again, my Language-Problem...
If you just doubling the Frames, you will get different patterns, because the needed doubling-factor for smooth motion is 2, not 1.47. (25/17). Some single Frames will stay too long on screen, this will be noticable.
So, my oppinion is to blend and encode it as interlaced Video (ConvertFPS instead of ChangeFPS). This will double some Frames and blend some. I guess, the motion will be smoother.
I think, it's a good idea to test the different way's provided here.
Awatef
2nd July 2003, 17:35
@ bach
about selectevery(1,1,1,1): yeah, whatever, it's actually the same when it comes to framerate, that it begins one frame later or earlier is not the end of the world.
about selectevery(2,1): you're right, sorry, didn't pay attention
OK then, here is the final perfect avs script:
SelectEvery(1,0,0,0)
AssumeFPS(50)
SeparateFields()
SelectEvery(4,0,3)
Weave()
encode interlaced
and slowdown audio (102%)
scharfis_brain
2nd July 2003, 17:45
If you just doubling the Frames, you will get different patterns, because the needed doubling-factor for smooth motion is 2, not 1.47. (25/17). Some single Frames will stay too long on screen, this will be noticable.
@Kika:
we're talking about 50fps, not 25fps!
so the "doubling-factor" is 50/17 = 2,94... , which is close to 3.
the final sequence will be like this:
1 1 2 3 3 4 5 5 6 7 7 8 9 9
1 2 2 3 4 4 5 6 6 7 8 8 9
so there will be no jitter in motion. because every frame is shown three times on TV.
@scharfis_brain
Maybe you are right (and maybe i'm too tired from work ;) )
Awatef
2nd July 2003, 20:03
Bach may be right guys.
Take 24fps sources displayed on NTSC TVs for example.
They are showed in 3:2 pulldown, and it looks smooth (1st picture: 2fields, 2nd picture: 3fields, 3rd picture: 2fields, etc)
But Bach, you sure changeFPS(50) will make it exactly as you described? (don't have time to check :D)
After thinking about that, i think, Bach is right, but i'm not absolutly sure. I have never dealt with other Framerates than 23.976, 25 or 29.97 FpS. But it's very interesting to see some different solutions for one Problem. ;)
bachopin
3rd July 2003, 07:51
I'm very grateful for these many suggestions ( and the same time
a bit confused too :) )
I'll try the suggestions in order.
Anyway, if anyone of you would like to check (and practically maybe try his own theory ) on the source 17fps video I was reffering to, so
I decidec to put online a ~3MB sample of it.
www.icelife.hu/_temp/newyork_city_fair_1939_kodak_color.avi
Thanks a lot for your answers..
Best Regards
Peter Dekany
OK, if i find the time, i will check it.
Done...
The Source-Video has a very small resolution. How did you capture it?
If you want the Video that small, then there's no need to do any complicatet things.
BicubicResize(352,288)
convertFPS(25)
That's enough. Gives you some slight "Ghost-Pictures" (a little like deinterlaced Video), but smooth motion and Audio will stay sync.
If you want it with a higher reslolution, Bach's Solution is OK. My own is working too. But than you should capture the Video in Full Screen. With 320x240, you cant expect good results.
scharfis_brain
3rd July 2003, 10:01
oh, a highly compressed an strong filtered Video...
but this script works fine:
avisource("d:\17fps\17fps.avi")
changefps(50)
lanczosresize(704,576)
SeparateFields()
SelectEvery(4,0,3)
Weave()
bachopin
3rd July 2003, 10:10
many thanks for your efforts Kika...
Regarding the size it was a reduced version of the original material - I didn't want to put online the original one beacuse of file size regulations ot the server.
The source is HALF-D1 resolution (352x576.)
I'll try to follow the steps that you and others
are kindly suggested.
Thanks again
D. Peter
scharfis_brain
3rd July 2003, 10:15
If your source is half D1, you can use this script WITHOUT lanczosresize.
avisource("d:\17fps\17fps.avi")
changefps(50)
SeparateFields()
SelectEvery(4,0,3)
Weave()
the DVD-Standard allows 352x576.
@bachopin
OK, than do it the Way, Bach and Scharfi suggested.
ConvertFPS() works too, but only in switch mode not in blend mode (without zone=80, which i posted first).
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.