Creating 6 Hour DVD with Hauppauge WinTV-PVR250BTV, DVD Shrink and TMPGEnc

Discussion in 'Amateur Video Production' started by BrianEWilliams, Nov 30, 2004.

  1. We are going on a long car trip, and I want to create a 6 hour DVD to
    help entertain my boys. Hopefully I can get some tips, but I'll post
    my results for the record after I go through the experiments.

    My first step was to record the video using my Hauppauge
    WinTV-PVR250BTV card at the standard DVD-Low Res setting. This creates
    352x480 DVD compliant video, but the file size is almost 12 GB.

    I tried feeding it into DVDit, but the program chokes since it appears
    to have a hardwired 9 GB limit. I changed the project size to 20 GB,
    but this didn't help. If this had worked, I was going to use DVD
    Shrink to get the disk size down to 4.7 GB after building the DVD
    folders.

    My next step, which is running now, is to run the 12 GB 352x480 video
    through TMPGEnc 12a to reduce the bitrate enough so that I can run it
    through the DVDit / DVD Shrink process described above. I am guessing
    the file out of TMPGEnc needs to be under 9 GB to run through DVDit.

    My question is this, how do I tell what interlacing patterns to use in
    TMPGEnc? That is, what kind of video does the card produce from the
    DVD Low Res mode? I want to keep the type of video constant, but just
    re-encode at a lower bit rate.

    Right now, I tell TMPGEnc that the video is interlaced and process the
    Even Field First. Here is the template file I am using:

    object TMPEGConfigFile
    MPEG.Text = 'DVD NTSC'
    MPEG.Description = ''
    MPEG.OutputStreamType = MPEG_OutputStreamType_System_VideoAudio
    MPEG.OutputStreamType_ReadOnly = True
    MPEG.Video.StreamType = MPEGVideoEncoder_StreamType_MPEG2
    MPEG.Video.StreamType_ReadOnly = True
    MPEG.Video.Width = 352
    MPEG.Video.Width_ReadOnly = True
    MPEG.Video.Height = 480
    MPEG.Video.Height_ReadOnly = True
    MPEG.Video.YUVFormat = 1
    MPEG.Video.YUVFormat_ReadOnly = True
    MPEG.Video.DC_prec = 1
    MPEG.Video.DC_prec_ReadOnly = False
    MPEG.Video.Interlace = True
    MPEG.Video.Interlace_ReadOnly = False
    MPEG.Video.TopFieldFirst = False
    MPEG.Video.PullDown32 = False
    MPEG.Video.PullDown32_ReadOnly = False
    MPEG.Video.FrameRate = 4
    MPEG.Video.FrameRate_ReadOnly = True
    MPEG.Video.AspectRatio = 2
    MPEG.Video.AspectRatio_ReadOnly = True
    MPEG.Video.RateControlMode = MPEGVideoEncoder_RateControlMode_CQ
    MPEG.Video.RateControlMode_ReadOnly = False
    MPEG.Video.MaxBitRate = 9000000
    MPEG.Video.MaxBitRate_ReadOnly = False
    MPEG.Video.CBR_BitRate = 7000000
    MPEG.Video.MVBR_MaxBitRate = 9000000
    MPEG.Video.MVBR_Quality_P = 0
    MPEG.Video.MVBR_Quality_B = 20
    MPEG.Video.VBR_AvgBitRate = 5000000
    MPEG.Video.VBR_MaxBitRate = 9000000
    MPEG.Video.VBR_MinBitRate = 0
    MPEG.Video.AVBR_Quality = 50
    MPEG.Video.AVBR_MaxBitRate = 9000000
    MPEG.Video.AVBR_MinBitRate = 0
    MPEG.Video.AVBR_EnablePadding = False
    MPEG.Video.CQ_Quality = 65
    MPEG.Video.CQ_Quality_P = 0
    MPEG.Video.CQ_Quality_B = 20
    MPEG.Video.CQ_MaxBitRate = 2000000
    MPEG.Video.VBVBufferSize = 81920
    MPEG.Video.VBVBufferSize_ReadOnly = False
    MPEG.Video.GOP_SeqHeaderInterval = 1
    MPEG.Video.GOP_SeqHeaderInterval_ReadOnly = True
    MPEG.Video.GOP_I_FrameCount = 1
    MPEG.Video.GOP_I_FrameCount_ReadOnly = False
    MPEG.Video.GOP_P_FrameCount = 5
    MPEG.Video.GOP_P_FrameCount_ReadOnly = False
    MPEG.Video.GOP_B_FrameCount = 2
    MPEG.Video.GOP_B_FrameCount_ReadOnly = False
    MPEG.Video.GOP_BitStreamForEdit = False
    MPEG.Video.GOP_BitStreamForEdit_ReadOnly = False
    MPEG.Video.QuantizeMatrix_Intra_ReadOnly = False
    MPEG.Video.QuantizeMatrix_NonIntra_ReadOnly = False
    MPEG.Video.CheckProfile_and_Level = True
    MPEG.Video.CheckProfile_and_Level_ReadOnly = False
    MPEG.Video.Profile = 4
    MPEG.Video.Profile_ReadOnly = True
    MPEG.Video.Level = 8
    MPEG.Video.Level_ReadOnly = True
    MPEG.Video.VideoFormat = 2
    MPEG.Video.VideoFormat_ReadOnly = True
    MPEG.Video.MotionSearchSpeed =
    MPEGVideoEncoder_MotionSearchSpeed_Normal
    MPEG.Video.MotionSearch_AlwaysHalfPel = False
    MPEG.Video.UseFloatDCT = False
    MPEG.Video.QuantizeMode = False
    MPEG.Video.QuantizeModeVal_Intra = 35
    MPEG.Video.QuantizeModeVal_NonIntra = 35
    MPEG.Video.YUVBasicYCbCr = False
    MPEG.Video.QuantizeMatrix_Intra = {
    081013161A1B1D22101016181B1D222513161A1B1D22222616161A1B1D222528
    161A1B1D202328301A1B1D202328303A1A1B1D22262E38451B1D23262E384553}
    MPEG.Video.QuantizeMatrix_NonIntra = {
    1011121314151617111213141516171812131415161718191314151617181A1B
    14151617191A1B1C151617181A1B1C1E1617181A1B1C1E1F1718191B1C1E1F21}
    MPEG.Audio.StreamType = MPEGAudioEncoder_StreamType_MPEG1_Layer2
    MPEG.Audio.StreamType_ReadOnly = False
    MPEG.Audio.SamplingFrequency = 48000
    MPEG.Audio.SamplingFrequency_ReadOnly = False
    MPEG.Audio.ChannelMode = 0
    MPEG.Audio.ChannelMode_ReadOnly = False
    MPEG.Audio.CantUseMono = False
    MPEG.Audio.BitRate = 224000
    MPEG.Audio.BitRate_ReadOnly = False
    MPEG.Audio.CalcCRC = False
    MPEG.Audio.CalcCRC_ReadOnly = False
    MPEG.Audio_OriginalFlag = False
    MPEG.Audio_OriginalFlag_ReadOnly = False
    MPEG.Audio.CopyrightFlag = False
    MPEG.Audio.CopyrightFlag_ReadOnly = False
    MPEG.Audio.PrivateFlag = False
    MPEG.Audio.PrivateFlag_ReadOnly = False
    MPEG.Audio.EmphasisType = 0
    MPEG.Audio.EmphasisType_ReadOnly = False
    MPEG.System.StreamType = MPEGSystemEncoder_StreamType_MPEG2_Program
    MPEG.System.StreamType_ReadOnly = True
    MPEG.System.CommentText = ''
    MPEG.System.EnableCommentText = False
    end
     
    BrianEWilliams, Nov 30, 2004
    #1
    1. Advertisements

  2. <TMPGEnc Template File SNIPPED>

    After I posted, I started thinking some more. Why not just change the
    card's bit rate when recording?
    Then I can just feed the <9 GB result into DVDit, then DVD Shrink, and not
    have to worry about fields
    and interlacing parameters. So I set the card to record 352x480 DVD video
    at a 2500 bit rate. Doesn't
    look great, but it's for viewing on a little portable DVD player, and the
    boys won't know the difference.

    An interesting question is the optimal balance between a low bit rate and
    DVD Shrink's compression algorthm.
    My general intuition about the process leads me to think that it's good to
    have both types of compression, but
    I wonder what the right mix is?
     
    BrianEWilliams, Nov 30, 2004
    #2
    1. Advertisements

  3. BrianEWilliams

    RS Guest

    Is it a firm requirement that you put it all on one dvd? Split it up and you
    won't have to bang your head against the way looking for workarounds.
     
    RS, Nov 30, 2004
    #3
  4. What's the fun is that? Banging my head against the wall is part of
    desktop video, isn't it?

    Seriously, with one disk, we can put it in, mount the DVD player in a
    convenient position, hit play, and then forget about it. Both boys
    love Sesame Street and Teletubbies, so there won't be any arguments
    about what to watch. If one falls asleep, we won't have to deal with
    screams from the other when a shorter disk ends. Ah, the joys of
    parenthood.

    I am still testing the process, but I have a profile for the 250BTV
    card that records the 352x480 video at 2000 and uses 192 for the audio
    rate. BTV estimates that it will be a data rate of 940.8 MB per hour
    of video. It actually doesn't look that bad on a normal TV, and it
    looks fine on the portable DVD player.

    I have had some issues with DVDit, and I tested around these on smaller
    videos to save time. Apparently, if you set the project size to be too
    large, DVDit will crash with an uninformative error. I reset it to
    8900 and just successfully created a disk using the above parameters.

    I am curious to see what kind of degradation DVD Shrink will introduce.
    6 x 940.8 = 5644.8 MB which doesn't seem like it will require a lot of
    compression to fit on a single layer DVD. Just started capturing the 6
    hour VHS tape to MPEG-2, and I'll post the results later.
     
    BrianEWilliams, Dec 1, 2004
    #4
  5. In order to get 6 hours on a single 4.7GB disc you would have to lower your
    VBR to very very low numbers. Your template of a low of 5 and a high of 9 is
    for a better quality picture on playback. You may try a low of 1 and a high
    of 4, but even then it's iffy. Maybe a CBR of 1 or 2 would do it. Geez, the
    picture would suck so bad even small children would lose interest fairly
    quickly. Imagine some of the very worst video you have seen on playback from
    the web and then play that back at double the screen size. That's probably
    the quality you would end up with at 6 hours of running time. You'd probably
    have a better chance at it by creating a large MPEG-1 file at 352x240 which
    most portable DVD players will playback at full 4:3 screen format. Well, at
    least mine does anyway. Even at that level you're probably hard pressed to
    get 6 hours. I dunno, I've never tried. 6 hours on a portable? You must run
    it off the cars' electrical system, huh?

    By the way, NTSC is lower field first.
    --
    Larry Johnson
    Digital Video Solutions

    http://www.digitalvideosolutions.com
    877-227-6281 Toll Free Sales Assistance
    386-672-1941 customer Service
    386-672-1907 Technical Support
    386-676-1515 Fax
     
    Digital Video Solutions, Dec 2, 2004
    #5
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.