Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
23rd August 2010, 20:31 | #1 | Link |
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
How convert video 30i to 120p
Hi, i like know how could convert hibryd material at 30i to 120p (fields for second). That should be a optional case if i dont want use matroska files.
One code could be: Code:
DGDecode_mpeg2source("E:\Bleach\141.d2v", info=3) Tdeint(mode=1) Tdeint(mode=1) Thanks |
25th August 2010, 02:08 | #2 | Link |
Derek Prestegard IRL
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,988
|
AFAIK, you should just convert to 60p, or keep it interlaced.
Two instances of TDeint(mode=1) won't do any good. Derek
__________________
These are all my personal statements, not those of my employer :) |
25th August 2010, 07:39 | #4 | Link | |
Registered User
Join Date: May 2007
Location: Wisconsin
Posts: 2,130
|
Quote:
Secondly, why are you wanting to go from 30 frames/sec interlaced to 120 frames/sec progressive? What are you hoping to achieve by doing that? |
|
25th August 2010, 12:52 | #5 | Link | ||
Registered User
Join Date: Apr 2008
Location: St. Petersburg, Russia
Posts: 334
|
Quote:
in place of second TDeint would do the same duplication and slightly better. Quote:
|
||
25th August 2010, 13:07 | #6 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
Guys ...
the question is not how to get 120fps. The question is WHY. Reminder: Hybrid content, containing a mix of 24fps and 30fps. Does that ring a bell? Now you can proceed with discussing. *** Oh, BTW: keep in mind that CRTs are slowly disappearing (CRTs can handle 120fps - not all, but many), and 120Hz TFTs are quite new and not common yet. Todays most typical desktop monitor is a 60Hz budget TFT that is unable to display 120Hz content.
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) |
25th August 2010, 13:44 | #7 | Link | |
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
@Dideé
Why? Because if i dont want use to matroska files, it is the only way to do good deinterlacing, isnt it? I read post and post, and the mcm of 24 and 30 is 120. It is for this reason for which i like know as encoded at this constant framerate, with optimal result, from hibryd source. Quote:
If I am wrong on the technical basis, could you explain why, please? Last edited by Overdrive80; 25th August 2010 at 13:53. |
|
25th August 2010, 13:51 | #8 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
Thanks for explaining, but I already know the why's and how's. And also the whynot's and hownot's.
In a nutshell: you have to isolate the (telecined) 24 fps parts and the (interlaced) 60i parts, process them seperately (telecine parts: first IVTC, then make 3:3:3 pulldown // interlaced parts: bob deinterlace, then make 2:2 pulldown), and finally stitch everything together again. Having accomplished this workflow, you have a 120fps clip that displays as intended on ancient CRT tubes and future 120Hz panels, but not on any typical 60Hz TFT of today.
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) Last edited by Didée; 25th August 2010 at 14:10. |
25th August 2010, 15:16 | #9 | Link | ||
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
Quote:
Quote:
IVTC would be tfm() and Bobber (f.e.) McBob() But when you say pulldown 3:3:3 and 2:2, i dont know how write it in code for script, maybe could help me, please? I have a thirst for knowledge / |
||
25th August 2010, 16:03 | #10 | Link | |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
Where did I have my brain, to write 3:3:3 pulldown? That's wrong, of course the 24fps parts need 5:5 pulldown to get 120fps.
For example, yes. Just that IVTC would be TFM().TDecimate(), and I for one would not use MCBob anymore. Quote:
Code:
source = whatever # prepare the two different processings vid24 = source.TFM().TDecimate() vid60 = source.bob() # plenty of different bob filters are available, can't tell which one you prefer # prepare frame pulldown vid24_120 = vid24.selectevery(1, 1,1,1,1,1) # for every 1 frame, do output 5 times the same frame vid60_120 = vid60.selectevery(1, 1,1) # for every 1 frame, do output 2 times the same frame # splice together vid24_120.trim( 0*4, 1000*4 + 3 ) ++ vid60_120.trim( 1001*4 , 4000*4 - 1 ) ++ \ vid24_120.trim( 4000*4, 5000*4 + 3 ) ++ vid60_120.trim( 5001*4 , 8000*4 - 1 ) ++ \ vid24_120.trim( 8000*4, 9000*4 + 3 ) ++ vid60_120.trim( 9001*4 , 0 ) return(last)
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) Last edited by Didée; 25th August 2010 at 16:16. |
|
25th August 2010, 16:15 | #12 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
There's a stupid mistake in it - the base framerate is 30fps, hence the factor is "4" (120/30), not "5". I'm editing the script right now.
Edit: Done.
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) Last edited by Didée; 25th August 2010 at 16:17. |
25th August 2010, 18:47 | #13 | Link |
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
I test two codes for separated
First Code:
DGDecode_mpeg2source("E:\DB_1\Opening\NF\ope.d2v", info=3)+\ DGDecode_mpeg2source("E:\DB_7\41\41.d2v", info=3) ColorMatrix(hints=true, interlaced=true, threads=0) source=last # prepare the two different processings vid24 = source.TFM().TDecimate() vid24_120 = vid24.selectevery(1, 1,1,1,1,1) # for every 1 frame, do output 5 times the same frame vid24_120 Second Code:
DGDecode_mpeg2source("E:\DB_1\Opening\NF\ope.d2v", info=3)+\ DGDecode_mpeg2source("E:\DB_7\41\41.d2v", info=3) ColorMatrix(hints=true, interlaced=true, threads=0) source=last # prepare the two different processings vid60 = source.bob() # plenty of different bob filters are available, can't tell which one you prefer # prepare frame pulldown vid60_120 = vid60.selectevery(1, 1,1) # for every 1 frame, do output 2 times the same frame vid60_120 Dont should framecount be the same in both cases? |
25th August 2010, 20:45 | #14 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,389
|
Not necessarily. The *exact* number of total framecount after IVTC is a dice game. IVTC makes 4 output frames out of 5 input frames. If you have an input stream of 50 frames, the output (should) be 40 frames. But what if your input stream is 49 or 48 frames, or 51 or 52?
The exact number depends on the length of the input, on how the pattern is distributed, on how the decimator is making decisions, and so on. There is definetly an uncertainty of +/-1 frame, and even +/-2 frames would not be a surprise. And since the IVTC'ed frames are 5-folded (to make 24fps->120fps), you can easily get a difference of 5 frames, or maybe even 10 frames, in the total frame count.
__________________
- We´re at the beginning of the end of mankind´s childhood - My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!) |
26th August 2010, 05:20 | #16 | Link | ||
Registered User
Join Date: May 2007
Location: Wisconsin
Posts: 2,130
|
Quote:
Quote:
BTW, the video rates are really 23.976, 29.97, 59.94 and 119.88, not 24, 30, 60 or 120. You can thank our idiot FCC for causing that problem way back when color TV was standardized all those many years ago. |
||
26th August 2010, 11:28 | #17 | Link | |||
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
Quote:
Quote:
Quote:
24000/1001=23.976.. 30000/1001=29.970.. 60000/1001=59.970.. 120000/10001=119.88.. Bye |
|||
26th August 2010, 18:45 | #18 | Link | ||
Registered User
Join Date: May 2007
Location: Wisconsin
Posts: 2,130
|
Quote:
Quote:
The same thing applies when I take 1080i29.97 video that is sourced from 1080p23.976 and convert it back to 1080p23.976 using AVISynth tools. The result, even though it came from interlaced video, having fields, the result is now progressive and is frames only. The correct terms MUST be used according to the video material type. |
||
26th August 2010, 19:00 | #19 | Link | ||
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
Well If I am wrong, when they refer to hybrid material, is that video that has parts telecined and other purely interlaced. Both parts have the same frame rate, but have been so interlaced different.
Quote:
There are Japanese video at these rates, which may be actually encoded videos at 120 fps using a video capture with that option Quote:
Last edited by Overdrive80; 26th August 2010 at 19:07. |
||
28th August 2010, 17:21 | #20 | Link | |
Moderator
Join Date: Nov 2001
Location: Netherlands
Posts: 6,364
|
Quote:
If you want to create a 120 (frames) fps avi you need to add drop frames: http://avisynth.org/mediawiki/VFR#en..._cfr_-_120_fps (instead of encoding all the 120 frames). |
|
Thread Tools | Search this Thread |
Display Modes | |
|
|