VideoHelp Forum
+ Reply to Thread
Page 1 of 4
1 2 3 ... LastLast
Results 1 to 30 of 108
Thread
  1. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    workflow :

    jcv hr-s5800u>tbc-1000>all-in-wonder ve

    capture settings :

    mpeg2 (I frame only) *supposed to be comparable to mjpeg and huffy takes too much space
    and i can use videosoap (17% despecle) with the ati mpeg2 format
    (saves me a lot of filtering)

    704X480 , interlaced , 20Mb/sec constant (max value)

    audio : 48000 Khz 16 bits 384 kb/sec (max value)

    avisynth script feed to virtualdub(filtering) to tmpgenc

    it's reaaly easier for me to do this within virtualdub

    script made with fitcd :

    # -= AviSynth v2.5.8.5 script by FitCD v1.2.8 =-
    LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
    Mpeg2Source("F:\100 limite\ONE.d2v")
    #Trim(0,8328).FadeOut(15) # i could leave out the fadeout thing i made 150 , 15
    ConvertToRGB32(interlaced=true) # For TMPGEnc or VFAPI; 32 instead of 24 so virtualdub won't reconvert

    in virtualdub i usualy use something like

    deinterlace unfold , chroma smoother (420 mpeg2) , saturation ajust , and something like temporal smoother or cleaner , deinterlace fold

    seams logical to me to unfold before filtering because it's field based

    i try not to over-filter , i can live with a little noize

    then i frameserve to tmpgenc

    mpeg2 , 704X480 , 4:3 , 29.97 , variable CQ=90 (9500-9800) , interlaced top field , 420 , DC precision 10 bits , motion search : fast . detect scene change , audio mp2 48K 192 bits

    most of the settings at default

    i get no drop frames while capturing

    maybe i could do better ? what is my weakest link ?

    maybe some settings are pushed too far or not far enough ?
    Quote Quote  
  2. 20 Mb/s might be a little too low for all I frame MPEG 2. TMPGEnc isn't a great encoder. I'd use HcEnc. You might be losing the darkest and lightest shades by converting to RGB. Check the levels before ConvertToRGB32().
    Quote Quote  
  3. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    i can't get higher than 20Mb/s ... i wanted to take avantage of the videosoap ,,

    should i use some P-frames in the process ? if so how many ?

    IPI or IPPI ? IPPPI ??
    stupid question ,, should it be an even number groupe because it's interlaced ?

    I read that B frames are the hardest to encode .. so might has well leave them out

    and yes , HcEnc would be an option

    if i want to use virtualdub i've got to convertToRGB .. no ??
    Last edited by smartel; 8th Jun 2011 at 13:39.
    Quote Quote  
  4. Originally Posted by smartel View Post
    i can't get higher than 20Mb/s ... i wanted to take avantage of the videosoap ,,

    should i use some P-frames in the process ? if so how many ?

    IPI or IPPI ? IPPPI ??
    Short GOPs of only I and P frames should be fine. Most encoders use the same quantizer for both I and P frames. But P frames will be much smaller because they only encode the differences from the preceding frame. 20 Mb/s with P frames should be higher quality than 20 Mb/s with only I frames. Editing is a little more difficult because the P frames have to be decoded sequentially (ie, to see a P frame you have to decompress the I and P frames before it). But with modern CPUs and standard definition video that's not a problem. Six frame GOPs is common: IPPPPP. Try it and see if there's any noticeable difference to all I frames.

    Originally Posted by smartel View Post
    stupid question ,, should it be an even number groupe because it's interlaced ?
    No. Each frame contains two fields.

    Originally Posted by smartel View Post
    I read that B frames are the hardest to encode .. so might has well leave them out
    Yes. And they also usually use a higher quantizer (lower quality) on the theory that you won't notice if the picture degrades for a short time, it is cleaned up by a P or I frame within the next frame or two.

    Originally Posted by smartel View Post
    if i want to use virtualdub i've got to convertToRGB .. no ??
    VirtualDub will convert YUV to RGB if necessary. It has a problem with interlaced YV12 but you can work around that since you are using Mpeg2Source(). Just add the upConv argument to get YUY2 instead:

    Mpeg2Source("filename.d2v", upConv=1)

    If you see significant macroblocking or DCT ringing in your caps you can use the CPU argument to deblock and dering:

    Mpeg2Source("filename.d2v", upConv=1, CPU=6) #2=deblock Y, 6=deblock+dering YUV, see docs for more

    Some of VirtualDub's internal filters can work in YUV. The most important for your purposes is the Brightness/Contrast filter. You can use it first to make sure you retain any super black or super bright areas. Or you can use ConvertToRGB(matrix="PC.601") in your AVS script to avoid losing them. Or use the Historgram() filter in AviSynth to verify all your video is between Y=16 and Y=235.
    Quote Quote  
  5. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    Closed or open GOP ?

    I'm just starting out at capturing (and filtering too)

    I think i've got a good basic setup to work with (my old athlon 1800+ may be old*..)

    *some filters i can't use 'cause some instructions are not suported SSE2 , SSE3 etc ..)

    somebody said learning curve !??
    Last edited by smartel; 9th Jun 2011 at 01:21.
    Quote Quote  
  6. I found that for most of my ATI cards I had to tweak the brightness and color settings just a bit for captures true to the source. Brightness up maybe 10-20% and IIRC tweak the color just a bit more green and less red, or maybe the other way around.

    Stock settings were definitely off.

    Used to do I-frame Mpegs, I think the max bitrate was 15 then, re-encoded for SVCD back then, no major problems. Started just going DVD-ready mpg and never looked back. Gave up on VHS capture early on.
    Quote Quote  
  7. Originally Posted by smartel View Post
    Closed or open GOP ?
    With only I and P frames there can be no open GOPs.
    Quote Quote  
  8. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    Thanks for the AviSynth RGB conversion info, jagabo.

    Originally Posted by jagabo View Post
    Originally Posted by smartel View Post
    Closed or open GOP ?
    With only I and P frames there can be no open GOPs.
    Thanks for that, too. Either I wasn't aware of this GOP issue, or I was in denial. Maybe that's why I had problems with an old captured video a while back (??).
    Last edited by sanlyn; 21st Mar 2014 at 21:40.
    Quote Quote  
  9. Open GOPs are when B frames reference an I frame from the next GOP. For example:

    IBBPBBI... (temporal order)

    The last two B frames can reference the second I frame. Ie, to correctly decode the last two B frames may require the I frame from the next GOP. Without B frames there are no forward references so you can't have open GOPs.
    Last edited by jagabo; 9th Jun 2011 at 09:42.
    Quote Quote  
  10. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    i ended up doing this :

    # -= AviSynth v2.5.8.5 script by FitCD v1.2.8 =-
    LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
    Mpeg2Source("F:\100 limites\Nouveau dossier\1.de bonne humeur.d2v" , upConv=1, CPU=6)
    ColorYUV(Levels="PC->TV")
    ConvertToYUY2(interlaced=true) # For VirtualDub or CCE

    maybe my last line was too much !?
    and fed it to avstodvd tweaked the settings not to have crop or resize
    and skiped the virtualdub thing
    Quote Quote  
  11. Originally Posted by smartel View Post
    i ended up doing this :

    # -= AviSynth v2.5.8.5 script by FitCD v1.2.8 =-
    LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
    Mpeg2Source("F:\100 limites\Nouveau dossier\1.de bonne humeur.d2v" , upConv=1, CPU=6)
    ColorYUV(Levels="PC->TV")
    ConvertToYUY2(interlaced=true) # For VirtualDub or CCE

    maybe my last line was too much !?
    You mean ColorYUV(Levels="PC->TV")? That's probably not right. Check the levels with Histogram(). Make sure the video stays predominantly out of the brown bands. But you want your blacks to be at the left band, brights at the right band:

    Click image for larger version

