【问题标题】:CamaraX mp4 Video Recording record 3gp video only?CamaraX mp4 Video Recording 仅录制 3gp 视频?
【发布时间】:2020-12-02 09:10:52
【问题描述】:

我正在尝试使用 CameraX 版本 1.0.0-beta12 录制视频这是录制视频的代码部分

getVideoCapture()?.startRecording(
    mVideoFileSaver.getNewVideoOutputFileOptions(
        contentResolver
    ), ContextCompat.getMainExecutor(this), mVideoFileSaveListener
)

这里是输出选项

fun getNewVideoOutputFileOptions(resolver: ContentResolver): VideoCapture.OutputFileOptions {
    val videoFileName = "video_" + System.currentTimeMillis() + "_video.mp4"
    val contentValues = ContentValues()
    contentValues.put(MediaStore.MediaColumns.MIME_TYPE, "video/mp4")
    contentValues.put(MediaStore.Video.Media.TITLE, videoFileName)
    contentValues.put(MediaStore.Video.Media.DISPLAY_NAME, videoFileName)
    contentValues.put(MediaStore.Video.Media.DATE_ADDED, System.currentTimeMillis() / 1000)
    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.Q) {
        contentValues.put(MediaStore.Video.Media.DATE_TAKEN, System.currentTimeMillis())
    }
    return VideoCapture.OutputFileOptions.Builder(
        resolver,
        MediaStore.Video.Media.EXTERNAL_CONTENT_URI, contentValues
    ).build()
}

现在拿到Gallery中的视频后,发现视频文件名是.3gp。谁能告诉我如何使用 CameraX 录制 mp4 文件?

【问题讨论】:

  • 你试过不同的设备吗?

标签: android android-camera android-camera2 android-camerax


【解决方案1】:
val fileOutputOptions = FileOutputOptions.Builder(File).build()

activeRecording = videoCapture.output.prepareRecording(this, fileOutputOptions).withAudioEnabled()
     .start(ContextCompat.getMainExecutor(this),videoRecordEventListener)

【讨论】:

    猜你喜欢
    • 2011-06-28
    • 2012-01-30
    • 1970-01-01
    • 2014-03-02
    • 2012-12-31
    • 1970-01-01
    • 1970-01-01
    • 2013-04-26
    • 2019-02-12
    相关资源
    最近更新 更多