I don't think any filter can do much with that sample. Let's face it, some things just can't be fixed. As for DePulse, I gave up on it years ago. You can try tricks like this:
Code:
ConvertToYV12(interlaced=true) ...and use any denoiser you want. But you won't get much for results. Take a look at really old films on Turner Classic Movies and see how much they just lived with regarding old and damaged films. |
Thanks. I just wanted to make sure there were no stones unturned regarding any techniques I could use.
|
I used badframes() for this issue. I also discovered ReplaceFramesMC2 on this forum. It seems to do a better job, but I don't get any sound for the interpolated clips, unlike with badframes(). Is this to be expected? It did not make a difference if the clip was de-interlaced, though I read that it should be this filter.
|
All versions of ReplaceFrames and RemapFrames work the video but not the audio. You have to save the audio and restore it at the end of the processing. You'll see something like this in many threads:
Code:
vid1=AviSource("path\to\video.avi") The other trick is to save the clip's audio in Virtualub as an external .wav file and dub it in later with WavSource(). |
Thank you for the quick expert knowledge!
|
From what I read it is recommended to convert back to YUV in VirtualDub upon export (FFV1 has an option to stay in RGB 32). I had to use RGB to color correct, but wouldn't converting back to YUV on export result in further losses due to the conversion? Or is this loss very minor?
|
In my experienced it is minor, nearly transparent. Cleaner than NLE's or encoders. If you want to be really picky, save it as RGB and then run another scriprt that converts RGB>YV12 in VirtualDub, but I never found it made a difference.
|
Thank you!
|
Might you have any idea why de-interlacing would produce audio lag in the video? The interlaced version is fine. I just added this line:
Code:
QTGMC(preset="medium",EZDenoise=2,ChromaNoise=true, ChromaMotion=true,DenoiseMC=true, GrainRestore=0.3, ShowNoise=false, Edithreads=2) Original (which is longer) Quote:
After Quote:
|
1 Attachment(s)
It seems that the lag is just due to using FFV1. HuffYUV seems fine. However, for some reason none of the filters applied after QTGMC seemed to work on the de-interlaced footage when output from VirtualDub. Yet, it looks like they are applied in the Preview screen in AVSPMod. This was my script:
Code:
SetFilterMTMode("QTGMC", 2) Also, is there anything that can be done after the chroma bleeding on the side of the person's head in this screenshot? The bleeding persists temporally, which may be why none of the de-rainbow filters did anything, but I don't know. |
A few notes and ? on the script:
Quote:
I don't use AvsPmod. It's too clunky and problematic for me. So I can't answer questions about it. Quote:
Quote:
Quote:
Code:
original=AVISource("video.avi") Vinverse() This is called in the wrong place and doesn't help anything. It's best called with progressive video and is almost always used after QTGMC. The plugin includes the newer version, which is Inverse2. Check on the documentation: http://avisynth.nl/index.php/Vinverse. mergechroma(aWarpSharp(depth=55, thresh=0.5, blurlevel=3, cm=1, bm=0)) turnright() mergechroma(aWarpSharp(depth=55, thresh=0.5, blurlevel=2, cm=1, bm=0)) turnleft() You're using this too early. Use it after the rest of your cleanup. Why do you want to sharpen dirt and spots early and try cleaning them later? RemoveSpotsMC() RemoveSpotsMC() RemoveSpotsMC() RemoveSpotsMC() Rather than multiple iterations of RemoveSpotsMC, have you tried the several versions in the one-stopo-shopping script, RemnoveSpotsMC4.avsi (http://www.digitalfaq.com/forum/atta...vespotsmc4avsi)? It has the following internal functions that you can call by name: RemoevSpotsMC, RemoveSpotsMC2, RemoveSpotsMC3, RemoveSpotsMC4, and RemoveSpotsMC5. MC4 and MC5 are terminally slo-o-o-o-w. I'd suggest the MC2 version with your progressive clip and make the spots smaller and less regular by doing this: Code:
SeparateFields() AddGrainC is the newer version and comes with QTGMC. Quote:
|
Thanks for your reply. I know you are busy helping the digital and physical community, so I appreciate it. I was typing a post and did not see your reply, but yes, VInverse was causing all the filters to not work. I will post a newer script after taking in your comments, but for the time being I noticed using RemoveSpotsMC(), RemoveSpotsMC3(), and then RemoveSpotsMC() again seemed to work. It appears that the first call removes blatant problems, the second does a more thorough pass based temporally, and then the rest can be removed with the third call.
Regarding the analog antenna ghosting, I guess that means this video must have been dubbed from television. Thanks for the identification. Also, I was saving the final export as FFV1, not capturing as it. Can you explain why you are against it for archival purposes? For what I have read, Lagarith is not a good archival format because it is too reliant on one developer. HuffYUV is too large for archival purposes. FFV1 is being used by libraries and archivists because of its good reduction in file size despite being lossless compression. It is also open sourced. |
Q: Does anyone have any idea as to how the fix the severe bleeding in the screenshot?
A: Yikes! No idea. I see this thread, but (for now) my desire to help doesn't match my ability to help. I'm glad sanlyn is addressing this. And I'm actually getting some ideas and tips myself. Avisynth is such a large "program" (not really, more like language, common interface to run many programs/filters) that nobody will ever know everything. But many can know much, and by sharing knowledge, knowledge grows. I didn't want you to think I was ignoring you. :) |
Quote:
There are too many errors in this script. You're also applying progressive filters to interlaced video. Why not supply a short sample so we can see what you're trying to do? |
Quote:
Sanlyn--I made a post, then saw your post, and then changed mine. I'll report back with a revised script and sample. I thought it was better to separatefields for temporal footage, but that spatial can also work with it. |
4 Attachment(s)
I have attached two clips both before and after Avisynth. The first clip (video1) is from earlier in the same video as the clip attached in the beginning of this thread. I color corrected based on the white and black in the album cover below, which occurs later. This may not be best for the clip in question, but I can't go crazy, and neither should you.
Attachment 11793 The VirtualDub color settings are saved as .txt because I was not allowed to upload a file with the extension .vdscript. I mainly used ColorPic for black and white levels and a vectorscope for skin values. The attached files are interlaced because I that is what I will be archiving. However, a de-interlaced version will be posted online. I could not de-interlace before most filters because it never finished rendering, while it was much faster if used at the end. For some reason, RemoveSpotsMC2() was less effective than RemoveSpotsMC(). This can be seen in frame 231. Frame 335 is where I determined that three calls were necessary. You recommended to select the even and odd fields separately because this is a spatial-temporal filter? I did not see much improvements with RemoveDirt or Cnr2 but I included them. Code:
original = AVISource("Videowave2a2.avi") |
6 Attachment(s)
I had a much harder time trying to adjust the color on the attached video2 clip. Using the set black and white in Premiere, I know the person's jacket is blue, yet I could not do much with ColorMill in VirtualDub to get there. The best I could do was isolate the skin and move the hue to the skin tone line.
Before--Vectorscope Attachment 11798 Before Attachment 11804 After--Vectorscope Attachment 11799 After Attachment 11800 I loaded the ColorMill settings into the Avisynth script because the weird colors were affecting the mergechroma. If the color were fixed, I would have added Camcorder color denoiser after Avisynth, but did not do that here. Also, is there a way to duplicate a mono track to make it stereo in Avisynth? I could not get MergeChannels to work. Instead, I duplicated the audio in Audacity, and removed noise there as well. Code:
LoadVirtualdubPlugin("C:\Users\Admin\Desktop\VirtualDub-1.10.4\plugins32\ColorMill.vdf", "ColorMill") |
Tried to reply to your post last night and this morning but the forum won 't let me upload files. Will try again this afternoon. Meanwhile I'm posting the script I used to fix the dropouits.
Note that your original text is applying ReplaceFramesM to interlaced fields. This can often result in field blending, which can't be fixed. Quote:
What you're trying to remove isn't just spots and comets. They're horizontal dropouts and rips. RemoveDirtMC at higher settings works OK. Code:
vidpath="I:\forum\faq\Windsordawson\E\" |
2 Attachment(s)
Trying again to upload an output sample for the above script and a .vcf.
Yep. It worked. Finally. |
Thank you. I used ReplaceFramesMC for certain frames with bad tracking issues that cannot be fixed. Does this create a problem for the filters?
I did not realize RemoveDirtMC can do the same job as RemoveSpotsMC. It is also much quicker. Now that speed is not an issue, should I have de-interlaced first or is it fine to do it at the end? Also, is it safe to SeparateFields for most filters except for color, or are there certain filters that work better in normal interlaced? If a temporal filter works just as well when the fields are separated, I would rather err on this side than incorrectly apply a spatial filter when the fields have not been separated. The saturation in the video you attached seems unnatural, especially in the blue shirt. I am just curious, is this the way it should be done or is it just a stylistic preference? |
Site design, images and content © 2002-2024 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2024 Jelsoft Enterprises Ltd.