首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

(转)【源媒體】Android 实时视频采集—Cameara预览采集

2012-10-07 
(转)【流媒體】Android 实时视频采集—Cameara预览采集1 概述通过Android Camera拍摄预览中设置setPreviewCal

(转)【流媒體】Android 实时视频采集—Cameara预览采集
1 概述

通过Android Camera拍摄预览中设置setPreviewCallback实现onPreviewFrame接口,实时截取每一帧视频流数据

2 知识点

① Android Camera使用:    参考 Refs/Related 0-4

Camera 支持格式

(转)【源媒體】Android 实时视频采集—Cameara预览采集

拍照流程

(转)【源媒體】Android 实时视频采集—Cameara预览采集

② Android SurfaceView使用:  参考 Refs/Related 5-10

③ Camera权限

(转)【源媒體】Android 实时视频采集—Cameara预览采集

3 核心源码① SurfaceView相关

?说明1:  在/* 视频流编码处理 */?中通过setPreviewCallback添加对视频流进行处理,如
???  mCamera.setPreviewCallback(new encoderVideo(mCamera.getParameters().getPreviewSize().width,?
?????    mCamera.getParameters().getPreviewSize().height,(ImageView) findViewById(R.id.ImageView2)));//①原生yuv420sp视频存储方式
???  mCamera.setPreviewCallback(new encoderH264(mCamera.getParameters().getPreviewSize().width,?
?????    mCamera.getParameters().getPreviewSize().height));?//②x264编码方式?
??  ?mCamera.setPreviewCallback(mJpegPreviewCallback);??//③JPEG压缩方式
?
?说明2:?当然也可以不在主Acitivity中实现SurfaceHolder.Callback接口,而是在①的initSurfaceView中的addCallback函数,修改为
?mSurfaceHolder.addCallback(new MyCallback);  再在这函数中实现上述三个回调函数

?③视频帧回调接口
// 【获取视频预览帧的接口】   mJpegPreviewCallback = new Camera.PreviewCallback()   {    @Override    public void onPreviewFrame(byte[] data, Camera camera)     {     //传递进来的data,默认是YUV420SP的 // TODO Auto-generated method stub         try     {      Log.i(TAG, "going into onPreviewFrame");      //mYUV420sp = data;   // 获取原生的YUV420SP数据      YUVIMGLEN = data.length;            // 拷贝原生yuv420sp数据      mYuvBufferlock.acquire();      System.arraycopy(data, 0, mYUV420SPSendBuffer, 0, data.length);      //System.arraycopy(data, 0, mWrtieBuffer, 0, data.length);      mYuvBufferlock.release();            // 开启编码线程,如开启PEG编码方式线程      mSendThread1.start();           } catch (Exception e)     {      Log.v("System.out", e.toString());     }// endtry        }// endonPriview     };
?Refs/Related

0 http://developer.android.com/reference/android/graphics/Camera.html
1 http://wenku.baidu.com/view/5551eb59be23482fb4da4c89.html
2 http://www.cnblogs.com/franksunny/archive/2011/11/17/2252926.html
3 http://blog.csdn.net/yf210yf/article/details/7304437
4 http://topic.csdn.net/u/20111104/13/fdf356b5-ea77-4ee9-ba8e-c44d0f1b7a19.html??
5 http://developer.android.com/reference/android/view/SurfaceView.html
6 http://developer.android.com/reference/android/view/SurfaceHolder.html
7 http://blog.csdn.net/xiaominghimi/article/details/6089594
8 http://blog.csdn.net/xiaominghimi/article/details/6090575
9 http://www.cnblogs.com/emily1314/archive/2012/03/03/2378147.html
10 http://blog.csdn.net/hellogv/article/details/5985090

热点排行
Bad Request.