连续录制视频,点击屏幕开始录制,再点击屏幕结束录制,再点击开始录制,拼接多个录制的视频,视频都保存在sd卡。
需要权限
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
需要jar
aspectjrt-1.8.0.jar
isoparser-1.0-RC-27.jar
具体代码如下:
import android.app.Activity; import android.media.CamcorderProfile; import android.media.MediaRecorder; import android.os.AsyncTask; import android.os.Bundle; import android.os.Environment; import android.view.SurfaceHolder; import android.view.SurfaceView; import android.view.View; import android.view.Window; import android.widget.TextView; import android.widget.Toast; import com.googlecode.mp4parser.BasicContainer; import com.googlecode.mp4parser.authoring.Movie; import com.googlecode.mp4parser.authoring.Track; import com.googlecode.mp4parser.authoring.builder.DefaultMp4Builder; import com.googlecode.mp4parser.authoring.container.mp4.MovieCreator; import com.googlecode.mp4parser.authoring.tracks.AppendTrack; import java.io.FileNotFoundException; import java.io.IOException; import java.io.RandomAccessFile; import java.nio.channels.FileChannel; import java.util.LinkedList; import java.util.List; import java.util.Timer; import java.util.TimerTask; import caisheng.com.search.R; public class CameraActivity extends Activity implements View.OnClickListener, SurfaceHolder.Callback { MediaRecorder recorder; SurfaceHolder holder; boolean recording = false; int filename=0; int