Not that this exactly answers your question, but it is worth noting that the GLES2 implementation-defined format is actually framebuffer-dependent, and thus may not always be the same.
Quoting from page 103 of the ES 2.0 spec:
The values of format and type for this format may be determined by calling GetIntegerv with the symbolic constants IMPLEMENTATION_COLOR_READ_FORMAT and IMPLEMENTATION_- COLOR_READ_TYPE, respectively. The implementation-chosen format may vary depending on the format of the currently bound rendering surface.
On 2010-11-01, at 1:47 PM, Gregg Tavares (wrk) wrote:
OpenGL ES 2.0 specifically only allows readpixels to work with 2 formats.