Sorry for the title – I want to try & do 3 things… I want to say something about the Aneesoft app, which is only fair since if it wasn’t on GOTD today I wouldn’t be writing this. I want to somewhat qualify Ashraf’s statement that video converters are all the same – it’s like saying all cars are the same – that’s often accurate, but not always. And hopefully most helpful – I want to briefly cut through some misconceptions about working with & playing audio/video.
Aneesoft Video Converter Pro 360 1st… Basically it’s a ffmpeg-based video converter that doesn’t use QT, does use an older version of ffmpeg, and is mostly portable, with a very low impact on Windows. I hang on to many of these converters **when they have low impact** because sometimes a source video gives me problems in my usual, go-to apps – these converters may be *mostly* the same, but they’re not identical, and sometimes running through my collection of converters one of them will work. Ffmpeg is always being updated, so since it uses an older version, I would not consider Aneesoft Video Converter Pro 360 one of my go-to apps.
Now, transitioning into the claim that they’re all the same… Ffmpeg is a large project developing free media handling code libraries & software – there are other, roughly similar projects or efforts, free & not, and like anything else really, each product has strengths & weaknesses. Using ffmpeg means not having to do an awful lot of work writing code, and since it’s free of charge, there’s no investment in licensing code libraries [SDKs etc.] as Engelmann does. So developing a video conversion app based on ffmpeg costs less and is less work, and you’d expect a lot of more-or-less copy cats. Sometimes one of them will get things a bit wrong – sometimes the coders will get something a bit more right. So yeah, Ashraf’s right when he says most of the video converters are the same basically, BUT, that only applies when you’re talking about software based on identical code libraries &/or other included tools.
That said, ffmpeg has 2 main strengths – it’s good at importing media, and it includes the free x264 AVC/H.264 encoder. It’s poor encoding mpg2 or much anything else. Common ffmpeg-based converters rely on Xvid for mp4 & avi – nothing wrong with Xvid 10 years ago, but today there’s little or no reason to use it. If you feed one of the current ffmpeg-based video converters HD video, they’re very good at spitting out a lower resolution AVC file for cells & tablets – that’s pretty much it. I’m Not saying they won’t handle other conversion tasks, but know you could most always do better, sometimes a lot.
OK, so on to video software… My advice is as possible, don’t use it. There are perhaps only 2 or 3 good reasons I can think of to convert or re-encode video to start with – one is for compatibility with tablets, two is to reduce the storage & playback requirements. 3rd would be if you shot the content yourself & need to get that content into a more universal format after optionally editing it. Some may mention editing or altering audio/video they don’t own the rights to, but this isn’t the place to talk about stuff where there might be legal issues. Encoding audio &/or video loses quality – Period – so there’s no reason to bother when you don’t have to… many, many times I see people post about conversions that make no sense – if you can watch it, watch it the way it is. You can however often take audio & video content as-is, and put one or both inside a different container file, all without encoding, so no quality lost or time wasted. A lot of Flash video falls into that category, where you’ve got AVC video already, so just stick it into a more player-friendly container like .mp4 or .mkv if you want. At the very least use the free Media Info to see what you’ve got before you run it through some converter.
Several of the converters that have been on GOTD & similar let you adjust things like color or brightness – Don’t. If you’re editing video you shot, that’s one thing, but otherwise stop & ask: what makes you think it’s off in the 1st place? Very, maybe most often, the problem’s the way you’re seeing it played. And when the problem is due to low quality video, shot for example with a very cheap camera [or web cam], chances are re-encoding will lose so much quality things will look [often much] worse overall. Most LCD monitors, panels, HDTVs etc. cannot natively show you the same number of colors you used to watch on your old CRT monitors, so they fake it in the electronics, sometimes [too often] unsuccessfully, so what appears too dark or tinted or whatever may not be the video’s fault. The average [even low cost] PC monitor has more than one mode, plus custom settings – at least check them out. Check out players too, since software along with your graphics hardware settings can have a huge effect.
Do re-encode DVD or digital broadcast mpg2 to AVC for a tablet or cell – the average hardware in the average cell or tablet is set up to accelerate AVC decoding & playback, & won’t do so well with mpg2, which means larger files anyway – not good when everything’s stored on a micro SDHC card. If you’ve got mpg2 video and your destination is a Blu-Ray player, try leaving it alone, see if it will play. And if you’ve got video you want to put on a Blu-Ray disc, remember that mpg2 is part of the Blu-Ray standard, and is Much lighter when it comes to horsepower used encoding. If you use a media player box with your HDTV, you probably already know that most won’t do well with the higher bit rate AVC used on something like a Blu-Ray disc – Do re-encode higher bit rate AVC to work with these player boxes, &/or to save storage space, but don’t use one of the ffmpeg-based converters if you can help it -- use one of the x264 GUIs instead. If your primary concern is the storage space that HD video can take up, consider using one of the smaller HD video sizes – 1080p video at very low bit rates takes up the same space as 720p at high bit rates, so for the same size file 720p will look better – it’s all about the bit rate. If your player can handle it [it’s Blu-Ray spec], 1440 x 1080 is an in between alternative.
Unfortunately you’ll have to test to determine the best software to use for any conversion, and you should really test whenever there’s a significant upgrade to the software you use most often, after upgrading graphics drivers, & with each new source of video. If most of what you do with video is from files you recorded of game play using an external box, once you get to know what works you’re set, but that in no way means the same workflow will work on every other video in the same format. Video standards are based on players, e.g. a Blu-Ray player has a set of requirements it must pass for certification. Blu-Ray video files only have to be playable in Blu-Ray players – what the files look like inside and how they’re encoded, with what settings, isn’t really spelled out, though obviously all Blu-Ray video files have a lot in common. How any encoder works to create those files is really open. What that means to you is that one app may work great, relatively poorly, or not at all with different video files, regardless if they’re all in the same format. So as soon as one of the variables changes, you’re not guaranteed the same results as last time you (re)encoded that type of video file.
That said, one of the best AVC/H.264 video encoders is x264, a free command line tool with several GUIs or front ends available. There is no equivalent encoder for mpg2 – you can try the free HC, but most of the best carry a price tag, though not always a high one. The most accurate [& usually fastest] frame re-sizing & the best deinterlacing are found in VirtualDub & AviSynth currently, where you’ll also find the best filters & plugins I think for restoring video quality. They’re also harder to work with & you’ll often need to use another app for your final encoding. There are several video apps that make use of individual apps or tools, tying them together with a GUI & built-in scripting so you don’t have to manually use each & every one, but be careful since some of these front ends may also install those helper tools in abnormal ways, so they won’t work, or will cease to work with software that expects these same tools to be normally installed. Whether it’s worth it to go this route versus a more all-in-one converter is up to you, since no one else can determine what quality levels are acceptable, nor can they say what’s too much work for you to bother with.
On Speed… As a rule the more analysis that goes on before a final encoded frame is written to file, the higher the quality. Of course the more analysis being done the more calculations needed & the longer it takes to perform all those calculations. You can often reduce the amount of analysis, &/or you can try to use the graphics processor [GPU] to handle some of the calculations that it might perform faster than the average CPU. First, using the GPU this way does not always work – it’s very dependent on your individual PC/laptop, & what software you’ve got installed. 2nd, there are side effects – one that’s often overlooked is that an app designed primarily for speed will usually cut quality corners elsewhere. The other effect is a loss of quality that varies in amount depending on the hardware used, but is most always there nonetheless.
More people play games than process video, so that’s what GPUs are designed for – routines for faster, better game display are re-purposed. Rather than use the absolute optimal code processed by the CPU, portions of the video processing are sent to the GPU where the closest function is used instead. That’s not to say you should use GPU assist or not – test first to see if any speedup is worth it to you. If you’re encoding video to watch on your cell, it doesn’t have to be as high quality as you might want for your HDTV, or on the other hand, the original video may not have all that much quality to begin with, so you might figure why bother?