Why does video conversion take so long? Any tweaks?

YouTube supports 4k video. Not very common, of course, since essentially no display devices support that res.

To partially answer Keeve’s question, I’ve always heard that 35mm film was equivalent to 2400 x 3600 pixels (=2400DPI), so that kind of digital resolution would approximate traditional, stock movie film. Once the gold standard that digital wanted to emulate, digital should be able to surpass film if the cost can be contained, and it can only get cheaper.

And even at those resolutions, the image can still look horrendous. Line art and text particularly can come across as jagged; this is particularly noticeable with rolling credits and with some cartoons. Film may have a similar effective resolution, but because it’s analog, pixelization isn’t an issue.

The way modern operating systems handle input/output, it’s already similar to a RAM disk. When you write something to disk, the OS actually writes it to a memory cache, and only flushes this cache to the physical media after the cache is full, or after a certain amount of time, or when the system isn’t otherwise busy. This is why, with removable media such as USB hard drives, you need to tell the operating system you want to “unmount” or “safely remove” the hardware before disconnecting it; the OS needs to flush the cache and actually write the data.

I don’t know why but that quote struck me as really funny. Funny in the fact that I am recalling my first computer with its huge 250mb hard drive. I remember purchasing my first 1gb hard drive. I don’t remember the price right now, but I do remember the uneasy feeling in my stomach as I cut the check. Then again I distinctly remember paying $160 for 4mb of ram in the early '90s.

What Rhythmdvl is doing is commonly called transcoding - converting one compressed video/audio file format to another. And (as noted) this is a slow process, usually involving multiple passes.

Generally, the original file is fully decompressed to raw, uncompressed video/audio. This process can proceed at faster than realtime, especially if the decompressor can use built-in hardware (i.e CPU or GPU functionality) to accelerate the process. An initial pass over the file may be required to identify key frames (where the image changes substantially so that motion compression cannot be used), and then the file is compressed. Depending on the compression being used, this may also be accelerated by hardware (ie compression cards or GPU). This process is also repeated for audio, and the output wrapped up in a container file. Multithreading on multi-core processors will also increase the speed.

For Rhythmdvl with ATI cards, ATI Avivo may be a GPU-accelerated possibility, but it looks like FLV may not be supported. The other options include the opensource products MPlayer/Mencoder or ffmpeg which can use hardware acceleration if you find the correct compiled versions. This option may not be useful on Windows, however.

Si

The major difference between Movie CGI and Gaming is raytracing. This handles multiple lighting, reflections, shadows, textures and caustics in a realistic manner, but is massively intensive computationally. While there has been work on realtime raytracing (I know someone who has worked on this on a PS3), the resolution and framerates are not yet sufficient. This will be the future of games, but the current model (polygon mapping with textures and light maps) will continue for many years.

Another point, while movies may be printed (or shown directly) as 2K or 4K, when rendered, they are almost certainly antialiased by supersampling (rendering at 2x or 4x the resolution and averaging to the intended resolution). This massively increases the compute requirements.

Si

@ Rhythmdvl, if you have a lot of internet bandwidth, you might consider uploading your video to the cloud to transcode instead. Pay a few bucks and put an entire server farm to work instead of just using your desktop.

There are several dedicated services that do this (sorry, I didn’t like any of the ones I tried, so Google around and find some yourself), or you can set up your own cluster on Amazon EC2 for (likely) the best performance.

Did that really warrant a rolleyes? They’re different, and as you yourself mentioned, RAM disks are typically faster than SSDs. In a thread about speed, that’s somewhat important… not to mention the whole volatility thing. Conflating the two just isn’t right.

Also, maybe this is obvious, but videos you upload to YouTube get converted by them automatically, for free. Similar effect to cloud transcoding.

They get converted to a proprietary codec in a proprietary container format which isn’t convenient to use offline and isn’t supported by most consumer electronics. Besides, in many cases it will take longer to upload the video to YouTube and wait for it to do the transcoding than for you to just do the transcoding yourself; doing it locally also gives you control over the resolution, bit rate, etc.

Well, the OP said his/her most common usage scenario was transcoding to FLV, so I just assumed the video was going online eventually. If that is indeed the case, YouTube is often the best way to do it.

Proprietary or not, YouTube videos can be viewed on pretty much every major PC and mobile operating system. Its videos likely have the best market support, even compared to things like MPEG/H264/MOV whose per-device support (or lack thereof) is dependent on finicky encoding settings.

If you upload a video at its highest resolution, YouTube makes all the lower resolutions (240p/320p/480p, etc.) automatically available without any extra encoding work on your part.

And YouTube is quite reliable, fast, and backed by one of the world’s biggest companies.

So if the video’s going online anyway, YouTube is worth considering. If not, you’re right, YouTube wouldn’t be the best choice.

What is the best freeware program you guys know for video conversion? What is the best non-freeware one? I’m curious.

I tend to find that I lose resolution in video conversion, even if I tell the program to maintain the highest resolution.

I’ve used SUPER, which is a GUI front end to mencoder/ffmpeg. You can use mencoder directly, but be prepared to spend some time figuring out the command line options.

Si

When I upload video to youtube, then I have the option to download it as an mp4 file. Material I uploaded at 720p also downloaded at 720p, but at a lower quality setting I think.

I like HandBrake (free).

If you’re working with compressed formats you’ll always lose resolution-even if you’re just editing and saving in the same format. It gets recompressed each time, throwing away a little more information each time. You’d have to work in an uncompressed format to not lose resolution (which means much larger files).

There are lossy and lossless compression algorithms - so it’s not guaranteed you will lose something.

Actually, you won’t lose resolution (i.e., the physical dimensions of the picture won’t change), though if you use a lossy compression algorithm you will lose image quality.

I admit i’m not an expert in the terminology of video, although i do use Handbrake for a fair bit of video conversion, and i did stay at a Holiday Inn Express last night.

I’m more familiar with still photography, and when photographers use the term “resolution,” they’re generally talking about the dimension of the image in pixels. Using this terminology, re-encoding need not result in any loss of resolution. A 720p (1280x720) video will still be 720p after you’ve compressed it. It might have lost some quality due to the compression, but the resolution will be the same unless you specifically tell your converter to resize the image.

In talking about image quality as a result of compression, photographers are more likely to use terms like quality, compression, artifacts, etc.

Does resolution not mean the same thing in video as it does in still photography?
ETA: Well, while i was typing all that, psychonaut appears to have answered my question.

Ok, I have to ask, how does the Holiday Inn factor in?