VideoHelp Forum




+ Reply to Thread
Page 1 of 2
1 2 LastLast
Results 1 to 30 of 32
  1. Hello,

    I have to backup three VCDs. The quality is not good.

    But, these VCDs are important as they cover friend's marriage ceremony. So, I have to backup in the best possible audio/video quality at the highest possible resolution.

    Container/file size are not important.

    Here is what PotPlayer reports:

    PHP Code:
    General
    Complete name                  
    F:\mpegav\AVSEQ01.DAT
    Format                         
    CDXA/MPEG-PS
    File size                      
    630 MiB
    Duration                       
    1 h 2 min
    Overall bit rate mode          
    Constant
    Overall bit rate               
    1 411 kb/s

    Video
    ID                             
    224 (0xE0)
    Format                         MPEG Video
    Format version                 
    Version 1
    Format settings
    BVOP          Yes
    Format settings
    Matrix        Custom
    Format settings
    GOP           M=3N=15
    Duration                       
    1 h 2 min
    Bit rate mode                  
    Constant
    Bit rate                       
    1 150 kb/s
    Width                          
    352 pixels
    Height                         
    288 pixels
    Display aspect ratio           
    4:3
    Frame rate                     
    25.000 FPS
    Standard                       
    PAL
    Color space                    
    YUV
    Chroma subsampling             
    4:2:0
    Bit depth                      
    8 bits
    Scan type                      
    Progressive
    Compression mode               
    Lossy
    Bits
    /(Pixel*Frame)             : 0.454
    Time code of first frame       
    00:00:00:01
    Time code source               
    Group of pictures header
    GOP
    Open/Closed               Closed
    Stream size                    
    517 MiB (82%)

    Audio
    ID                             
    192 (0xC0)
    Format                         MPEG Audio
    Format version                 
    Version 1
    Format profile                 
    Layer 2
    Duration                       
    1 h 2 min
    Bit rate mode                  
    Constant
    Bit rate                       
    224 kb/s
    Channel
    (s)                     : 2 channels
    Sampling rate                  
    44.1 kHz
    Compression mode               
    Lossy
    Stream size                    
    99.9 MiB (16%) 
    The tools I have: VCDGear, DGIndex, VirtualDub. etc

    Pl suggest how to go about it.

    Thanks.
    Image Attached Files
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  2. Explorer Case's Avatar
    Join Date
    Feb 2004
    Location
    Middle Earth
    Search Comp PM
    Originally Posted by ConverterCrazy View Post
    I have to backup three VCDs. The quality is not good.
    Container/file size are not important.
    The tools I have: VCDGear …
    VCDGear should be excellent for the job. It should be able to extract the movies as MPEG-1 files (.mpg) losslessly, preserving the recorded quality.
    Quote Quote  
  3. Member hech54's Avatar
    Join Date
    Jul 2001
    Location
    Yank in Europe
    Search PM
    "Best possible" is what is on the VCD right now. Converting it to something else WILL NOT make MPEG1 any better.
    Quote Quote  
  4. Thanks @Case and @hech54.

    The sample file gives a feel of the 'quality'.
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  5. The quality doesn't matter. Simply remuxing the video/audio from the DAT file to an MPG file is an exact copy of what's on the disc.

    Unless you're talking about trying to enhance the video. Some advanced filtering may make it look a little better.
    Quote Quote  
  6. Thanks @jagabo.

    Unless you're talking about trying to enhance the video. Some advanced filtering may make it look a little better.
    That's what I need … and desperately!

    I can use Avisynth script. I learnt it here – in this forum. But I don't know, technically, what the defects are and write a script.
    Last edited by ConverterCrazy; 7th Jun 2017 at 10:50. Reason: Additional info
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  7. Try starting with something like:

    Code:
    Mpeg2Source("C:\Users\John\Desktop\Sample.demuxed.d2v", CPU2="xxxxxx", Info=3) 
    MCTemporalDenoise(settings="medium")
    Dup(threshold=5, blend=true, show=false)
    MergeChroma(Sharpen(0.4), aWarpSharp(depth=20))
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=768, fheight=576)
    aWarpSharp(depth=5)
    Sharpen(0.4)
    This may not work well with live action shots. Mpeg2Source's deblocking and deringing options are enabled. MCTD is used to reduce noise. Dup makes near duplicate frames all identical duplicates for further noise and jitter reduction. The high threshold may end up eliminating real motion at times though. aWarpSharp is used to sharpen colors and a simple sharpen on the luma. The video is then upscaled and sharpened a bit more. I went overboard with the noise reduction and sharpening. You'll probably want to do less with the real motion clips. I didn't address all the color problems.
    Image Attached Files
    Quote Quote  
  8. Thanks @Jagabo

    Looks so much better!

    Working and will post results.

    PS:

    Will using QTGMC3.32 be better option for nnedi3.dll?
    If yes, what will be the script?
    Last edited by ConverterCrazy; 7th Jun 2017 at 22:02. Reason: Addl text
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  9. You should post a sample of the main part of the festivities. Something typical of the bulk of the video, or at least the most important parts. Filtering for those may be very different than that which was applied to the earlier sample which was mostly synthetic and still shots.
    Quote Quote  
  10. Ok.

    Kids dancing is fast, I believe.
    Sample3 is faster.
    Image Attached Files
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  11. Sample3.
    Image Attached Files
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  12. The earlier script worked adequately for the two new videos. I added a little brightness, contrast, and saturation adjustment:

    Code:
    Mpeg2Source("Sample2.d2v", CPU2="xxxxxx", Info=3) 
    ColorYUV(gain_y=-20, off_y=-10)
    ColorYUV(cont_u=50, cont_v=50)
    MCTemporalDenoise(settings="medium")
    Dup(threshold=5, blend=true, show=false)
    MergeChroma(Sharpen(0.4), aWarpSharp(depth=20))
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=768, fheight=576)
    aWarpSharp(depth=5)
    Sharpen(0.4)
    You might want to reduce the sharpen filters. And Dup() doesn't do anything here so you can remove it.
    Quote Quote  
  13. Thanks.

    Just one more question before I go for it.

    Will using QTGMC3.32 be better option for nnedi3.dll?
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  14. I used nnedi3_rpow2() for up scaling, not deinterlacing.

    By the way, I'd archive the DAT files too. Or consider re-capturing the original VHS tapes.
    Quote Quote  
  15. Ok.

    Thanks.

    Will keep DAT files.
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  16. @jagabo

    Using VCDGear, I converted DAT files to mpeg.

    Using VirtualDubMPEG2 to test the script.

    After running the script and modifying for path/installation of various plugins, I am stuck with "AVSEQ001.mpg is not Mpeg2" warning.

    Code:
    SetMemoryMax(512)
    LoadPlugin("C:\Hybrid\avisynthPlugins\DGDecode.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\mt_masktools-25.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\YadifMod.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\NNEDI3.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\SmoothAdjust.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\MVTools2.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\GScript.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\Grunt.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\RemoveGrainSSE2.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\FFT3Dfilter.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\TTempSmooth.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\RgTools.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\DeBlock.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\DctFilter.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\EEDI2.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\SangNom.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\GradFun2db.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\AddGrainC.dll")
    
    Import("C:\Hybrid\avisynthPlugins\GradFun2DBmod.v1.5.avsi") 
    Import("C:\Hybrid\avisynthPlugins\Deblock_QED_MT2Mod.avsi")   
    Import("C:\Hybrid\avisynthPlugins\SRestore.avsi")
    Import("C:\Hybrid\avisynthPlugins\LSFmod.v1.9.avsi")
    Import("C:\Hybrid\avisynthPlugins\LimitedSharpenFaster.avsi")
    Import("C:\Hybrid\avisynthPlugins\MCTemporalDenoise.v1.4.20.avsi")
    
    # Mpeg2Source("AVSEQ01.mpg", CPU2="xxxxxx", Info=3) 
    DirectShowSource("AVSEQ01.mpg") 
    ColorYUV(gain_y=-20, off_y=-10)
    ColorYUV(cont_u=50, cont_v=50)
    MCTemporalDenoise(settings="medium")
    ## Dup(threshold=5, blend=true, show=false)
    MergeChroma(Sharpen(0.2), aWarpSharp(depth=5))
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=768, fheight=576)
    ## aWarpSharp(depth=5)
    ## Sharpen(0.4)
    Is my modified script OK?
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  17. Screenshot
    Image Attached Thumbnails Click image for larger version

