Best way to upscale a video?

2

If I have a video file at 320x240 resolution which I want to re-encode (because I don't like the encoding it's in now) and I also want to play it at double size (640x480), will I get higher quality if I scale it up to 640x480 when I convert it to a new format, verses keeping it at 320x240 in the new format and playing it at double size?

This probably depends on the program used to convert, and if so, please let me know any program which might increase the quality.

Here's my thinking. If I play a 320x240 file at double size, the system has to scale up each frame in real time, whereas if I scale up while recompressing the system may be able to use a more intensive algorythm like Bicubic interpolation . However I am not sure if this is true or not.

Josh

Posted 2010-04-20T15:11:30.533

Reputation: 7 540

@Josh - you might want to reword you question to make it clearer what you're after. It wasn't clear to me that you were after a comparison of the two methods of upscaling. – ChrisF – 2010-04-20T15:27:09.830

@ChrisF -- Yeah, I saw that you were confused. I agree I should reword but am not sure how, any suggestions? – Josh – 2010-04-20T15:31:14.393

I'd start with the title - that threw me off so I didn't pay full attention to the body of your question. Unfortunately I can't think of anything "snappy" at the moment. – ChrisF – 2010-04-20T15:33:51.393

Title: "Best way to upscale a video?" Question: "Is it better to re-encode a video to a larger size or to increase the size of the player?" (Answer: try them both, try different players, too) – Doug Harris – 2010-04-20T15:35:40.750

Answers

1

From the list of options for ffmpeg, it appears that when re-encoding you can choose from a variety of scaling algroithms, which leads me to believe you could get (slighly) better quality by re-encoding at a higher resolution rather than playing a smaller resolution video scaled up in real time.

alt text

Selects the algorithm used to resize the image. Choose the default "fast-bilinear" when speed is important. For better image quality but slower encoding, you can choose either Bicubic (best for upscaling, ie scaling to a larger size), Bilinear (best for downscaling, ie scaling to a smaller size than source), Lanczos, or Bicubic spline (sharp picture).

Josh

Posted 2010-04-20T15:11:30.533

Reputation: 7 540

0

The answers are so far are all ignoring the pink elephant in the room: Transcoding between 2 different lossy video formats can only make things worse, not better.

If you're starting from a sufficiently high-quality source format, then you can get away with it without too much noticeable quality loss (e.g. Your source video is a DVD or Blu-ray). But if you're starting with a 320x240 webcam or already highly lossy video, then recompressing to anything resembling a decent bitrate will, if you're lucky, come out looking "not too terrible" in comparison.

Modern CPUs can do pretty high-quality scaling in faster than realtime. Just find a player with decent upscaling options or a good rescaling filter and don't worry about it.

afrazier

Posted 2010-04-20T15:11:30.533

Reputation: 21 316

I don't like the format the source is in now so I will be transcoding anyway. I am aware that this will cause a loss of quality. The issue is specifically the scaling, when I transcode, should I upscale or is that useless? – Josh – 2010-05-02T16:38:16.283

It's useless unless you can find an extremely CPU-intensive, high quality upscaler. I'm not immediately aware of any, but there may be something out there. – afrazier – 2010-05-02T21:05:39.580