Android显示相关记录
来源:互联网 发布:淘宝查权重 编辑:程序博客网 时间:2024/05/17 23:35
LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)LOCAL_SRC_FILES:= \ main.cppLOCAL_STATIC_LIBRARIES := \ libstagefright_color_conversionLOCAL_SHARED_LIBRARIES := \ libcutils \ libutils \ libbinder \ libui \ libgui \ libstagefright\ libstagefright_foundationLOCAL_C_INCLUDES := \ frameworks/native/include/media/openmax \ frameworks/av/media/libstagefrightLOCAL_MODULE:= yuvShowLOCAL_MODULE_TAGS := testsinclude $(BUILD_EXECUTABLE)
#include <include/SoftwareRenderer.h>#include <cutils/memory.h>#include <unistd.h>#include <utils/Log.h>#include <binder/IPCThreadState.h>#include <binder/ProcessState.h>#include <binder/IServiceManager.h>#include <gui/Surface.h>#include <gui/SurfaceComposerClient.h>#include <gui/ISurfaceComposer.h>#include <ui/DisplayInfo.h>#include <android/native_window.h>#include <media/stagefright/MetaData.h>int main(void){ // create a client to surfaceflinger sp<SurfaceComposerClient> client = new SurfaceComposerClient(); // create a surface sp<SurfaceControl> surfaceControl = client->createSurface(String8("showyuv"), //dinfo.w, dinfo.h, PIXEL_FORMAT_RGBA_8888, 0); 1280, 720, PIXEL_FORMAT_RGBA_8888, 0); /********************* 配置surface ******************************/ SurfaceComposerClient::openGlobalTransaction(); surfaceControl->setLayer(100000); //设定Z坐标 surfaceControl->setPosition(0, 0); //以左上角为(0,0)设定显示位置 surfaceControl->setSize(width, height);//设定视频显示大小 SurfaceComposerClient::closeGlobalTransaction(); sp<Surface> surface = surfaceControl->getSurface(); printf("[%s][%d]\n",__FILE__,__LINE__); /********************** 配置MetaData ****************************/ sp<MetaData> meta = new MetaData; meta->setInt32(kKeyWidth, width); meta->setInt32(kKeyHeight, height); meta->setInt32(kKeyColorFormat, OMX_COLOR_FormatYUV420Planar); //正常显示yuv420p printf("[%s][%d]\n",__FILE__,__LINE__); /********************** Display the data ***********************/ SoftwareRenderer* sr = new SoftwareRenderer(surface,meta);//初始化 sr->render(data,size,NULL); //将data显示到屏幕上,数据来源通过网口 printf("[%s][%d]\n",__FILE__,__LINE__); IPCThreadState::self()->joinThreadPool();//可以保证画面一直显示,否则瞬间消失 IPCThreadState::self()->stopProcess(); return 0;}
0 0
- Android显示相关记录
- Android相关问题记录
- android显示原理相关
- RES相关,Android支付相关记录
- Android相关有用网址记录
- Android ADB学习--相关记录
- Android Gradle相关使用记录
- android 打包相关问题记录
- Android显示系统相关文章
- android屏幕显示相关设置
- android 位图显示,图像相关
- Android 4.4 电池电量显示相关。
- Android 4.4 电池电量显示相关
- Android短信开发相关信息记录
- 天天记录 - Android焦点相关知识学习
- [记录]几个Android相关的blog
- Android开发环境相关问题记录
- Android Studio Gradle相关异常记录
- IOS设置导航栏全局的背景图片、导航栏title文字颜色大小、导航栏左右按钮的颜色。
- 生成DSYM文件
- Spring中获取外部配置文件中的属性值
- CountDownLatch学习笔记
- WinEdt6.0编码设置
- Android显示相关记录
- POJ1681 Painter's Problem【高斯消元法】
- Linux2.6.32驱动笔记(1)驱动开发概述及硬件访问技术
- 怎么在 CSDN 博客中添加QQ 邮箱的邮我功能和网易邮箱的给我写信功能呢?马上给我写信吧2014.09
- 第二周实践项目(2)~程序的多文件组织
- 【matlab】matlab文件操作fopen,fseek,fread,fclose等
- iOS进阶----block的使用
- TS流的解析
- 项目2 - 建设“顺序表”算法库