Name:	VDubError.jpg
Views:	190
Size:	99.0 KB
ID:	41845  

    Sword is no substitute for kitchen-knife.
    Quote Quote  
  18. Originally Posted by ConverterCrazy View Post

    # Mpeg2Source("AVSEQ01.mpg", CPU2="xxxxxx", Info=3)
    Use MPEG2Source after making a D2V project file from it. It's explained in the docs included in the DGMPGDec package.

    Mpeg2Source("AVSEQ01.d2v", CPU2="xxxxxx", Info=3)

    Take a look at jagabo's script earlier. There's no MPG mentioned in his script. And forget DirectShowSource.
    Quote Quote  
  19. Thanks @Manono
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  20. Ran this script:

    Code:
    SetMemoryMax(1024)
    LoadPlugin("C:\Hybrid\avisynthPlugins\DGDecode.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\mt_masktools-25.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\YadifMod.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\NNEDI3.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\SmoothAdjust.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\MVTools2.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\GScript.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\Grunt.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\RemoveGrainSSE2.dll")
    # LoadPlugin("C:\Hybrid\avisynthPlugins\LSFmod.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\FFT3Dfilter.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\TTempSmooth.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\RgTools.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\DeBlock.dll")   
       
    LoadPlugin("C:\Hybrid\avisynthPlugins\DctFilter.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\EEDI2.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\SangNom.dll")   
      
    LoadPlugin("C:\Hybrid\avisynthPlugins\GradFun2db.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\AddGrainC.dll")
    
    Import("C:\Hybrid\avisynthPlugins\GradFun2DBmod.v1.5.avsi") 
    Import("C:\Hybrid\avisynthPlugins\Deblock_QED_MT2Mod.avsi")   
    Import("C:\Hybrid\avisynthPlugins\SRestore.avsi")
    Import("C:\Hybrid\avisynthPlugins\LSFmod.v1.9.avsi")
    Import("C:\Hybrid\avisynthPlugins\LimitedSharpenFaster.avsi")
    Import("C:\Hybrid\avisynthPlugins\MCTemporalDenoise.v1.4.20.avsi")
    
    MPEG2Source("C:\MarriageM2P\M2P.d2v", CPU2="xxxxxx", Info=3) 
    
    ColorYUV(gain_y=-20, off_y=-10)
    ColorYUV(cont_u=50, cont_v=50)
    MCTemporalDenoise(settings="medium")
    ## Dup(threshold=5, blend=true, show=false)
    MergeChroma(Sharpen(0.4), aWarpSharp(depth=5))
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=768, fheight=576) 
    
    aWarpSharp(depth=5)
    Sharpen(0.4)
    The result is much better than the original – even sharper.

    Can something be done to reduce color splashing, flashing and flicker?

    Thanks.
    Image Attached Files
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  21. Originally Posted by ConverterCrazy View Post
    Can something be done to reduce color splashing, flashing and flicker?
    That's partly why I used Dup() with the high threshold. During still section the flickering frames were replaced with the average of all the still frames. There's still flicker during shots with motion.

    There are specific flicker reduction filters but they damage the video at high settings. Donald Graft's Deflicker plugin for VirtualDub is often used:

    Code:
    LoadVirtualDubPlugin("g:\Program files\VirtualDub\plugins\deflick.vdf","DeFlick") # modify path to deflick.vdf
    ConvertToRGB32() # VirtualDub plugins require RGB32
    DeFlick(4, 30, 0, 10, 0) # window size, softening, interlaced, scene change threshold, show scene change
    ConvertToYV12() # back to YV12
    To eliminate the heavy flickering here you have to use very high softening values. That will lead to ghosting when there is motion.

    There's also a DeFlicker plugin for AviSynth. But I've never had luck with it with strong flicker.

    Are you sure the strong flickering in the first half of the clip isn't intentional?

    Attached is a video of the Y, U, and V channels of your processed video. Y on left, U top right, V bottom right. You can see that most of the noise is in the U and V channels, with U the worst.

    Code:
    StackHorizontal(ColorYUV(cont_u=-256, cont_v=-256), StackVertical(UtoY(), VtoY()))
    Also, increasing the saturation of this video was inappropriate. It has created illegal colors.
    https://forum.videohelp.com/threads/360935-Capturing-Correct-Chroma-and-Hue-Levels-Fro...e2#post2289672
    Image Attached Files
    Quote Quote  
  22. Thanks @jagabo.

    I don't know how to see Y, U and V channels. But Y is definitely so 'clean'.
    I think the code at the end is for this purpose.

    First, I'll use your modified script, then with VirtualDubFilter.

    Illegal colors? I think those videographers are 'illegal'. They are out to make a fast buck knowing compulsions of their clients!

    Unfortunately, there is no filter to throw them out of business, but I hope there is some chroma filter to take care of Illegal colors.

    Getting on with your suggestions.


    Just checked 90 sec clip, much-much better.
    Last edited by ConverterCrazy; 10th Jun 2017 at 12:27. Reason: Post Scripta
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  23. @jagabo and @manono.

    The results are good as compared to the original. The grainy look is gone, the 'clarity' is much better.
    I reduced audio volume from 102.5 dB to 92dB and lowered pitch by half tone.

    Attaching the clip for ready reference.

    Special mention: manono without whose help I wouldn't have known how to use Avisynth.

    Thanks for your help.
    Image Attached Files
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  24. @jagabo and @manono

    The couple in the video has asked me to thank you.

    Saving this script as template.
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  25. Since the chroma channels are much noisier than the luma channel you can try filtering them more strongly. Something like:

    Code:
    MergeChroma(MCTemporalDenoise(settings="low"), MCTemporalDenoise(settings="high"))
    Or for each individual channel:

    Code:
    U = UtoY().McTemporalDenoise(settings="high").aWarpSharp(depth=15) # plus sharpening
    V = VtoY().McTemporalDenoise(settings="high").aWarpSharp(depth=15) # plus sharpening
    Y = McTemporalDenoise(settings="low")
    YtoUV(U, V, Y)
    Too much noise reduction, especially of the luma channel, will make people look like mannequins.
    Quote Quote  
  26. @jagabo

    1- Can I use the AVI file created with the earlier Avisynth script or redo the whole thing again? (It took over 13 hours )

    2- How do I avoid typing path in every line of the script? If possible.
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  27. You should start with the original source again. And to be clear, I meant to use one of those sequences instead of the original

    Code:
    MCTemporalDenoise(settings="medium")
    The difference won't be huge. But it might look a little better. Especially in shots of people's faces.

    I don't understand what you mean in the second part of your question. You can cut/paste from my posts.
    Quote Quote  
  28. Sorry about that.

    You mean modify script as:

    Code:
    SetMemoryMax(1024)
    LoadPlugin("C:\Hybrid\avisynthPlugins\DGDecode.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\mt_masktools-25.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\YadifMod.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\NNEDI3.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\SmoothAdjust.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\MVTools2.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\GScript.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\Grunt.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\RemoveGrainSSE2.dll")
    # LoadPlugin("C:\Hybrid\avisynthPlugins\LSFmod.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\FFT3Dfilter.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\TTempSmooth.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\RgTools.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\DeBlock.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\Dup1.dll")   
       
    LoadPlugin("C:\Hybrid\avisynthPlugins\DctFilter.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\EEDI2.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\SangNom.dll")   
      
    LoadPlugin("C:\Hybrid\avisynthPlugins\GradFun2db.dll")   
    LoadPlugin("C:\Hybrid\avisynthPlugins\AddGrainC.dll")
    LoadPlugin("C:\Hybrid\avisynthPlugins\aWarpSharp2.dll")
    
    Import("C:\Hybrid\avisynthPlugins\GradFun2DBmod.v1.5.avsi") 
    Import("C:\Hybrid\avisynthPlugins\Deblock_QED_MT2Mod.avsi")   
    Import("C:\Hybrid\avisynthPlugins\SRestore.avsi")
    Import("C:\Hybrid\avisynthPlugins\LSFmod.v1.9.avsi")
    Import("C:\Hybrid\avisynthPlugins\LimitedSharpenFaster.avsi")
    Import("C:\Hybrid\avisynthPlugins\MCTemporalDenoise.v1.4.20.avsi")
    
    MPEG2Source("C:\Users\…\Video.d2v", CPU2="xxxxxx", Info=3) 
    ColorYUV(gain_y=-20, off_y=-10)
    ColorYUV(cont_u=50, cont_v=50)
    U = UtoY().McTemporalDenoise(settings="high").aWarpSharp(depth=15) # 
    
    plus sharpening
    V = VtoY().McTemporalDenoise(settings="high").aWarpSharp(depth=15) # 
    
    plus sharpening
    Y = McTemporalDenoise(settings="low")
    YtoUV(U, V, Y)
    Dup1(threshold=5, blend=true, show=false)
    MergeChroma(Sharpen(0.2), aWarpSharp(depth=20))
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=768, fheight=576) 
    
    aWarpSharp(depth=5)
    Sharpen(0.4)
    Code in Blue added.

    As for second question, I had meant - can repetition of path in

    Code:
    LoadPlugin("C:\Hybrid\avisynthPlugins\…
    and
    Code:
    Import("C:\Hybrid\avisynthPlugins\…
    be avoided?
    Last edited by ConverterCrazy; 12th Jun 2017 at 13:42. Reason: correction
    Sword is no substitute for kitchen-knife.
    Quote Quote  
  29. Yes, that script is what I suggested. You should also change this line:

    Code:
    MergeChroma(Sharpen(0.2), aWarpSharp(depth=20))
    to just

    Code:
    Sharpen(0.2)
    Because the code you added is already sharpening the chroma. Ie:

    Code:
    U = UtoY().McTemporalDenoise(settings="high").aWarpSharp(depth=15)
    Adjust depth to your liking. To small and you won't get much sharpening of the colors. Too high and small objects, thin lines, sharp corners, etc. will lose their colors.

    Normally you can avoid all the explicit LoadPlugin() and Import() lines by putting all the filters in AviSynth's plugins folder -- they will automatically be loaded every time AviSynth is used. (That's why my scripts don't have all those lines.) But the use of Hybrid may complicate this. I would stick with what you're doing. It's just a copy/paste operation.
    Quote Quote  
  30. This code works:

    Code:
    MergeChroma(MCTemporalDenoise(settings="low"), MCTemporalDenoise(settings="high"))
    Change in people's faces… well, amazing!

    This one doesn't:

    Code:
    U = UtoY().McTemporalDenoise(settings="high").aWarpSharp(depth=15) # plus sharpening
    V = VtoY().McTemporalDenoise(settings="high").aWarpSharp(depth=15) # plus sharpening
    Y = McTemporalDenoise(settings="low")
    YtoUV(U, V, Y)
    Gives Error:
    Image Attached Thumbnails Click image for larger version

Name:	Mod4-error-Maneesh.png
Views:	151
Size:	16.5 KB
ID:	41885  

    Sword is no substitute for kitchen-knife.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!