android 视频采集
来源:互联网 发布:网络监控解决方案 编辑:程序博客网 时间:2024/05/22 11:32
视频传输的主要代码分析
实现视频数据采集功能的主要代码如下:
mCamera = Camera.open(); //获取设备的Camera
Camera.Parameters p = mCamera.getParameters();//获取摄像头参数
p.setPreviewSize(352, 288); //设置预览窗口大小
mCamera.setPreviewCallback(new H264Encoder(352, 288));//装载回调函数引用从摄像头取来的每一帧数据mCamera.setParameters(p); //设置摄像头服务//调用onPreviewFrame接口获取摄像头的每一帧数据public void onPreviewFrame(byte[] data, Camera camera) {
int result=CompressBuffer(encoder,-1,data,data.length,h264Buff); //CompressBuffer函数将获得的数据压缩成H264格式
if (result>0)
raf.write(h264Buff, 0, result);//raf为RandAccessFile的实例,此处将获取的编码后数据写入到SDCard中
}
//CompressBuffer为JNI调用,其中的主要代码如下
jint Java_h264_com_H264Encoder_CompressBuffer(JNIEnv* env, jobject thiz,jlong handle,jint type,jbyteArray in, jint insize,jbyteAr?
ray out)//JNI中函数CompressBuffer的定义
en->picture->i_type = X264_TYPE_AUTO; //编码memcpy(pTmpOut, en->nal[i].p_payload, en->nal[i].i_payload);//将编码后的数据拷贝输出
接收端监听Socket连接的端口接收数据并使用Android自带的H264解码程序软件解码。
实现视频数据采集功能的主要代码如下:
mCamera = Camera.open(); //获取设备的Camera
Camera.Parameters p = mCamera.getParameters();//获取摄像头参数
p.setPreviewSize(352, 288); //设置预览窗口大小
mCamera.setPreviewCallback(new H264Encoder(352, 288));//装载回调函数引用从摄像头取来的每一帧数据mCamera.setParameters(p); //设置摄像头服务//调用onPreviewFrame接口获取摄像头的每一帧数据public void onPreviewFrame(byte[] data, Camera camera) {
int result=CompressBuffer(encoder,-1,data,data.length,h264Buff); //CompressBuffer函数将获得的数据压缩成H264格式
if (result>0)
raf.write(h264Buff, 0, result);//raf为RandAccessFile的实例,此处将获取的编码后数据写入到SDCard中
}
//CompressBuffer为JNI调用,其中的主要代码如下
jint Java_h264_com_H264Encoder_CompressBuffer(JNIEnv* env, jobject thiz,jlong handle,jint type,jbyteArray in, jint insize,jbyteAr?
ray out)//JNI中函数CompressBuffer的定义
en->picture->i_type = X264_TYPE_AUTO; //编码memcpy(pTmpOut, en->nal[i].p_payload, en->nal[i].i_payload);//将编码后的数据拷贝输出
接收端监听Socket连接的端口接收数据并使用Android自带的H264解码程序软件解码。
- Android视频采集
- Android视频采集
- android 视频流采集
- Android视频采集
- android 视频流采集
- Android视频采集
- android视频采集
- android 视频采集
- Android视频采集
- Android 实时视频采集
- android 实时视频采集
- Android视频采集
- Android视频采集+H264编码
- Android视频采集+H264编码
- Android视频采集+H264编码
- Android 视频和音频采集
- Android视频采集+H264编码
- Android视频采集+H264编码
- CodeSign error: Certificate identity 'iPhone Developer: XXXX appears more than once
- FusionCharts在iPhone等移动设备上的使用
- 《黑马程序员》java笔记->【01】常用DOS命令
- C#控件命名规范
- 常用Maven插件介绍(上)
- android 视频采集
- 常用Maven插件介绍(下)
- 请教一个sizeof在模版函数内无法正常获取大小的问题。
- C++ 虚函数表解析
- Oracle错误代码解析
- 在Ubuntu上安装JDK
- sql case when 用法(转)
- git 基本环境设定
- android源码解析 ---- camera 照相机 摄像机