您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ AndroidBitmap_getInfo函数代码示例

51自学网 2021-06-01 19:46:50
  C++
这篇教程C++ AndroidBitmap_getInfo函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中AndroidBitmap_getInfo函数的典型用法代码示例。如果您正苦于以下问题:C++ AndroidBitmap_getInfo函数的具体用法?C++ AndroidBitmap_getInfo怎么用?C++ AndroidBitmap_getInfo使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了AndroidBitmap_getInfo函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: Java_com_jiangpeng_android_antrace_Utils_unsharpMask

JNIEXPORT void JNICALL Java_com_jiangpeng_android_antrace_Utils_unsharpMask(JNIEnv* env, jobject thiz, jobject input, jobject output){	AndroidBitmapInfo inputInfo;	AndroidBitmapInfo outputInfo;	void* src_pixels = 0;	void* dst_pixels = 0;	int ret = 0;	if ((ret = AndroidBitmap_getInfo(env, input, &inputInfo)) < 0) {		return;	}	if (inputInfo.format != ANDROID_BITMAP_FORMAT_RGBA_8888) {		return;	}	if ((ret = AndroidBitmap_lockPixels(env, input, &src_pixels)) < 0) {		return;	}	if ((ret = AndroidBitmap_getInfo(env, output, &outputInfo)) < 0) {		return;	}	if (outputInfo.format != ANDROID_BITMAP_FORMAT_RGBA_8888) {		return;	}	if ((ret = AndroidBitmap_lockPixels(env, output, &dst_pixels)) < 0) {		return;	}	unsharpMask(src_pixels, dst_pixels, outputInfo.width, outputInfo.height, inputInfo.stride, 5);	AndroidBitmap_unlockPixels(env, input);	AndroidBitmap_unlockPixels(env, output);}
开发者ID:larscwallin,项目名称:antrace,代码行数:34,


示例2: LOGI

