У меня есть требование в приложении, где мне нужно записывать видео в течение 30 секунд, а затем записывать только звук без остановки записи.Как я могу этого достичь?Я использую библиотеку Camerview для записи видео.Должен ли я изменить мою реализацию на вид поверхности?
У меня есть реализация с использованием библиотеки CameraView, как показано ниже.Текущая работа по захвату видео, но не соответствует моему требованию.
<com.otaliastudios.cameraview.CameraView xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/camera"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:keepScreenOn="true"
app:cameraAudio="on"
app:cameraCropOutput="false"
app:cameraFacing="back"
app:cameraFlash="off"
app:cameraGestureLongTap="none"
app:cameraGesturePinch="zoom"
app:cameraGestureScrollHorizontal="exposureCorrection"
app:cameraGestureScrollVertical="none"
app:cameraGestureTap="focus"
app:cameraGrid="off"
app:cameraJpegQuality="100"
app:cameraPlaySounds="true"
app:cameraSessionType="video"
app:cameraVideoQuality="max480p" />
private void captureVideo() {
if (camera.getSessionType() != SessionType.VIDEO) {
return;
}
videoPath = getContext().getExternalCacheDir() + File.separator + System.currentTimeMillis() + ".mp4";
camera.setVideoCodec(VideoCodec.DEVICE_DEFAULT);
camera.setVideoQuality(VideoQuality.MAX_480P);
camera.startCapturingVideo(new File(videoPath));
}