Name:	hist.jpg
Views:	231
Size:	60.8 KB
ID:	7302

    Obviously, not every shot will have full blacks and full brights. Adjust for a variety of shots.
    Last edited by jagabo; 10th Jun 2011 at 01:25.
    Quote Quote  
  12. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    i did the histogram() and everything looked fine ,
    it was a fitcd setting .
    isn't the same has ConvertToRGB(matrix="PC.601") but for ColorYUV ?
    Quote Quote  
  13. Since you are specifying upConv=1 in Mpeg2Source() the output of Mpeg2Source() is YUY2. So the ConvertToYUY2() at the end of your script is redundant.

    The levels should already be in the Y=16-235 range. (Maybe the AIW is unusual in this respect?) ColorYUV(Levels="PC->TV") will then compress the Y range even further, roughly 32-215. If the levels were right to start with that will give very washed out, dull looking video. On the top is the normal MPEG 2 video, below after ColorYUV(Levels="PC->TV"):

    Click image for larger version

Name:	pctotv.jpg
Views:	882
Size:	26.2 KB
ID:	7304

    So your script could look like:

    LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
    Mpeg2Source("F:\100 limites\Nouveau dossier\1.de bonne humeur.d2v", upConv=1, CPU=6) #output is YUY2
    ColorYUV(Levels="PC->TV") #or some other YUV adjustment, if necessary
    # video already YUY2 for VirtualDub or CCE
    If you were using HcEnc, which accepts YV12:

    LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
    Mpeg2Source("F:\100 limites\Nouveau dossier\1.de bonne humeur.d2v", CPU=6) #output is YV12
    ColorYUV(Levels="PC->TV") #or some other YUV adjustment, if necessary
    Last edited by jagabo; 10th Jun 2011 at 08:49.
    Quote Quote  
  14. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    ok very well thank you
    Last edited by smartel; 10th Jun 2011 at 10:05.
    Quote Quote  
  15. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    on another post , jagabo you talked about mpeg artifacts

    i did a quick search and their is lots to be aware about

    Aliasing , Quantisation Noise , Overload (wrap-around) , The Gibbs Effect ( a.k.a mosquitos) ,
    Blockiness , and maybe more !??

    interesting reading http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/sab/report.html

    with my videosoap i should get by with the mosquito noise (at least most of it)

    with the bitrate (20M/s) i should get by for the blockiness (and maybe the Quantisation noise)
    with the others , i'm not really shure

    if i understand correctly , adding P-frames with my I-frame would even out the bitrate within the GOP
    because P-frames hold less information so needs less bits/second (and processing) keeping the data for the I-frame

    it's a raw interpretation , but it's my understanding

    and capturing avi wouldn't give me any of these errors
    Quote Quote  
  16. Capture in avi lossless man it's much better, it's a bit for bit copy you'll have, you can easily manipulate it in software after.If you want a good encoding i suggest you forget mpeg2 forever and have a look at x264.

    Best pro mpeg2 encoders will not be even close to x264 results, always blocking somewhere.
    I found good x264 settings recently for vhs back up if you're interested
    *** DIGITIZING VHS / ANALOG VIDEOS SINCE 2001**** GEAR: JVC HR-S7700MS, TOSHIBA V733EF AND MORE
    Quote Quote  
  17. Originally Posted by smartel View Post
    on another post , jagabo you talked about mpeg artifacts

    i did a quick search and their is lots to be aware about

    Aliasing , Quantisation Noise , Overload (wrap-around) , The Gibbs Effect ( a.k.a mosquitos) ,
    Blockiness , and maybe more !??

    interesting reading http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/sab/report.html

    with my videosoap i should get by with the mosquito noise (at least most of it)

    with the bitrate (20M/s) i should get by for the blockiness (and maybe the Quantisation noise)
    with the others , i'm not really shure

    if i understand correctly , adding P-frames with my I-frame would even out the bitrate within the GOP
    because P-frames hold less information so needs less bits/second (and processing) keeping the data for the I-frame

    it's a raw interpretation , but it's my understanding

    and capturing avi wouldn't give me any of these errors
    At 20 Mb/s I don't think you'll have too much blockiness or posterization. Mosquito noise, ie, DCT ringing artifacts, will still be there to some extent. But with VHS capture the video is pretty noisy so you probably won't see it.

    In theory, using I and P frames will give you better compression because the P frames only encode the differences between succeeding frames. So at the same bitrate IP sequences will require less bitrate than all I frames. Or conversely, at the same bitrate IP sequences should have better image quality. But with VHS there's so much noise you might not see much difference. I would try it both ways on the same video and compare results. Also compare a lossless YUY2 + HuffYUV capture.
    Quote Quote  
  18. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    well because it is so noisy (1st , 2nd and even 3rd generations dubs (a few))

    thats why i want to use my videosoap it helps a bit
    and i will convert to dvd and use jagabo's avisynth trick

    when i'll get more experienced i may try other things too
    for now i'm trying to cap whole tapes and do some tests

    i know , in the futur i will get a bigger hard drive and go uncompress

    uncompress or looseless well huffy..
    Last edited by smartel; 15th Jun 2011 at 21:26.
    Quote Quote  
  19. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    Originally Posted by themaster1 View Post
    Capture in avi lossless man it's much better, it's a bit for bit copy you'll have, you can easily manipulate it in software after.If you want a good encoding i suggest you forget mpeg2 forever and have a look at x264.

    Best pro mpeg2 encoders will not be even close to x264 results, always blocking somewhere.
    I found good x264 settings recently for vhs back up if you're interested
    yes i'm interested in your x264 settings for VHS , hopefully in freeware
    Quote Quote  
  20. You would still be better of capturing as HuffYUV AVI then using various software filters to reduce the noise later. The only real drawback is the much larger intermediate files.
    Quote Quote  
  21. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    thanks for the advice ..

    another silly question
    should i plug my vcr's audio directly into my soundcard (old soundblaster)
    via a 1/8-RCA adapter ?

    and not follow the video route,
    the video goes through a tbc ,
    direct i know it should be better
    i'm worried about audio sync

    now my audio is in sync but i get some noise
    Quote Quote  
  22. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    as suggested here is a sample

    was captured with mmc 9.02 for some reason virtualdub didn't seam to work last night
    i don't know if it makes any difference !?

    and the info


    General
    Complete name : F:\100 limites\Sample (12 40 am).avi
    Format : AVI
    Format/Info : Audio Video Interleave
    File size : 25.1 MiB
    Duration : 2s 457ms
    Overall bit rate : 85.8 Mbps
    Writing library : VirtualDub build 32842/release

    Video
    ID : 0
    Format : Huffman
    Codec ID : HFYU
    Duration : 2s 457ms
    Bit rate : 84.2 Mbps
    Width : 704 pixels
    Height : 480 pixels
    Display aspect ratio : 3:2
    Frame rate : 30.116 fps
    Standard : NTSC
    Color space : RGB
    Bit depth : 8 bits
    Bits/(Pixel*Frame) : 8.278
    Stream size : 24.7 MiB (98%)

    Audio
    ID : 1
    Format : PCM
    Format settings, Endianness : Little
    Format settings, Sign : Signed
    Codec ID : 1
    Codec ID/Hint : Microsoft
    Duration : 2s 457ms
    Bit rate mode : Constant
    Bit rate : 1 536 Kbps
    Channel(s) : 2 channels
    Sampling rate : 48.0 KHz
    Bit depth : 16 bits
    Stream size : 461 KiB (2%)
    Interleave, duration : 41 ms (1.23 video frame)
    Interleave, preload duration : 500 ms

    info() gives me assume bottom field when i know it should be top field
    gives me yuy2 , not RGB like mediainfo says

    and the histogram() gives me a little too much blacks
    sample made with virtualdub in direct stream copy

    and my audio isn't in sync anymore ,, plugged directly in the soundcard
    Image Attached Files
    Last edited by smartel; 16th Jun 2011 at 09:28.
    Quote Quote  
  23. Ouch! The saturation is way over the top. I'd start by pulling those down:
    ColorYUV(cont_y=-10, cont_u=-80, cont_v=-80)
    Quote Quote  
  24. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    would look like this

    now my problem is sync the audio went direct to the soundcard and the video was buffered into the tbc giving me out of sync , (hope it's not gradual lost of sync)

    i'll try to test this with media player classic . never done this before
    i'll check the sync at the start and the end of my capture and hope i get the same results
    Image Attached Files
    Quote Quote  
  25. You also have a severe dot crawl problem caused by leakage of the chroma channels into the luma channel. Are you using some kind of cheap composite to s-video adapter?
    Quote Quote  
  26. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    s-video through tbc-1000 but i think this may be a 2nd generation dub

    would Undot() be useful for this ??
    Last edited by smartel; 16th Jun 2011 at 12:57.
    Quote Quote  
  27. You can use CheckMate() to reduce the dot crawl. Unfortunately, it only works in YV12:

    AviSource("Sample (12 40 am).avi")
    AssumeTFF()
    ColorYUV(cont_y=-10, cont_u=-80, cont_v=-80)
    ConvertToYV12(interlaced=true)
    CheckMate()
    Before Checkmate() (4x point resize):
    Click image for larger version

Name:	before.png
Views:	837
Size:	56.7 KB
ID:	7387

    After Checkmate() (4x point resize):
    Click image for larger version

Name:	after.png
Views:	792
Size:	54.3 KB
ID:	7388
    Last edited by jagabo; 16th Jun 2011 at 13:39.
    Quote Quote  
  28. Member
    Join Date
    Dec 2010
    Location
    quebec
    Search Comp PM
    using this

    LoadPlugin("C:\Program Files\MeGUI_2008_x86\tools\avisynth_plugin\checkma te.dll")
    LoadPlugin("C:\Program Files\MeGUI_2008_x86\tools\ffms\ffms2.dll")
    FFVideoSource("F:\100 limites\Sample (12 40 am).avi").AssumeFPS(30.116)
    AssumeTFF()
    ColorYUV(cont_y=-10, cont_u=-80, cont_v=-80)
    ColorYUV(Levels="PC->TV")
    ConvertToYV12(interlaced=true)
    Checkmate()

    is my ColorYUV(Levels="PC->TV") obsolete ?

    i checked with histogram() and helped my blacks
    Image Attached Files
    Quote Quote  
  29. Yes, ColorYUV(Levels="PC->TV")is crushing the range too much. My ColorYUV(cont_y=-10...) might not be quite enough. Try maybe -15 instead of -10. You have to look at a wider variety of shots to be sure though.

    Then you can start thinking about general noise reduction. Try something like MCTemporalDenoise()

    AviSource("Sample (12 40 am).avi")
    AssumeTFF()
    ColorYUV(cont_y=-10, cont_u=-80, cont_v=-80)
    ConvertToYV12(interlaced=true)
    CheckMate()
    McTemporalDenoise(interlaced=true, settings="medium")
    Last edited by jagabo; 16th Jun 2011 at 13:38.
    Quote Quote  



Similar Threads

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