1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

AudioRecord nicht möglich

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von calvinhobbes, 10.12.2010.

  1. calvinhobbes, 10.12.2010 #1
    calvinhobbes

    calvinhobbes Threadstarter Neuer Benutzer

    Beiträge:
    2
    Erhaltene Danke:
    0
    Registriert seit:
    10.12.2010
    Hallo,

    auf meinem Galaxy Tab P1000 lässt sich kein AudioRecord-Objekt erstellen.
    Meine simple Zeile sieht so aus:

    Code:
    ar = new AudioRecord(AudioSource.MIC,44100,AudioFormat.CHANNEL_IN_STEREO,AudioFormat.ENCODING_PCM_16BIT,16640);
    Beim Debug kommt dann folgendes heraus:

    12-10 12:52:22.261: INFO/AudioHardwareALSA(2395): AudioStreamInALSA - input - format = 1, channels = 12, rate = 44100
    12-10 12:52:22.261: INFO/AudioHardwareALSA(2395): AudioStreamInALSA - default - format = 1, channels = 16, rate = 44100
    12-10 12:52:22.261: INFO/AudioHardwareALSA(2395): AudioStreamInALSA - input - format = 1, channels = 16, rate = 44100
    12-10 12:52:22.261: INFO/AudioHardwareALSA(2395): AudioStreamInALSA - default - format = 1, channels = 16, rate = 44100
    12-10 12:52:22.261: ERROR/ALSALib(2395): external/alsa-lib/src/pcm/pcm.c:2201:(snd_pcm_open_noupdate) Unknown PCM AndroidRecord_Speaker
    12-10 12:52:22.265: ERROR/ALSALib(2395): external/alsa-lib/src/pcm/pcm.c:2201:(snd_pcm_open_noupdate) Unknown PCM NULL_Device
    12-10 12:52:22.265: INFO/AudioHardwareALSA(2395): Initialized ALSA CAPTURE device NULL_Device
    12-10 12:52:22.265: ERROR/AudioHardwareALSA(2395): open (0,0x40000) = -2
    12-10 12:52:22.265: ERROR/AudioHardwareALSA(2395): setInputDevice(0 , 0x40000) = -2
    12-10 12:52:22.265: ERROR/AudioRecord(3173): Could not get audio input for record source 1
    12-10 12:52:22.265: ERROR/AudioRecord-JNI(3173): Error creating AudioRecord instance: initialization check failed.
    12-10 12:52:22.265: ERROR/AudioRecord-Java(3173): [ android.media.AudioRecord ] Error code -20 when initializing native AudioRecord object.

    Habe schon verschiedene realistische und unrealistische Werte für AudioSource, AudioFormat, Channels, SampleRate, BufferSize ausprobiert, doch das hier ist schon das beste Ergebnis.

    Welche Ursache kann das haben?

    Ich vermute bisher, dass die Gerätezuordnung zum AudioSource-Parameter irgendwie versagt. Laut asound.conf gibt es "AndroidRecord_Speaker" gar nicht - dafür "AndroidRecord_Microphone", was offenbar nicht korrekt angesprochen wird. Kann das sein?
     
  2. rufux, 10.12.2010 #2
    rufux

    rufux Android-Hilfe.de Mitglied

    Beiträge:
    84
    Erhaltene Danke:
    5
    Registriert seit:
    11.11.2010
    versuchs mal hiermit.

    so funktioniert es bei mir:
    Code:
    [/COLOR]
    [COLOR=black]bufferSize = AudioRecord.getMinBufferSize(44100,AudioFormat.CHANNEL_IN_STEREO,AudioFormat.ENCODING_PCM_16BIT);[/COLOR][COLOR=black] 
    [/COLOR]
    [COLOR=black][SIZE=2] ar = new AudioRecord(MediaRecorder.AudioSource.MIC[/SIZE][/COLOR][SIZE=2][COLOR=black],44100,AudioFormat.CHANNEL_IN_STEREO,AudioFormat.ENCODING_PCM_16BIT,buffersize);
    [/COLOR][/SIZE]
    [SIZE=2][COLOR=black]
    [/SIZE]
     
  3. calvinhobbes, 10.12.2010 #3
    calvinhobbes

    calvinhobbes Threadstarter Neuer Benutzer

    Beiträge:
    2
    Erhaltene Danke:
    0
    Registriert seit:
    10.12.2010
    Das war's leider nicht. Ich habe auch schon Vielfache von der Mindestgröße und ganz andere Werte probiert - kein Erfolg.
     

Diese Seite empfehlen