Resolution Confusion!


ljones

Member
Joined
Aug 12, 2006
Messages
220
Hello all,

I've just recently bought a GP2X and now I'm thinking about getting the breakout board and the TV out cable. When I bought the GP2X I remember reading its maximum resolution output over TV out was at 720x480. But looking at this wiki page;

http://wiki.gp2x.org/wiki/TV-Out

Says that it's only 640x480 "amplified" from 320x240. Which is correct? Is the 640x480/720x480 not really 640/720 x 480? Does that mean that 640x480 is just a scaled 320x240 display :( ?

ljones
 
Um... I'm not 100% sure, but I think the scaling is just relative to the input resolution. Obviously most programs are written to a 320x240 resolution, and so have to be scaled up to 640x480 resolution for TV.

The MagicEyes chip can decode video at 720x480 resolution, and I think it retains the scale as much as possible when outputting to TV.
 
the wiki page is wrong, its 719*479 for ntsc and 719*575, keep in mind that thats interlaced so you have to devide the vertical res /2 for the "real" res.
Theoretical the chip can support resolutions up to 1024*768/1080i, however this potential is not yet used.
 
PokeParadox posted on Aug 20 2006 at 07:13 AM said:
Um... I'm not 100% sure, but I think the scaling is just relative to the input resolution. Obviously most programs are written to a 320x240 resolution, and so have to be scaled up to 640x480 resolution for TV.

The MagicEyes chip can decode video at 720x480 resolution, and I think it retains the scale as much as possible when outputting to TV.

I agree, this is how it works. If your program/movie resolution is 320x240 then the magiceyes chipset will upscale the resolution (e.g. Stretch) to the target resolution for TV 640x480 with correponding degradation in quality due to less data to sample. Anything higher than that would look attrociously distorted. The result is like using tvout w/a computer.

If your starting resolution for video is 720x480 (e.g. the maximum), it will be downscaled to the TV Target 640x480; but with much better clarity due to much higher sampling. :)

I would assume that anything below 640x480 would be upscaled to that resolution. And anything over would be downscaled for TVout.

Hmmmm....Now that I think about it, I wonder if resizing my full size videos to 640x480 would increase my battery life; since the the chip wouldnt be doing any scaling(which is battery intensive), with the corresponding savings in filesize?

Well I'm off to experiment!
 
Last edited by a moderator:
Vimacs posted on Aug 20 2006 at 12:21 PM said:
the wiki page is wrong, its 719*479 for ntsc and 719*575
Not sure why you've taken 1 off everything. The sizes are 720x480 and 720x576.

Now I don't know exactly how the movie player does stuff (it should interlace, but god only knows how GPH may have implemented stuff), but this is how things seem to work for SDL apps. When tv out is enabled the physical width and height is set to either 720x240 (ntsc) or 720x288 (pal). As Vimacs said the height is halved because a tv usually interlaces the display which means it only really has a height of 240 or 288, and so for a 480 height the odd numbered lines are displayed on one frame, and the even ones on the next. Most computers that use a tv (like the Amiga for example) or consoles tend to keep the height at around 200-256 and just display the same lines on both interlaced frames. This stops the nasty flickering problems you get if you try to use the full height (if the full height is used a single pixel horizontal line would only be displayed on every second frame).

TVs also suffer from overscan, which is where the edges of the picture don't fit into the screen. This is why resolutions are never usually things like 720x288 or 360x288 and tend to be things like 640x240 and 320x240 instead (these are pal sizes. ntsc is usually a height of around 200 I think).

So to put it simply, the gp2x doesn't scale 320x240 up to 640x480. It scales up to 720x240 or 720x288. Although what it actually should do (and what I'm implementing for quake) is scale up to 640x240 and centre this in a 720x240 or 720x288 area so you don't get any nasty non-double scaling or overscan.
 
Last edited by a moderator:
Hello! I wrote most of that wiki entry mainly from reading up about the tv-out cable on craigix's site and Lik Sang, but I clearly must have picked up something wrong about the resolution. Would one of you guys who understand this stuff better than me be prepared to update and correct the page?
 
Yeah, I'm not really sure if TV-Out necessarily means a higher resolution. At least on the Mac emulator it doesn't seem that much sharper on NTSC. This video was recorded using TV-Out but still doesn't look like it's above 320x240.

http://www.youtube.com/watch?v=jF1SC_bH8nc

Now, I know it's youtube you at least if it was higher resolution that it would look better.
 
Last edited by a moderator:
Correct me if I'm wrong, but TV-out outputs a higher resolution only if the content (being a video mind you) is encoded at said higher resolution.

- Alex
 
Fat Agnus posted on Aug 21 2006 at 08:45 PM said:
Yeah, I'm not really sure if TV-Out necessarily means a higher resolution. At least on the Mac emulator it doesn't seem that much sharper on NTSC. This video was recorded using TV-Out but still doesn't look like it's above 320x240.

http://www.youtube.com/watch?v=jF1SC_bH8nc

Now, I know it's youtube you at least if it was higher resolution that it would look better.

See, that's the mac emulator, though. I think the higher TV-Out resolutions are only available on movie playback.
 
Last edited by a moderator:
Presumably it's possible to output more than 320x240 from homebrew apps?

I'm thinking psx4gp2x? Would outputting at full res actually reduce the fps, or is it already calculating a 640x480 and scaling it down?
 
Aninhumer posted on Aug 22 2006 at 12:52 PM said:
Presumably it's possible to output more than 320x240 from homebrew apps?
Did you (and many other people in this thread) bother to read anything in my post above? TV resolution as set by the gp2x is either 720x240 or 720x288, so yes of course it's possible to output more than 320x240.
 
Last edited by a moderator:
Aninhumer posted on Aug 22 2006 at 06:52 AM said:
Presumably it's possible to output more than 320x240 from homebrew apps?

I'm thinking psx4gp2x? Would outputting at full res actually reduce the fps, or is it already calculating a 640x480 and scaling it down?

The PSX GPU can render frames between 256x224 and 640x480-- IIRC most games use somewhere around 320x240. You should be able to set the renderer to anything in emulation though-- Windows PSX emulators (and N64 emulators) offer a function to set an OpenGL/Direct3D renderer for the system to whatever level your machine's 3D hardware is capable; e.g. 1600x1200 if you so wish.

I think PSX4ALL has/had some function to render at ~256x224 and scale UP to 320x240 with the GP2X's hardware scaler for a performance gain by reducing ARM920T stress. It'll cause a drop in picture quality but 3D PSX games never rated high on that scale anyway. The 2D games are a different story though and may look a bit sketchy.
 
Last edited by a moderator:
Back
Top