I thought Bob() pulled the two frames apart then filled in the missing lines by interpolation. So the even field gets interpolated data in all the odd scanlines. The odd field gets interpolated data in all the even scanlines. But maybe not.
Does not return the original video.Code:WhateverSource() Bob() SeparateFields() SelectEvery(4,0,3) Weave()
+ Reply to Thread
Results 31 to 53 of 53
-
Last edited by jagabo; 8th Mar 2013 at 18:04.
-
But is that a good way to have it when cleaning up?
Wonīt the filtering and cleaning be a bit messed up thanks to the interpolation that will just be used temporarily?
Have you worked with this, if so how do you filter it, do you make it progressive temporarily, or do you make all the cleaning while itīs interlaced.
Cause some people supports this, but others donīt from what i have seen atleast. -
There are many ways to make interlaced video progressive but all of them involve some kind of compromise. There will never be any way to perfectly restore the missing scanlines in interlaced video. Ie, you cannot prefectly recreate two full pictures from two half pictures. In fact, that's why there are so many different deinterlacing filters.
Last edited by jagabo; 8th Mar 2013 at 18:24.
-
No, you got it right. And you're also right about QTGMC filtering both fields on its own (even if you're not using additional filtering). If you like the filtering it does (and most people do), then that's a good thing.
jagabo says Bob doesn't return the original video after using Bob. Like I said, I thought we've had this conversation before but can't remember just where. -
The other option is to use VFR encoding. So 50fps setions play @ 50fps, 23.976fps sections play at 23.976, 29.97 plays at 29.97 etc... ie everything plays at the correct speed . You normally do a 2pass TIVTC VFR to generate timecodes. You can read the examples and documentation in the TIVTC package.... BUT - your case is even more difficult, because there is field blending, and presumably you want to get rid of that. This means you have to manually keep track of frame ranges: bobbed, srestored, and joined frame ranges and timecodes for the joined ranges
Your example is about 12 fps animation, and the "live section" is 50 fps (but composited elements in the live section run at different speed than the base 50 - but it's not easy to fix those without manual masking & rotoscoping)
dgindex, file=>save project and demux video -
Well i understand that itīs impossible to make a fully interlaced movie, 50/60p without guessing content.
As half of the information is gone.
But normal interlaced content should be perfectly fine right?
I mean, as long as itīs just one piece there and one piece there, put together and we got a complete frame.
Manono, i am not sure, maybe we have had this conversation, i remember we had one kind of conversation before, but not about what it was;S
But jagabo, what do you do when you want to clean a video thatīs both pure and normal interlaced.
Thatīs the point i am asking, i think you guys misunderstand about how i asked how i can make it progressive, why i asked that was because i thought you had to make it progressive before you can clean, and then you have to put it back to interlaced again.
I am just wondering how i am supposed to clean and filter this kind of video. Or maybe there isnīt any correct way, except keeping it interlaced one way or the other, to keep the 25/50 fps? -
What's normal interlaced content? You mean progressive frames encoded interlaced? Yes, you can treat that as progressive video. The the chroma channels are fuzzier than true progressive frames.
You should handle the progressive and interlace sections separately. For example running QTGMC() on the progressive sections will result in duplicate frames -- temporal filters won't work well with that.
There are some filters that don't require deinterlacing, or that have interlaced modes. But most filters require converting your video to progressive to prevent the fields from contaminating each other.
You only have to weave it back to interlaced if you need it interlaced. -
I haver read a bit about this. Though itīs a bit complicated, but may be the way to go.
But i donīt really get what you mean with field blending, do you mean the blended frames?
Cause they are there on the NTSC version as well.
I think the only difference here is that the PAL is played 1 frame faster. Or 1 frame is added/blended, but i do think it just plays faster as thatīs normally the case.
And as many frames are blended, only a few are Clean, and thatīs often Static stuff, i donīt think itīs ever Clean in constant movement. -
I mean the Interlacing whre you get the same FPS as it shows.
AbBcCeEf
Well thatīs probably wrong, but when itīs Progressive, but the Fields are out of sync.
So you just have to remove the first field, and then move every field back one step, and then everything is progressive.
But both are interlaced. But i can work seperately then aswell, but i guess thatīs where VFR comes in, or if i can keep it interlaced so make the player do what the TV would have done.
Yeah and thatīs the other problem, most advanced seem to work only or better with progressive material. So i would prefer to be able to make the content progressive and then back. But i will lose information, so it may be better to just let the 50i become 50p, and let VFR do the rest to make sure that the 25p stays 25. -
Yes. Or you can use TFM() -- especially if the video slips in and out of phase.
The out-of-phase portions aren't really interlaced. They don't encode 50 different (half) pictures per second, only 25. If you bob them you will have duplicate frames. -
I should mention this VFR is only for video files, it won't work if you were planning to reinterlace or go back to DVD or blu-ray.
What jagabo said about filtering is important: duplicates will reduce the effectiveness of filtering (esp. temporal filters)
No, I really meant field blending. When you deinterlace or bob deinterlace, essentially each field gets resized to a frame (+/- other processing and interpolation)
And as many frames are blended, only a few are Clean, and thatīs often Static stuff, i donīt think itīs ever Clean in constant movement.
VFR works by getting rid of duplicates and adjusting playback speed. So for a typical 12FPS animation that is "24p" in NTSCLand, every 2nd frame is duplicate. The duplicates are removed and the file plays at 12FPS. It looks and plays identical as the original but has 1/2 the number of frames - does that make sense ?
The problem you have is mixed field blended sections with interlaced sections . It's difficult to do because you have use something like srestore those animation sections and keep track of the new frame numbers of those sections for the timecodes file .The frame numbers will change, because some blended frames will be removed ("frames" now, because it has been bob deinterlaced to frames before using a restore filter) . "Normal" VFR encodes, like smrpix's Star Trek TNG example is done almost "automatically" by using 2pass TIVTC
You might restore and get rid of the blends in the the animation sections to clean frames ~12 FPS , or leave those sections blended at 25p . The blends do smooth playback at the expense of looking more "blurry" . But decimating back to unique framerate will strobe more or appear more choppy. -
Yes. Or you can use TFM() -- especially if the video slips in and out of phase.
The out-of-phase portions aren't really interlaced. They don't encode 50 different (half) pictures per second, only 25. If you bob them you will have duplicate frames.
But i wonder, the file i sent before. How does the player solve it?
Does it just ruin the 25fps part and play it as 50fps, meaning it will get duplicates and be half the resolution, is does it play 25 on 25 parts and 50 on 50?
And how does the original VCR-> TV play this stuff, does it play right or 50fps all the time?
Cause i thought that the original interlaced movie is being played perfectly, thatīs why i have a hard time understanding how to clean up this kind of VFR movie.
But if it doesnīt play correctly, does that mean that only now, when we have the ability to make VFR and stuff, we are able to watch the movie without compromising quality/fps?
you analyze the fields, you will notice the blends are only made up of a mix of surrounding clean fields . There are no blended fields that do not have a "clean field" counterpart. The base animation rate is low, about 12 FPS - that's normal for animation of this era .
VFR works by getting rid of duplicates and adjusting playback speed. So for a typical 12FPS animation that is "24p" in NTSCLand, every 2nd frame is duplicate. The duplicates are removed and the file plays at 12FPS. It looks and plays identical as the original but has 1/2 the number of frames - does that make sense ?
I understand that the original i possibly 12 FPS, all the animations effects etc is probably there, Except movement, panning, that is probably 24/25 fps.
But as said, isnīt it impossible to clean up a 24p made cartoon to 12fps, if it uses panning at 24p with frame blending to achieve smoothness?
I am not sure if all that came out well, but hopefully you understand somewhat what i am trying to say. -
Yes.
That's not a problem at all. TFM() will adapt to the in-phase and out-of-phase section, producing 25 fps progressive all the time. If you have true interlaced video (each field is a from a different picture, ie a different point in time) you will have to isolate those sections and handle them separately.
When putting out analog video they will output 50 fields per second. When putting out interlaced digital they will send the interlaced frames directly to the TV where the TV will deinterlace (assuming a progressive TV) to 50 frames per second (with duplicate frames if the source is progressive). When putting out progressive digital they will bob to 50 fps progressive.
VCRs are pure interlaced devices. They always output 50 fields per second. Then the interlaced TV displays the video at 50 fields per second. A digital TV will bob to 50 frames per second.
There are no frames in interlaced analog video. Only a stream of fields, always alternating between top and bottom fields. -
separate the fields to examine the fields. 2 fields make up 1 frame
mpeg2source()
assumetff()
separatefields()
But as said, isnīt it impossible to clean up a 24p made cartoon to 12fps, if it uses panning at 24p with frame blending to achieve smoothness?
If you liked the way the interlaced version played, I would leave it interlaced or bob to 50p , and accept that filtering will be less effective, (it's much easier to do it this way) . -
So if i understand correctly.
If a Tape or DVD with 25 Out-of-phase content and 50i content is played, it will always play bobbed. Meaning the 25fps content will have lesser quality then it should have, and will have duplicated frames.
If thatīs the case, only through Avisynth and similar stuff, is the way to ensure that this kind of video is played in itīs entire glory. Am i correct?
It's not "impossible". If your intent is to keep blended frames, it's still possible to clean it , just more work. You could restore to 12, clean it up, then introduce blends back to 24p (e.g. convertfps) . The problem is restore filters like srestore arent perfect. Although temporal filtering is less effective with blended frames in between or with duplicate frames, it's a lot easier to treat it as is
Cause i wanted to do it before, but one said it would be very hard work, so i thought it was no idea in trying.
Can you try and show me with this clip, it should have plenty of content to go with.
Though, i do wonder if it doesnīt use fully interlacing for some stuff now when i compare it.
50i seems alot smoother then 25p on this material, but i canīt see that itīs 50i all the time on an cartoon.
Thanks.
Edit: Okay from looking at this content, i think it used 50i, cause if i look at it with:
separatefields()
It changes on every frame.Last edited by zerowalker; 9th Mar 2013 at 11:05.
-
Since there are no frames on tape it can't be in-phase or out-of-phase. There is only an alternating sequence of top and bottom fields, one after another, 50 fields per second. It's only when digitized and woven together that you have frames.
25p content, stored as out-of-phase fields in YV12 will have lesser quality than when stored as progressive frames because interlacing YV12 blurs the chroma more. It may also have lesser quality because the encoder is less efficient with interlaced encoding. With YUY2 there may be no difference in quality because each scanline has its own chroma.
It depends on your source, your player, your TV, and what you do with AviSynth. I don't want to spend all day covering all possibilities.
That's correct. But it looks to me like the video was originally 24p, telecined to 30i, converted to 25i with field blending, then way over compressed. It can be nominally returned to 24p.Last edited by jagabo; 9th Mar 2013 at 11:54.
-
What i mean about the 25 fps on TV is.
Letīs say i play a movie thatīs really 25p.
But if itīs played on an VCR, it canīt be 25p.
As itīs sent as lines, that then has to be put together to become a frame.
But, if it sends 50 lines per second, that would mean that half of those lines are duplicated, right?
As the content is really just 25 frames.
So the content will then be displayed as 50i, in other words, every other frame is a duplicate.
But that would mean that it would also show it as half itīs height, so it would have to interpolate to make it 50 frames.
Meaning that the 25fps content would become 50fps with half itīs height.
Is this correct? -
Again, it depends on how picture gets to the TV and how the TV displays it. If the picture is sent via composite or s-video it is always sent one field at a time, whether the DVD is encoded interlaced or progressive. An interlaced TV displays the picture exactly as it is received, one field at a time, each spread over the full height of the frame, the bottom field one scanline lower than the upper field. A progressive TV will have to convert the fields to progressive frames. It could do something as simple as Bob(), achieving half the resolution per frame and a picture that bounces up and down 25 times a second (just like on an interlaced TV displays interlaced video); or it might see that pairs of fields come from the same frame and inverse telecine back to 25p and display each frame twice.
Note I added stuff to my previous post. -
I see.
Itīs complicated, or well, i just have a hard time grasping the fields and stuff. But i think i get the picture.
But well in the end, that means that if the video is anything below 50/60 fps originally, it will be degraded if itīs sent via Composite or S-video as it will have to be turned to interlaced.
But if itīs half, 30/25, it can be returned to itīs original state with avisynth, and stuff.
In the end, the TV will just be showing how itīs recieved, if itīs 50i originaly or not doesnīt matter, correct?
That's correct. But it looks to me like the video was originally 24p, telecined to 30i, converted to 25i with field blending, then way over compressed. It can be nominally returned to 24p.
I just see it as blended frames all over the place.
But nominally, havenīt heard that word. I guess you mean it can be returned to 24p to some degree?
How am i supposed to do that? -
It isn't necessarily degraded. It just means it must be turned into 59.94 fields per second for transmission.
Or by the TV. And it's not limited to half. For example 23.976 fps progressive telecined to 59.94 fields per second (or saved as 29.97 interlaced frames per second) can be restore to 23.976 fps progressive frames.
Most modern TVs do not show show interlaced video in the form it is received. Interlaced video is deinterlaced in some fashion for the progressive panel. Again, that could be the equivalent to a simple Bob() in AviSynth, or as good as an inverse telecine in AviSynth. No TV can do anything like QTGMC() at this point in time.
Yes, I mean you can restore it to 24p -- but the results won't be perfect. You can use something like:
Code:Yadif(mode=1, order=1) # double frame rate bob, tff SRestore() #remove blended frames, leaving 23.976 fps
-
The m2v posted as Cartoon - Interlaced.demuxed.m2v in post #21 has been a day-long learning experience. The clip is one of the strongest arguments I've seen for never -- repeat, never -- capturing dirty crappy noisy damaged ugly-colored analog source direct to lossy compression at a stingy 5000 bitrate. I have a masochistic streak myself for fiddling with it, but no one can convince me that capturing to lossy compression is a convenience or is "as good as" working with lossless. Someone has to be nutty to bring this much work onto themselves.
I didn't try to deinterlace/inverse telecine/deblend, etc., etc. Probably could have done more denoising, but there wouldn't be much video left. I managed the attached post by using QTGMC on the plain-vanilla interlaced sections, and used the following method for everything else:
Code:AssumeTFF().SeparateFields() in1=last e=in1.SelectEven() o=in1.SelectOdd() e [processing] [processing] o [processing] [processing] eo=Interleave(e,o).Weave() eo [processing] [processing] # ---- for VirtualDub color work ----- ConvertToRGB32(matrix="rec601",interlaced=true) return last
Last edited by sanlyn; 26th Mar 2014 at 05:55.
-
Or by the TV. And it's not limited to half. For example 23.976 fps progressive telecined to 59.94 fields per second (or saved as 29.97 interlaced frames per second) can be restore to 23.976 fps progressive frames.
The same goes for 50-60i content thatīs deinterlaced to 23.976-25fps progressive, that content will be degraded also, cause it will be half the frames needed as itīs deinterlaced in such a way that 2 fields make 1 frame, which isnīt the case here.
If captured and restored manually, we can make the right choices, we can make it progressive if it was supposed to be that, or 50i if thatīs the case.
I just want to make sure that a TV doesnīt always make the right decision.
Is this correct?
(Sorry for dragging it out, i just feel stupid for not truly understanding this..)
The clip is one of the strongest arguments I've seen for never -- repeat, never -- capturing dirty crappy noisy damaged ugly-colored analog source direct to lossy compression at a stingy 5000 bitrate
I have a masochistic streak myself for fiddling with it, but no one can convince me that capturing to lossy compression is a convenience or is "as good as" working with lossless
Interesting project. Few would take the time to do all this
And as Srestore and such can do a good jobb, but not perfect, i guess i can make a more perfect jobb if i go through the video more.
Is there a way to use Srestore and be able to determine where it fails (duplicates or removes a frame)?
Or is it just for me to look through it frame by frame?
If so, how can i compare to know where it fails?
Thanks -
SRestore in the blended sections will give you progressive sections running at 12fps, and will likely fail on frames that are telecined rather than blended. In or5der to get back to 25fps, you would end up where you started.
I understand from earlier posts that the m2v is not your capture. I was referring to the kamikaze who made the original.
I broke this short clip into 15 segments and wrote a script processing each, individually, then joined them. Trying to break apart blended/duplicate/telecined frames could keep you working on this o0ne video for over a year.Last edited by sanlyn; 26th Mar 2014 at 05:55.
Similar Threads
-
Syncing segments of video with audio differently (stretching, compressing)
By Kreachure in forum EditingReplies: 2Last Post: 5th Mar 2012, 11:27 -
Replacing video in Sony's DVD Architect
By younso in forum Authoring (DVD)Replies: 2Last Post: 26th May 2010, 11:29 -
Replacing the main video in a DVD
By DeathStalker77 in forum Authoring (DVD)Replies: 9Last Post: 20th May 2010, 16:17 -
Current DVD Recorders in both PAL+NTCS available?
By 1234567 in forum Newbie / General discussionsReplies: 4Last Post: 8th Jan 2010, 17:30 -
Replacing Video on Authored DVD
By videopromaster in forum Authoring (DVD)Replies: 6Last Post: 31st Jul 2008, 12:52