* commit 'aef12450d2f863fe3ce82458e46f3778b791cc33': Make YuvToJpegEncoder more JNI compliant
This commit is contained in:
@@ -217,8 +217,8 @@ void Yuv422IToJpegEncoder::configSamplingFactors(jpeg_compress_struct* cinfo) {
|
|||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
static jboolean YuvImage_compressToJpeg(JNIEnv* env, jobject, jbyteArray inYuv,
|
static jboolean YuvImage_compressToJpeg(JNIEnv* env, jobject, jbyteArray inYuv,
|
||||||
int format, int width, int height, jintArray offsets,
|
jint format, jint width, jint height, jintArray offsets,
|
||||||
jintArray strides, int jpegQuality, jobject jstream,
|
jintArray strides, jint jpegQuality, jobject jstream,
|
||||||
jbyteArray jstorage) {
|
jbyteArray jstorage) {
|
||||||
jbyte* yuv = env->GetByteArrayElements(inYuv, NULL);
|
jbyte* yuv = env->GetByteArrayElements(inYuv, NULL);
|
||||||
SkWStream* strm = CreateJavaOutputStreamAdaptor(env, jstream, jstorage);
|
SkWStream* strm = CreateJavaOutputStreamAdaptor(env, jstream, jstorage);
|
||||||
@@ -227,7 +227,7 @@ static jboolean YuvImage_compressToJpeg(JNIEnv* env, jobject, jbyteArray inYuv,
|
|||||||
jint* imgStrides = env->GetIntArrayElements(strides, NULL);
|
jint* imgStrides = env->GetIntArrayElements(strides, NULL);
|
||||||
YuvToJpegEncoder* encoder = YuvToJpegEncoder::create(format, imgStrides);
|
YuvToJpegEncoder* encoder = YuvToJpegEncoder::create(format, imgStrides);
|
||||||
if (encoder == NULL) {
|
if (encoder == NULL) {
|
||||||
return false;
|
return JNI_FALSE;
|
||||||
}
|
}
|
||||||
encoder->encode(strm, yuv, width, height, imgOffsets, jpegQuality);
|
encoder->encode(strm, yuv, width, height, imgOffsets, jpegQuality);
|
||||||
|
|
||||||
@@ -235,7 +235,7 @@ static jboolean YuvImage_compressToJpeg(JNIEnv* env, jobject, jbyteArray inYuv,
|
|||||||
env->ReleaseByteArrayElements(inYuv, yuv, 0);
|
env->ReleaseByteArrayElements(inYuv, yuv, 0);
|
||||||
env->ReleaseIntArrayElements(offsets, imgOffsets, 0);
|
env->ReleaseIntArrayElements(offsets, imgOffsets, 0);
|
||||||
env->ReleaseIntArrayElements(strides, imgStrides, 0);
|
env->ReleaseIntArrayElements(strides, imgStrides, 0);
|
||||||
return true;
|
return JNI_TRUE;
|
||||||
}
|
}
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user