Fix incorrect scale in fbo download.

This caused some videos and scenes to show at the wrong resolution.
Implement intra-buffer block transfer.
Allow block xfer upload when using read fb to mem.
No need to report this anymore, hopefully.
Remove video size hack when uploading fb data.

Seems like this was only helping because we were stretching some
framebuffers before, it only causes problems now.
Merge pull request #6227 from unknownbrackets/gpu-blocktransfer

Implement intra-buffer block transfer