2011-02-10 12 views
6

प्रारंभ करने का प्रयास करते समय "रिकॉर्ड स्रोत 1 के लिए ऑडियो इनपुट प्राप्त नहीं किया जा सका" Iclipse का उपयोग कर एमुलेटर का उपयोग करके ध्वनियों को रिकॉर्ड करने के प्रयास में, मुझे प्रारंभ करने और ऑडियो रिकार्ड ऑब्जेक्ट को प्रारंभ करने का प्रयास करते समय यह त्रुटि प्राप्त होती रहती है।ऑडियो रिकॉर्डर

मैंने विभिन्न बिट नमूना दरों के साथ प्रयास किया है, 8000 केवल वैध है जो वैध है, लेकिन त्रुटि दिखाई दे रही है। मैंने एसडीके, 1.5, 1.6, 2, 2.2 और 2.3.1 के विभिन्न संस्करणों पर कोशिश की है। (और एवीडी के साथ संयोजन)।

 Log.v(TAG, "About to initialize recording"); 
    //int[] samplingRates = {44100, 22050, 16000, 11025, 8000}; 
    int[] samplingRates = {8000}; 

    for (int i = 0; i < samplingRates.length; ++i) 
    { 
     try 
     { 
      Log.d(TAG,"Trying sampling rate: " + samplingRates[i]); 
      int min = AudioRecord.getMinBufferSize(samplingRates[i], 
        AudioFormat.CHANNEL_CONFIGURATION_MONO, 
        //AudioFormat.CHANNEL_IN_MONO, 
        AudioFormat.ENCODING_PCM_16BIT); 
      Log.d(TAG,"MinBufferSize: " + min); 

      AudioRecord record = new AudioRecord(MediaRecorder.AudioSource.MIC, samplingRates[i], 
        AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT, min); 
      if (record.getState() == AudioRecord.STATE_INITIALIZED) 
      { 
       Log.d("Recorder", "Audio recorder initialised at " + record.getSampleRate()); 
       return record; 
      } 
      record.release(); 
      record = null; 
     } 
     catch (IllegalArgumentException e) 
     { 
      // Try the next one. 
      Log.d(TAG,"Initialization failed"); 
     } 
    } 
    // None worked. 
    return null; 

इन्स्टेन्शियशन, AudioRecord रिकॉर्ड = नए आदि पर त्रुटि होती है

इस एक ही समस्या देखा किसी को भी, यह बहुत i'एक सीधे आगे अनुरोध हो रहा है है:

यहाँ कोड है m suprised अगर यह एक बग, विशेष रूप से क्योंकि मैं इसे विभिन्न संस्करणों के साथ काम नहीं कर सकता।

मैंने ऑडियो रिकॉर्ड क्षमताओं के साथ एवीडी बनाया है। क्या मुझे कुछ और कॉन्फ़िगर करना है?

मैंने एक ही मुद्दे पर कुछ अन्य पोस्ट देखी हैं, लेकिन कोई जवाब नहीं।

अग्रिम धन्यवाद

क्रिस

+0

हाँ, यह संभव है ... में बदलाव के साथ जच इस पोस्ट http://stackoverflow.com/ काम है क्यू/5254994/87918 –

उत्तर

2

आप समस्या यहाँ शायद वास्तव में दुगना है। सबसे पहले, आपको ऑडियो पैराकॉर्ड के लिए बस सभी पैरामीटर प्राप्त करना होगा, यानी, मैं देख सकता हूं कि आपने विभिन्न नमूना दरों और चैनल कॉन्फ़िगरेशन की कोशिश की है, लेकिन क्या आपने अलग-अलग गहराई की कोशिश की है? यदि आपको यह सब ठीक नहीं मिलता है, तो यह काम नहीं करता है। इसके अलावा, ऐसा लगता है कि कुछ एंड्रॉइड डिवाइस गलत minBufferSize की रिपोर्ट करने लगते हैं।

लेकिन, मुझे लगता है कि वास्तविक समस्या आप अनुभव कर रहे है कि AVDs रिकॉर्ड नहीं कर सकते ऑडियो/वीडियो (भले ही वे अगर आप इसे इतना कॉन्फ़िगर शिकायत नहीं कर सकते हैं) है:

: पैरा तीन से http://developer.android.com/guide/topics/media/index.html

ध्यान दें कि एमुलेटर में ऑडियो या वीडियो कैप्चर करने के लिए हार्डवेयर नहीं है, लेकिन वास्तविक मोबाइल डिवाइस मीडिया क्षमताओं के माध्यम से इन क्षमताओं को उपलब्ध कराने की संभावना रखते हैं।

0

मुझे सैमसंग डिवाइस पर के लिए, यह सिर्फ AudioFormat.CHANNEL_IN_MONO

या

AudioRecord recorder = new AudioRecord(MediaRecorder.AudioSource.MIC, 
RECORDER_SAMPLERATE, RECORDER_CHANNELS, RECORDER_AUDIO_ENCODING, bufferSize); 
संबंधित मुद्दे