1. Sign-up to become a member, and most of the ads you see will disappear. It only takes 30 seconds to sign up, so join the discussion today!
    Dismiss Notice

Newbie question: What is the difference between MPEG4 and DIVX codecs and...

Discussion in 'Computers' started by Phil L, Jun 15, 2003.

  1. Phil L

    Phil L Supporting Actor

    Joined:
    Dec 27, 1998
    Messages:
    782
    Likes Received:
    0
    Trophy Points:
    0
    Is there a major quality difference between the two?

    I'd like to transfer my old vhs tapes to dvd. I'd like to store them on DVDs in MPEG4/DIVX avi files to save space. I've seen a couple of capture cards that do MPEG4 but only one the does DIVX.
     
  2. Scott L

    Scott L Producer

    Joined:
    Feb 29, 2000
    Messages:
    4,457
    Likes Received:
    1
    Trophy Points:
    0
    Capture cards can almost always capture in any codec when using a 3rd party program like Virtual Dub. DivX is a codec based on MPEG-4 but fine tuned for displaying low-bitrate files better than the other derivatives out there. There's also Xvid which is quite good but there's a lot more settings to fool with I hear.

    For archival stuff such as your old home movies you might want to consider capturing to Huffyuv (a lossless, raw YUV codec) and converting that to mpeg-2 so you can play it in your DVD player. Divx/mpeg-4 is usually for computer-only videos. Many have their PCs hooked to their TV so Divx would be a fine choice for archiving also.

    *Note: Huffyuv takes a huge amount of HD space, so capturing to Divx then converting that to mpeg-2 is also an option if gigabytes are sparse.
     
  3. Phil L

    Phil L Supporting Actor

    Joined:
    Dec 27, 1998
    Messages:
    782
    Likes Received:
    0
    Trophy Points:
    0
    Thanks for the response.

    I was thinking of getting this videocard

    http://www.leadtek.com.tw/3d_graphic...myvivo_1.shtml

    which says it can capture to MPEG4. I was hoping to just capture directly to MPEG4 so that I wouldn't have to spend the time and CPU effort of re-encoding. Did that make sense?[​IMG]

    Also, I'm planning on buying the bravo D1 set-top DVD player which plays MPEG4/divx files.
     
  4. Scott L

    Scott L Producer

    Joined:
    Feb 29, 2000
    Messages:
    4,457
    Likes Received:
    1
    Trophy Points:
    0
    Oh well then I'd recommend getting a capture card made specifically for vid capping, like the Lifeview Flyvideo 2000. This is the one the AVS guys recommend and I do as well, awesome S-video and composite capturing quality. Only $40 shipped here.

    Then you grab the software called Fly 2000 TV made specifically for this card ($30) and you got a top notch analog conversion system. You can capture to any codec you want, Divx 5 Pro, mpeg-4 VKI, etc...

    Also I'm assuming the Bravo plays mp3? You can also capture the audio in ~160kbps CBR mp3 on the spot as well.
     
  5. Phil L

    Phil L Supporting Actor

    Joined:
    Dec 27, 1998
    Messages:
    782
    Likes Received:
    0
    Trophy Points:
    0
    Scott,

    Thanks, I'm going to take a look at the links you provided.

    I'll probably come back later with a few questions.

    Do you think the setup or plan I described can capture at good quality?

    Also, I don't need a card designed for MPEG4 to capture in that format[​IMG]

    Yes, the Bravo does MP3.
     
  6. Rob Gillespie

    Rob Gillespie Producer

    Joined:
    Aug 17, 1998
    Messages:
    3,632
    Likes Received:
    5
    Trophy Points:
    0
    Phil, if you want really good quality you'll need to capture and encode separately. There is a reason that the encoding programs take hours and hours to produce good results.
     
  7. Scott L

    Scott L Producer

    Joined:
    Feb 29, 2000
    Messages:
    4,457
    Likes Received:
    1
    Trophy Points:
    0
    Don't wanna be a thread whore but I have an HTPC that let's me browse in between commercials and your questions keep calling me. [​IMG]

    The Leadtek- Good quality? Not sure. Better than the Lifeview? Definitely not. I've been through 5 capture cards, 1 being on the graphics card itself, and the FV 2k smokes em all. It's just better when things are seperated to reduce noise and/or noise filters (which reduce qulaity).

    The card itself is never codec specific (unless it does hardware encoding which is usually bad). All it does is display the input onto your monitor. It's up to your CPU to record the video, and your CPU can be told to record it in any format that you want.

    *to add on what Rob said, I very much agree. Capturing material to a lossless codec then converting to whichever format you want later is much more flexible. You can do things such as multipass encoding to cut down on the file size, or do A/B comparisons with another codec. If you don't like the result simply re-encode, pretty soon you'll find the sweet spot of the size/quality ratio you're looking for.
     
  8. Phil L

    Phil L Supporting Actor

    Joined:
    Dec 27, 1998
    Messages:
    782
    Likes Received:
    0
    Trophy Points:
    0
    Oh yeah, one other thing,

    The card I posted a link to claims to do de-interlacing. It seems like it would be a time advantage to do that in the hardware. Should that be a factor?
     
  9. Phil L

    Phil L Supporting Actor

    Joined:
    Dec 27, 1998
    Messages:
    782
    Likes Received:
    0
    Trophy Points:
    0
    Okay, did some looking. Sounds like the FLY2K is a good and inexpensive way to go. Where can I find Huffyuv? You wrote that its a HD killer, how much so? I was planning on adding a 120-160 gig HD for this.

    So a good plan might be for

    Videos that I want in highest possible quailty I would:
    step 1: capture to Huffy
    step 2: encode as MPEG2
    step 3: burn to DVD

    in the above scenario when would I de-interlace with dscaler?

    Videos where lesser quality is acceptable (episodes of Millennium until Fox releases them, and similar)
    step 1: capture as MPEG4
    step 2: burn to DVD
    step 3: watch on Bravo D1

    Oh, yet another question:

    The S-VHS player from which I'd play the tapes into the card has TBC. Should I leave that on or turn it off?
     
  10. Rob Gardiner

    Rob Gardiner Cinematographer

    Joined:
    Feb 15, 2002
    Messages:
    2,950
    Likes Received:
    1
    Trophy Points:
    0
    Phil,

    I would recommend doing ALL of your capturing in HUFFYUV, then encoding to MPEG-2 (DVD) or MPEG-4 (DIVX) as appropriate. Capturing to MPEG4 will give very poor results.

    If these videos are for your own personal use, and you end up getting the Bravo D-1 with MPEG-4 support, then there would be no need to encode to MPEG-2. MPEG-2 was great in 1997, and I will continue to buy pre-recorded DVDs in this format, but for videos you encode yourself at home, MPEG-4 is the way to go. You can achieve DVD quality results with a MUCH smaller file. Also the "authoring" requirements for DVD are quite high, while DivX discs do not need to be authored; simply burn your AVI file in the root directory of an ISO-9660 disc with Nero or your favorite burning program.

    I would suggest you capture your videos in HUFFYUV then learn a little program called AVISYNTH. AviSynth is a frameserver. It will read your source video, in whatever format it is in (AVI, MPG, WMV, MOV, pretty much anything except Real Video) and "feed" the video, frame-by-frame, to your encoding application, as if it were a regular avi. This allows you to overcome file format limitations of your encoding app. ALSO AviSynth has some VERY POWERFUL filters that can do a tremendous job cleaning up your video. There are DEINTERLACING filters for AviSynth that I can pretty much guarantee will do a better job than anything built into a capture card.

    I do this at work with police videos. They are shot with (I believe) regular VHS camcorders mounted in the front of the polie car. (Possibly they are recorded on VHS-C and transferred to regular VHS before delivery to our office; I'm not sure.) The picture is grainy and generally "crappy". Stereotypical poor quality VHS. I capture the video to the "DV" format with a hardware converter. (If I was to do this all over again, I might pick a solution that allows HUFFYUV captures as DV is slightly lossy).

    Some notes on deinterlacing: if your source was shot on a video camera, such as certain TV material, you will want to "deinterlace" the video to get rid of the scan lines. However, if your source is progressive scan (i.e. film) then you want to "inverse telecine" (IVTC). If your source is hybrid (i.e. shot on film but edited on video) then you are in trouble. [​IMG] However, a gentleman named Donald Graft has created a filter that combines deinterlacing and IVTC and can do quite a good job on hybrid material. For pure video (i.e. that needs to be interlaced but NOT ivtc'd) there are many other options available for AviSynth, including TomsMoComp which uses a Motion Compensation algorithm. I understand the results from this filter are quite good. I still have a lot of experimenting to do myself.

    Also there are many many options for noise reduction on crummy VHS captures. You may notice chroma noise in the video (i.e. red, blue, and green splotches in what should be areas of solid color) and fortunately there is a Chroma Noise Reducer that gets rid of most of it. Clearing up the grain in the image is a snap with a temporal- or spatial-smoother (or a spatial-temporal-smoother if you want to get fancy).

    You can also trim off the ends of the footage, cut out commercials, get rid of station bugs, add titles, crop off the ugly "squiggly line" that appears at the bottom of VHS caputres, etc. etc. etc.

    And even though this sounds, complex, AviSynth makes it quite easy to do! Here is a sample AviSynth script (with comments):

    LoadPlugin("C:whatevertomsmocomp.dll") #loads deinterlacer
    LoadPlugin("C:whatevercnr2.dll") #loads chroma noise reducer
    LoadPlugin("C:whateverdust.dll") #loads regular noise reducer
    OpenAviSource("chutney.avi") #opens my source video
    TomsMoComp() #performs deinterlacing
    CNR2() #gets rids of chroma noise
    PixieDust() #gets rid of grain
    BilinearResize(648,480) #resizes to divx resolution

    Simply save this text file with an *.AVS extension. Your video program will open this AVS file as if it were an AVI with the specs indicated. i.e. it will be properly sized, deinterlaced, and de-noised. If you want to try something a little different, simply edit the script and re-open in your video app to see the results. After the project is finished, SAVE the AviSynth script to use on your next project, just cut & paste.

    At this point, you can experiment with encoding parameters. DivX will have a much easier time encoding with good results if the video is first cleaned up with AviSynth. I shudder to think what a DivX *capture* would look like considering the encoding is one pass, done in real time, without any of the enhancements AviSynth is able to provide.

    Feel free to contact me privately if you would like to know more. I am constantly developing my procedures to get the best results, and I would love to exchange tips with you.

    Best of luck!
     
  11. Phil L

    Phil L Supporting Actor

    Joined:
    Dec 27, 1998
    Messages:
    782
    Likes Received:
    0
    Trophy Points:
    0
    Rob,

    Terrific post, Thank You!

    You described some very interesting and sensible procedures there. I'm sure I'll Message you after I've gotten my equipment and gotten started.
     

Share This Page