最近做android下视频采集+编码功能,已实现通过PreviewCallback回调的方式完成一帧一帧的yuv图像采集功能,本人想在NDK那边(so部分)完成这样的图像采集功能,是否可行呢?NDK是否提供了这样的API?感觉这样的效率可能高一些。
解决方案 »
- 流化手机录制的视频,直接保存后不能播放,怎么解决格式问题?
- 物理导航键
- 怎样在图片下面显示文字啊?求方法或代码?我图片已从数据库中得到病显示了,现在只想将从数据库中得到的电影名字显示在对应的电影图片下面
- Andriod手机(C/C++)GPS串口访问问题
- Android 新开版!!!!!(留个地板做纪念 )
- 怎么使用V7包中ActionBar
- 新人求分析求思路...慢性病患者基础医疗数据采集及移动智能端监控综合系统(移动 互联网健康医疗)
- Android mp4文件frame获取
- Adroid版本更新之后覆盖安装更新界面不见了?
- android:listView的滚动条怎么设置的?
- Android 贪吃蛇 eclipse 源代码
- Android SAX解析 怎么得到单独属性
如果是自己开发平台,还是可以做到的,camera service本来也是用c写的。
目前我碰到的几个视频通话都是用java接口做的,网络状况好的话,效果还可以的。
class StreamIt implements Camera.PreviewCallback {
public byte[] yuv420sp =null; public int m_icount = 0;
public void onPreviewFrame(byte[] data, Camera camera)
{
// yuv420sp=data;
++m_icount;
if (m_icount != 50)
{
return;
}
File save = new File("/sdcard/yuv420.yuv");
FileOutputStream out = null;
try
{
out = new FileOutputStream(save);
}
catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
out.write(data, 0, data.length);
}
catch (IOException e1)
{
// TODO Auto-generated catch block
e1.printStackTrace();
}
try
{
out.close();
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}