2012-07-31 75 views
2

的MediaRecorder適用於Android的其它版本而不是在2.3.3:的Android MediaRecorder - 啓動失敗:-2147483648 2.3.3

try { 

    MediaRecorder mRecorder = new MediaRecorder(); 
    mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
    mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); 
    mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT); 
    mRecorder.setOutputFile(path + "r_" + FileName); 

    int version = android.os.Build.VERSION.SDK_INT; 
    Log.d("MP3Downloader", "V: " + version); 

    if(version >= 8) { 
     mRecorder.setAudioEncodingBitRate(16); 
     mRecorder.setAudioSamplingRate(44100); 
     mRecorder.setAudioChannels(2); 
    } 

    mRecorder.prepare(); 
    mRecorder.start(); 
} catch (Exception e) { 
    Log.e("MP3Downloader", "MediaRecorder Failed: " + e.getMessage()); 
} 

我得到錯誤啓動失敗:-2147483648 2.3.3版本只要。我沒有發現在其他地方解決這個問題。

我也試過:

try { 

    MediaRecorder mRecorder = new MediaRecorder(); 
    mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
    mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); 
    mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 

    FileOutputStream fos = new FileOutputStream("r_" + FileName); 

    mRecorder.setOutputFile(fos.getFD()); 



    int version = android.os.Build.VERSION.SDK_INT; 
    Log.d("MP3Downloader", "V: " + version); 

    if(version >= 8) { 
     mRecorder.setAudioEncodingBitRate(16); 
     mRecorder.setAudioSamplingRate(44100); 
     mRecorder.setAudioChannels(1); 
    } 

    mRecorder.prepare(); 
    mRecorder.start(); 
} catch (Exception e) { 
    Log.e("MP3Downloader", "MediaRecorder Failed: " + e.getMessage()); 
} 

但是,我得到異常: 「(只讀文件系統)」

我有權限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.RECORD_AUDIO" /> 
+2

我認爲這個問題來自於使用MediaRecorder對象的多個實例......這是一種多次調用的方法,每次它將mRecorder重新分配給MediaRecorder的新實例。我猜OS /垃圾收集器/看門狗正在照顧其他大多數Android版本的舊MediaRecorder對象,但2.3.3不喜歡我糟糕的編程習慣......我修復它重新使用MediaRecorder根據圖http://developer.android.com/reference/android/media/MediaRecorder.html – 2012-07-31 04:02:16

+1

您的評論給了我希望再次..我有同樣的問題,這是讓我瘋了!將試試看,如果它的作品肯定會做一些upvoting在這裏和那裏:)。順便說一句android開發者。可以把他們的行爲放在一起,並更好地記錄這類事情,因爲此刻這可不是什麼荒謬的事情 – spirytus 2012-08-12 23:06:28

回答

0

改變您的輸出格式3GPP。

相關問題