Android录制video并抽取第一帧图片

本文介绍了如何在Android应用中实现视频录制功能,并详细讲解了如何使用Kotlin编写录像工具类以及抽帧保存图片的工具类。文章涵盖权限申请、SurfaceView配置、录制功能实现等关键步骤,同时引用了MediaRecorder和MediaMetadataRetriever的相关知识。
摘要由CSDN通过智能技术生成

一、申请权限

//摄像头权限
<uses-permission android:name="android.permission.CAMERA" />
//文件存储权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
//录制权限
<uses-permission android:name="android.permission.RECORD_AUDIO" />

二、录像工具类

package com.lkl22.demo.util

import android.media.MediaRecorder
import android.view.SurfaceView

class VideoRecorderUtils {
   
    companion object {
   
        private const val TAG = "VideoRecorderUtils"
    }

    private var mediaRecorder: MediaRecorder? = null
    private var lastFileName: String? = null

    var isRecording = false

    /**
     * 开始录制
     * @param surfaceView 预览需要的SurfaceView
     * @return 录制完的video的全路径
     */
    fun startRecording(surfaceView: SurfaceView): String {
   
        // 创建mediarecorder对象
        mediaRecorder = MediaRecorder()
        mediaRecorder?.apply {
   
            // 设置录制视频源为Camera(相机)
            setVideoSource(MediaRecorder.VideoSource.CAMERA)
            // 设置录制完成后视频的封装格式THREE_GPP为3gp.MPEG_4为mp4
            setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP)
            // 设置录制的视频编码h263 h264
            setVideoEncoder(Medi
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值