android圖像刷新方法

1) 在JAVA層刷新:

        如果要在thread裏刷新, 要使用postInvalidate,   如果在timer裏刷新, 可以通過Handler Message來刷新。  具體刷新要重寫onDraw函數。 


2) 在JNI裏刷新:

 將SurfaceHolder指針傳遞給NDK(JNI層用VideoDriver_register註冊)。 具體刷新用以下方法:

void * pbits;

VideoDriver_getPixels(width, height, &pbits);

memcpy(pbits, rgbBuffer, width*height*2);//rgbBuffer是rgb565格式的數據

VideoDriver_updateSurface();


 具體採用哪種刷新方法, 可根據速度的要求, 以及程序架構複雜性的角度來考慮。  如果對播放速度要求不高,可在java層刷新,平臺移植性會好一些。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章