Ver Mensaje Individual
  #453  
Viejo 18/01/11, 21:57:01
Array

[xs_avatar]
KalimochoAz KalimochoAz no está en línea
Cocinero veterano
 
Fecha de registro: jun 2008
Localización: Barcelona
Mensajes: 1,092
Modelo de smartphone: HTC Tatoo
Tu operador: Movistar
 Cita: Originalmente Escrito por leon1984 Ver Mensaje
Tu tienes el archivo jpeg??? se podría leer como un fichero binario hasta EOF y luego calcular el tamaño en bytes,no?
la librerái libmmcamera tiene que pedirle el jpeg al hardware, no es un fichero. Para ello usa otras librerías intermedias pero no es tan simple calcular el tamaño. Pensad que he modificado toda la rutina de captura, normalmente esto lo hace todo internamente la librería libmmcamera, pero como fallaba lo he ido haciendo internamente. en resumen qu epara calcularlo tendría que tener alguna funcion en el kernel que directamente lo recuperara del hardware ( pos inicial y tamaño )

El tama está quí:

Código:
    if (mMsgEnabled & CAMERA_MSG_COMPRESSED_IMAGE) {
        // mJpegSize = mRawWidth * mRawHeight * 3 / 2;
        mJpegSize = 1718592;
        if (LINK_jpeg_encoder_init()) {  
            if(native_jpeg_encode()) {
                iLog("receiveRawPicture: X (success)");
                return;
            }
            LOGE("jpeg encoding failed");
        }
        else LOGE("receiveRawPicture X: jpeg_encoder_init failed.");
    }
    else iLog("JPEG callback is NULL, not encoding image.");
mjpegsize tiene que tener el tamaño exacto del jpeg capturado y procesado por la camara ( yo he puesto un valor al azar 1718592) mientras no ponga el real, no tendremos un fichero real.
__________________
__________________________________________________ __
CyanogenMod Nexus Devices

Última edición por KalimochoAz Día 18/01/11 a las 22:02:43.