real time image display


 My requirement is to display 24-bit zoomed 1280x960 image data from camera(640x480) over OpenGL at a rate of 30fps. I am using Red hat Linux 7.2. 
 The problem is the time taken for displaying the 30 image(1280x960) data is 2.23 seconds. I am using the function glDrawPixels() for displaying the image data from the camera. 

Is there any way to achieve the increased frame rate.

With Thanks & Regards,

What’s your graphics hardware?
How long does the actual glDrawPixels call take?