JNIEXPORT void JNICALL Java_com_leth_convertimage_MainActivity_convertImage	(JNIEnv *env, jobject  obj, jobject origbm,jobject graybm){		AndroidBitmapInfo  infocolor;	    void				*pixelscolor;	    AndroidBitmapInfo  infogray;	    void 				*pixelsgray;	    int 			    y;	    int          	    x;	    LOGI("Before convert");	    AndroidBitmap_getInfo(env, origbm, &infocolor);	    LOGI("infocolor :: width-%d height-%d format-%d stride-%ld"	    				   ,infocolor.width						   ,infocolor.height						   ,infocolor.stride);	    AndroidBitmap_getInfo(env, graybm, &infogray);	    AndroidBitmap_lockPixels(env, origbm, &pixelscolor);	    AndroidBitmap_lockPixels(env, graybm, &pixelsgray);	    LOGI("Start convert");	    uint8_t tmp;	    for ( y=0; y<infocolor.height; y++) {	    	rgba * line = (rgba *) pixelscolor;	    	uint32_t * grayline = (uint32_t *) pixelsgray;	    	for ( x=0; x < infocolor.width; x++){	    		tmp =	    				line[x].red * 0.33	    				+ line[x].green  * 0.33						+ line[x].blue * 0.33						;	    		grayline[x] =	    					  (line[x].alpha & 0xff) << 24							| (tmp & 0xff) << 16							| (tmp & 0xff) << 8							| (tmp & 0xff)							//| line[x].red << 16							//| line[x].green << 8	    					//| line[x].blue							;	    	}	    	pixelscolor = (int8_t *)pixelscolor + infocolor.stride;	    	pixelsgray = (int8_t *) pixelsgray + infogray.stride;	    }	    LOGI("Finish convert");	    AndroidBitmap_unlockPixels(env, origbm);	    AndroidBitmap_unlockPixels(env, graybm);}
开发者ID:frzleaf,项目名称:imageprocessing,代码行数:51,


示例3: bitmap_to_mat

void bitmap_to_mat(JNIEnv *env, jobject &srcBitmap, Mat &srcMat) {    void *srcPixels = 0;    AndroidBitmapInfo srcBitmapInfo;    try {        AndroidBitmap_getInfo(env, srcBitmap, &srcBitmapInfo);        AndroidBitmap_lockPixels(env, srcBitmap, &srcPixels);        uint32_t srcHeight = srcBitmapInfo.height;        uint32_t srcWidth = srcBitmapInfo.width;        srcMat.create(srcHeight, srcWidth, CV_8UC4);        if (srcBitmapInfo.format == ANDROID_BITMAP_FORMAT_RGBA_8888) {            Mat tmp(srcHeight, srcWidth, CV_8UC4, srcPixels);            tmp.copyTo(srcMat);        } else {            Mat tmp = Mat(srcHeight, srcWidth, CV_8UC2, srcPixels);            cvtColor(tmp, srcMat, COLOR_BGR5652RGBA);        }        AndroidBitmap_unlockPixels(env, srcBitmap);        return;    } catch (cv::Exception &e) {        AndroidBitmap_unlockPixels(env, srcBitmap);        jclass je = env->FindClass("java/lang/Exception");        env -> ThrowNew(je, e.what());        return;    } catch (...) {        AndroidBitmap_unlockPixels(env, srcBitmap);        jclass je = env->FindClass("java/lang/Exception");        env -> ThrowNew(je, "unknown");        return;    }}
开发者ID:Fuge2008,项目名称:SmartCropper,代码行数:30,


示例4: Java_makemachine_android_examples_Nati_greyscale

JNIEXPORT void JNICALL Java_makemachine_android_examples_Nati_greyscale(JNIEnv * env, jclass klass, jobject bitmap,jint wind){      void * raw;      uint32_t * pixels;      int ret,j;      int grey;      AndroidBitmapInfo  info;      if ((ret = AndroidBitmap_getInfo(env, bitmap, &info)) < 0) return;      if ((ret = AndroidBitmap_lockPixels(env, bitmap, &raw)) < 0) return;      pixels=(uint32_t*) raw;#define USE_CONTRAST STRETCH#ifdef USE_CONTRAST_STRETCH      determine_contrast(&pixels,info.height,info.width);#else      Qwe::mingrey=0;      Qwe::maxgrey=255;#endif      greyscale(&pixels,info.height,info.width);      make_mean(info.height,info.width,wind);#ifdef USE_DEVIATION      make_dev(info.height,info.width,wind);#endif      imtoin(info.height,info.width);      thresh(info.height,info.width);      close(info.height,info.width,2);      open(info.height,info.width,2);      AndroidBitmap_unlockPixels(env, bitmap);}
开发者ID:arpheno,项目名称:receiptKeeper,代码行数:29,


示例5: StackBlur

JNIEXPORT void JNICALL Java_com_daemon_aroundcircleviewdemo_ImageBlur_blurBitMap(JNIEnv *env, jclass obj, jobject bitmapIn, jint r){AndroidBitmapInfo infoIn;void* pixelsIn;int ret;// Get image infoif ((ret = AndroidBitmap_getInfo(env, bitmapIn, &infoIn)) < 0)return;// Check imageif (infoIn.format != ANDROID_BITMAP_FORMAT_RGBA_8888)return;// Lock all imagesif ((ret = AndroidBitmap_lockPixels(env, bitmapIn, &pixelsIn)) < 0) {//AndroidBitmap_lockPixels failed!}//height widthint h = infoIn.height;int w = infoIn.width;//StartpixelsIn = StackBlur((int*)pixelsIn, w, h, r);//End// Unlocks everythingAndroidBitmap_unlockPixels(env, bitmapIn);}
开发者ID:dalong982242260,项目名称:AroundCircleView,代码行数:28,


示例6: RAW_Setup

GF_Err RAW_Setup(GF_VideoOutput *dr, void *os_handle, void *os_display, u32 init_flags){	AndroidBitmapInfo  info;	RAWCTX;	void * pixels;	int ret;	GF_LOG(GF_LOG_DEBUG, GF_LOG_CORE, ("Android vout RAW_Setup/n"));	if (!rc->width)	{		rc->env = (JNIEnv *)os_handle;		rc->bitmap = (jobject *)os_display;		AndroidBitmap_getInfo(rc->env, *(rc->bitmap), &info);		rc->width = info.width;		rc->height = info.height;		rc->locked_data = NULL;	}	else	{		rc->env = (JNIEnv *)os_handle;		rc->bitmap = (jobject *)os_display;	}	GF_LOG(GF_LOG_DEBUG, GF_LOG_CORE, ("Android vout rc dims: %d:%d/n", rc->height, rc->width));	return GF_OK;}
开发者ID:jnorthrup,项目名称:gpac,代码行数:29,


示例7: Java_si_majcn_frameoffame_MainActivity_applyEffect

JNIEXPORT void JNICALLJava_si_majcn_frameoffame_MainActivity_applyEffect(JNIEnv  *env,                                                   jobject  obj,                                                   jobject  bitmap,                                                   jint     effectNumber){    AndroidBitmapInfo  info;    int ret;    void *pixels;    if ((ret = AndroidBitmap_getInfo(env, bitmap, &info)) < 0)    {        LOGE("AndroidBitmap_getInfo() failed ! error=%d", ret);        return;    }    if (info.format != ANDROID_BITMAP_FORMAT_RGB_565)    {        LOGE("Bitmap format is not RGBA_565 !");        return;    }    if ((ret = AndroidBitmap_lockPixels(env, bitmap, &pixels)) < 0)    {        LOGE("AndroidBitmap_lockPixels() failed ! error=%d", ret);    }    applyEffect(&info, pixels, effectNumber);    AndroidBitmap_unlockPixels(env, bitmap);}
开发者ID:HairyFotr,项目名称:FrameOfFame,代码行数:30,


示例8: lockPixels

int lockPixels(JNIEnv *env, jobject jbitmap, GifInfo *info, void **pixels) {    AndroidBitmapInfo bitmapInfo;    if (AndroidBitmap_getInfo(env, jbitmap, &bitmapInfo) == ANDROID_BITMAP_RESULT_SUCCESS)        info->stride = bitmapInfo.width;    else {        throwException(env, ILLEGAL_STATE_EXCEPTION_BARE, "Could not get bitmap info");        return -2;    }    const int lockPixelsResult = AndroidBitmap_lockPixels(env, jbitmap, pixels);    if (lockPixelsResult == ANDROID_BITMAP_RESULT_SUCCESS)        return 0;    char *message;    switch (lockPixelsResult) {        case ANDROID_BITMAP_RESULT_ALLOCATION_FAILED:#ifdef DEBUG            LOGE("bitmap lock allocation failed");#endif            return -1; //#122 workaround        case ANDROID_BITMAP_RESULT_BAD_PARAMETER:            message = "Lock pixels error, bad parameter";            break;        case ANDROID_BITMAP_RESULT_JNI_EXCEPTION:            message = "Lock pixels error, JNI exception";            break;        default:            message = "Lock pixels error";    }    throwException(env, ILLEGAL_STATE_EXCEPTION_BARE, message);    return -2;}
开发者ID:551780457,项目名称:android-gif-drawable,代码行数:32,


示例9: nativeGetFrame

static jlong JNICALL nativeGetFrame(        JNIEnv* env, jobject clazz, jlong frameSequenceStateLong, jint frameNr,        jobject bitmap, jint previousFrameNr) {    FrameSequenceState* frameSequenceState =            reinterpret_cast<FrameSequenceState*>(frameSequenceStateLong);    int ret;    AndroidBitmapInfo info;    void* pixels;    if ((ret = AndroidBitmap_getInfo(env, bitmap, &info)) < 0) {        jniThrowException(env, ILLEGAL_STATE_EXEPTION,                "Couldn't get info from Bitmap ");        return 0;    }    if ((ret = AndroidBitmap_lockPixels(env, bitmap, &pixels)) < 0) {        jniThrowException(env, ILLEGAL_STATE_EXEPTION,                "Bitmap pixels couldn't be locked");        return 0;    }    int pixelStride = info.stride >> 2;    jlong delayMs = frameSequenceState->drawFrame(frameNr,            (Color8888*) pixels, pixelStride, previousFrameNr);    AndroidBitmap_unlockPixels(env, bitmap);    return delayMs;}
开发者ID:DARKPOP,项目名称:frameworks_ex,代码行数:28,


示例10: Java_feipeng_andzop_render_RenderView_naRenderAFrame

/*fill in data for a bitmap*/JNIEXPORT jint JNICALL Java_feipeng_andzop_render_RenderView_naRenderAFrame(JNIEnv * pEnv, jobject pObj, jobject pBitmap, int _width, int _height, float _roiSh, float _roiSw, float _roiEh, float _roiEw) {    AndroidBitmapInfo lInfo;    //void* lPixels;    int lRet;    int li, lj, lk;    int lPos;    unsigned char* ltmp;    LOGI(3, "start of render_a_frame");        //1. retrieve information about the bitmap    if ((lRet = AndroidBitmap_getInfo(pEnv, pBitmap, &lInfo)) < 0) {        LOGE(1, "AndroidBitmap_getInfo failed! error = %d", lRet);        return;    }    if (lInfo.format != ANDROID_BITMAP_FORMAT_RGBA_8888) {        LOGE(1, "Bitmap format is not RGBA_8888!");        return;    }    //2. lock the pixel buffer and retrieve a pointer to it    if ((lRet = AndroidBitmap_lockPixels(pEnv, pBitmap, &gBitmap)) < 0) {        LOGE(1, "AndroidBitmap_lockPixels() failed! error = %d", lRet);    }    //3. modify the pixel buffer    //decode a video frame: the pBitmap will be filled with decoded pixels    lRet = decode_a_frame(_width, _height, _roiSh, _roiSw, _roiEh, _roiEw);    AndroidBitmap_unlockPixels(pEnv, pBitmap);    LOGI(3, "~~~~~~~~~~end of rendering a frame~~~~~~~~~~~~~~~~~`");    return lRet;}
开发者ID:AbdunNurTomal,项目名称:AndZop,代码行数:29,


示例11:

jobject Java_com_packpublishing_asynchronousandroid_chapter9_GrayImageLoader_convertImageToGray        (JNIEnv *env, jobject obj, jobject bitmap) {    AndroidBitmapInfo info;    void *pixels;    int ret;    if ((ret = AndroidBitmap_getInfo(env, bitmap, &info)) < 0) {        jclass clazz = env->FindClass("java/lang/RuntimeException");        env->ThrowNew(clazz, "Failed to get Information from the Bitmap!");        return 0;    }    if ((ret = AndroidBitmap_lockPixels(env, bitmap, (void **) &pixels)) < 0) {        jclass clazz = env->FindClass("java/lang/RuntimeException");        env->ThrowNew(clazz, "Failed to lock Bitmap pixels !");        return 0;    }    rgba *rgba_pixels = (rgba *) pixels;    for (int i = 0; i < (info.width * info.height); i++) {        uint8_t red = rgba_pixels[i].red;        uint8_t green = rgba_pixels[i].green;        uint8_t blue = rgba_pixels[i].blue;        uint8_t gray = red * 0.3 + green * 0.59 + blue * 0.11;        rgba_pixels[i].red = gray;        rgba_pixels[i].green = gray;        rgba_pixels[i].blue = gray;    }    AndroidBitmap_unlockPixels(env, bitmap);    return bitmap;}
开发者ID:PacktPublishing,项目名称:Asynchronous-Android-Programming,代码行数:35,


示例12: stackBlur

JNIEXPORT void JNICALL Java_net_qiujuer_genius_app_BlurNative_fastBlurBitmap(JNIEnv *env, jclass obj, jobject bitmapIn, jint r){	AndroidBitmapInfo infoIn;	void* pixelsIn;	int ret;	// Get image info	if ((ret = AndroidBitmap_getInfo(env, bitmapIn, &infoIn)) < 0)		return;	// Check image	if (infoIn.format != ANDROID_BITMAP_FORMAT_RGBA_8888)		return;	// Lock all images	if ((ret = AndroidBitmap_lockPixels(env, bitmapIn, &pixelsIn)) < 0) {		//AndroidBitmap_lockPixels failed!	}	// height width	int h = infoIn.height;	int w = infoIn.width;	// Start	pixelsIn = stackBlur((int*)pixelsIn, w, h, r);	// End	// Unlocks everything	AndroidBitmap_unlockPixels(env, bitmapIn);}
开发者ID:343829084,项目名称:Genius-Android,代码行数:28,


示例13: jni_freerdp_update_graphics

JNIEXPORT jboolean JNICALL jni_freerdp_update_graphics(	JNIEnv *env, jclass cls, jint instance, jobject bitmap, jint x, jint y, jint width, jint height){	int ret;	void* pixels;	AndroidBitmapInfo info;	freerdp* inst = (freerdp*)instance;	rdpGdi *gdi = inst->context->gdi;	if ((ret = AndroidBitmap_getInfo(env, bitmap, &info)) < 0)	{		DEBUG_ANDROID("AndroidBitmap_getInfo() failed ! error=%d", ret);		return JNI_FALSE;	}	if ((ret = AndroidBitmap_lockPixels(env, bitmap, &pixels)) < 0)	{		DEBUG_ANDROID("AndroidBitmap_lockPixels() failed ! error=%d", ret);		return JNI_FALSE;	}	copy_pixel_buffer(pixels, gdi->primary_buffer, x, y, width, height, gdi->width, gdi->height, gdi->bytesPerPixel);	AndroidBitmap_unlockPixels(env, bitmap);	return JNI_TRUE;}
开发者ID:bceverly,项目名称:FreeRDP,代码行数:28,


示例14: Java_org_yabause_android_YabauseRunnable_stateSlotScreenshot

voidJava_org_yabause_android_YabauseRunnable_stateSlotScreenshot( JNIEnv* env, jobject obj, jobject dirpath, jobject itemnum, int slot, jobject bitmap ){    int outputwidth, outputheight;    u32 * buffer, * cur;    AndroidBitmapInfo info;    void * pixels;    int x, y;    jboolean dummy;    const char * dp = (*env)->GetStringUTFChars(env, dirpath, &dummy);    const char * in = (*env)->GetStringUTFChars(env, itemnum, &dummy);    if (0 != LoadStateSlotScreenshot(dp, in, slot, &outputwidth, &outputheight, &buffer)) return;    AndroidBitmap_getInfo(env, bitmap, &info);    AndroidBitmap_lockPixels(env, bitmap, &pixels);    cur = buffer;    for(y = 0;y < info.height;y++) {        for(x = 0;x < info.width;x++) {            *((uint32_t *) pixels + x) = *(cur + x);        }        pixels += info.stride;        cur += outputwidth;    }    free(buffer);    AndroidBitmap_unlockPixels(env, bitmap);}
开发者ID:Amon-X,项目名称:yabause,代码行数:31,


示例15: Java_jp_dego_sample_ipcv_MainActivity_getHairArea

JNIEXPORT void JNICALL Java_jp_dego_sample_ipcv_MainActivity_getHairArea(JNIEnv *env, jobject obj, jobject bmp,        jint eyes_cp, jint eyes_w){    AndroidBitmapInfo info;    void* pixels;    // Bitmapの情
C++ AndroidBitmap_lockPixels函数代码示例
C++ Analyze函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。