【问题标题】:How to Record voice with Audio MimeType in Android如何在 Android 中使用 Audio MimeType 录制语音
【发布时间】:2015-12-12 19:33:31
【问题描述】:

我想以纯音频格式录制语音。 目前我正在使用此代码

public static void startRecording(String fileName) {
        mRecorder = new MediaRecorder();
        mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
        mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
        String mFileName = Environment.getExternalStorageDirectory()
                .getAbsolutePath();
        mFileName += "/abc.mp3";
        mRecorder.setOutputFile(mFileName);
        mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
        try {
            mRecorder.prepare();
            mRecorder.start();
        } catch (IOException e) {
            Log.e(TAG, "prepare() failed");
        }
    }

这将文件显示为 mp3,但内部文件内容的 mime 类型为“video/mp4”。我需要的是任何音频 mime 类型。

EDIT1 根据 Headuck 的建议,我将代码更改为

mRecorder.setOutputFormat(MediaRecorder.OutputFormat.AAC_ADTS);
mFileName += "/abc.aac";
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);

使用“audio/x-hx-aac-adts”mime 类型完美录制了音频。谢谢头疼

但是我的问题是:

我正在使用云端点将此文件上传到 Google 云端硬盘。然后,当我打开文件时,它说“糟糕......!播放此文件时出现问题”。我需要将文件作为“MP3”文件播放。

Google 云端硬盘是否支持“ACC”格式?如果不是,请提出替代方案。
请帮忙。

【问题讨论】:

标签: android google-drive-api android-mediarecorder


【解决方案1】:

如果您只需将mime 类型更改为audio,您可以在记录器的stop()release() 之后尝试以下操作(为清楚起见省略了try-catch 块):

mRecorder.stop();
mRecorder.release();
// Set the mime type to audio
String[] paths = {mFileName};
String[] mimeTypes = {"audio/mp4"};
MediaScannerConnection.scanFile(getApplicationContext(),
                                paths,
                                mimeTypes,
                                new MediaScannerConnection.OnScanCompletedListener() {
                                    @Override
                                    public void onScanCompleted(String path, Uri uri) {
                                        System.out.println("SCAN COMPLETED: " + path);

                                    }
                                });

【讨论】:

    猜你喜欢
    • 2012-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-10
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    相关资源
    最近更新 更多