Best compression without loss?

Discussion in 'Computer Software and Operating Systems' started by Flooded, Apr 11, 2008.

  1. Flooded

    Flooded Banned

    Jan 13, 2008
    United States
    My professor is trying to find a better format for his videos he makes he is currently using Windows Movie Maker to compress the videos and his first video is 60mb and he wants a format that takes up smaller size without much loss.

    I have looked into but I am having a bit of trouble converting them.

    What software and format do you suggest he uses after he records his videos on his PC. I want to test it and show him the format and software on the already released videos first.

    Its a tech class and he uses vmware to record his videos and uses a microphone to record his voice.

    Any help would be greatly appreciated.
  2. fischju

    fischju Rehabilitated Jaywalker

    Jan 11, 2008
    United States
    Automkv is an awesome encoder that can easily do mkv files.
  3. FAST6191

    FAST6191 Techromancer

    pip Reporter
    Nov 21, 2005
    United Kingdom
    I had a similar problem: one of my old lecturers decided uncompressed wave was good for presentation voiceovers. Lets not even get into what happened when 300 people had to simultaneously download them from the poor old server.

    Do you really want lossless compression or will high quality lossy do? lossless is usually only used for archival or for intermediate stages.

    Also who has to watch it and on what machines (school or home: windows, mac, linux and if at home how competent are your classmates (can they install something basically)): I can list standards that will work on just about anything and require hardly CPU time but will probably end up big or less than brilliant quality wise.

    It does not bother me but as you guys are an institution do you have licensing issues: anything I suggest will be freeware but sometimes patents can frustrate matters.

    Lossless: several options here. Playback should be OK when it comes to sorting it out.
    H264 lossless: fairly slow to encode (realtime on a decent machine is possible) and fairly small. Needs a reasonably beefy machine to play it back.
    HUFFYUV: used for years, can encode at stupid framerates on just about anything: (the machine used was a 416 MHz Celeron and that is nearly twice realtime on occasion). Size leaves something to be desired though.
    FFDshow: several options in the inbuilt encoder.
    FFV1: see below. Not bad, somewhere inbetween HUFFYUV and H264 spacewise.
    DV: perhaps more common than HUFFYUV but only just. Lightening fast and fairly nice spacewise.
    LosslessJPG: keep it away from me. Size goes through the roof (I do not know if you saw the wii motion JPG stuff but it was horrible).

    A comparison:

    Lossy: there are thousands of options but I suggest you do not go too exotic.
    MPEG4 ASP: aka divx and xvid. Playable on everything these days (the GBA has a very bad implementation even, the DS has a workable one). Quality is more than acceptable for most people and it does focus on keeping them small. A small subset called MPEG4 SP (SP= simple profile) is also around and is geared towards the older DVD players with MPEG4 support. Divx is payware and xvid is free so I suggest the latter.

    MPEG4 AVC aka H264 aka MPEG4 part 10. System requirements are not nice for both encoding and decoding but quality and space used is brilliant. x264, a command line

    MPG old style: size and quality leave a bit to be desired but will play on anything and be able to do it easily normally right out of the box.

    MPEG2: DVDs and some digital TV transmissions. Do not bother unless making a DVD (which I would suggest you only do at the end of a term/semester/course.

    WMV: I would suggest you avoid it. Older stuff like WMV7/8/9 is usually around xvid quality for the same requirements (I rate it a bit under and non windows users may run into troubles). The newest stuff is supposed to take on H264 but anyone that avoids windows media player (and I avoid it like the plague) is not going to be able to do it.

    After this you have the streamable formats like real, quicktime, flv (think youtube) some wmv. Keep it away from this as everything else can do it better.
    From here there are more interesting codecs like SNOW and other wavelet compression based stuff but as nice as they might be I would avoid them for mass distribution.

    Container: "video files" normally have video and audio and there are ways to mix them together.

    AVI: I suggest this unless you opt for a more unusual standard like H264. Stick with the opendml or earlier spec rather than any of the hacks like .divx (not to be confused with the codec) or other stuff for multiple audio tracks. Just about everything makes them.

    MKV: you already tangled with it and it is my favourite one. Multiple audio, nominally smaller than avi (perhaps a meg on a 350 meg file), subtitles, support for just about every standard in existence. Only pitfall is it is not supported out of the box on many systems (certainly not windows).

    MP4: not to be confused with MPEG4 AVC/ASP above. You may have seen it with m4a extension and quicktime uses a very similar implementation (in a pinch you can rename a quicktime file to .mp4 and it is likely it will play). Should work for most modern computers (as well as stuff like the PSP, ipods and whatnot). Pitfalls can come in that it is somewhat patent encumbered but MP4box and YAMB are nice freeware muxers (stuff like megui uses them).

    WMV: it is a container too. See WMV video codec for more on that. I would not use it.

    Finally audio, again there are about several thousand standards and many more codecs that implement them.
    Lossless: I will do it anyway.
    Uncompressed wave: big and playable on a lot of things. Some DVDs use it.

    FLAC: one of the favourites. In some ways perhaps not quite as good as the others but it is splitting hairs time if you do go here.

    For the rest go here:

    DTS: big and AC3 can be better if done right. Some DVDs use it but I say leave it alone.


    MPEG1 audio layer 2
    this is your MP2 audio. Used occasionally on PAL dvds, DPG video for moonshell and mpg videos. Space is fairly high but demands are not.

    MPEG1 audio layer 3:
    This is your MP3. There are enough guides to it everywhere you go. LAME is the de facto encoder (and rightly so in my opinion).

    AC3: used in DVDs worldwide. Hard to get free encoders of the same flexibility as the other standards actually and space is not so good for the CPU it uses.

    AAC: plays on most things and is damn high quality. More demanding than some on CPU and has several levels/profiles. Nero's (freeware) encoder is the best last I checked although it is command line only.

    Basic video and standard comparison done onto programs. There are millions of them and quality is all over the place. Broadly speaking the easier it is to use the worse it is when it comes to quality: those £/$30 video encoders you see are almost always awful. Freeware and really expensive stuff are usually not so pick up and play but they do the job and do it well.

    SO what to use
    DVDs: make it FAVC. I use it and it is not that hard. More importantly should there be a problem you can rip it apart and tell it exactly what to do.
    Close contenders include DVDflick and doing it by hand with HCenc and any of the tools I suggest in DVD related threads like rejig, vobblanker, PCGedit, ifoedit.

    AVI: there are again about 4 million apps that will do it.
    Virtualdub: quick and easy. Only real downside is input support can be a bit complex and it likes VFW codes (like the FFDshow one I mentioned). VFW (video for windows) is an older way of making video that has fallen out of favour somewhat now directshow has appeared.
    Avisynth (see megui below) and the directshowsource source filter can usually make virtualdub accept anything as an input.

    MKV: I tend to make with megui and mux with mkvtoolnix's mkvmerge (you can also stick avi files in and it will spit out MKV).

    MP4: again make it first and use MP4box and YAMB to get it into MP4 form.

    My suggestion for an app: megui, acts as a frontend to avisynth (a very powerful scripting language for video) and can pretty much do it all for you and leave you with complete control over any aspect you like.

    Failing that avidemux:
    A bit simpler than megui but it is aimed at TV show rippers which would seem to be more or less what you want to do.

    Failing that take a look over at / forums and the guid encoders section there.
  4. Flooded

    Flooded Banned

    Jan 13, 2008
    United States
    Wow thanks alot. [​IMG]