无音频的Android录像 [英] Android record video without audio
本文介绍了无音频的Android录像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否有可能在Android的记录来自摄像头的视频没有音频流?
Is it possible in Android to record video from Camera without audio stream?
目标:降低输出文件的大小
Goal: to reduce the output file size.
推荐答案
您可以使用MediaRecorder不调用setAudio *就可以了。这是我第一次使用MediaRecorder,但这个例子似乎工作:
You can use a MediaRecorder without calling setAudio* on it. This is my first time using MediaRecorder, but this example seems to work:
public class CamcorderView extends SurfaceView implements
SurfaceHolder.Callback {
private SurfaceHolder mHolder;
private Camera mCamera;
private MediaRecorder mRecorder;
public CamcorderView(Context context, AttributeSet attrs) {
super(context, attrs);
mHolder = getHolder();
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
mHolder.addCallback(this);
mCamera = Camera.open();
mRecorder = new MediaRecorder();
}
public void stop() {
mRecorder.stop();
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
}
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
mCamera.unlock();
mRecorder.setCamera(mCamera);
mRecorder.setPreviewDisplay(mHolder.getSurface());
// You may want to change these
mRecorder.setVideoSource(MediaRecorder.VideoSource.DEFAULT);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
mRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.DEFAULT);
// You'll definitely want to change this
mRecorder.setOutputFile("/mnt/sdcard/out");
try {
mRecorder.prepare();
} catch (IllegalStateException e) {
Log.e("IllegalStateException", e.toString());
} catch (IOException e) {
Log.e("IOException", e.toString());
}
mRecorder.start();
}
}
您可能还需要拨打:
-
setVideoSize(INT,INT);
-
setVideoFrameRate(INT);
setVideoSize(int, int);
setVideoFrameRate(int);
这篇关于无音频的Android录像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文