React-Native-Audio-Toolkit не удалось подготовить - PullRequest
1 голос
/ 06 августа 2020

Я пытаюсь создать свой собственный рекордер / проигрыватель, используя React-native-audio-toolkit.

Следуя их документации, но я не уверен, как правильно подготовить запись.

( на iOS симуляторе)

Вот мой код

const fileName = 'test.mp4';
let recorder = new Recorder(fileName, {
  bitrate: 256000,
  channels: 2,
  sampleRate: 44100,
  quality: 'high',
}).prepare((err, fspath) => {
  if (err) {
    console.log('recorder prepare failed: ', err);
  } else if (!err) {
    props.onFileURIChange(fspath);
    console.log('fspath: ', fspath);
    recorder.record();
  }
});

Ошибка:

recorder prepare failed:  {
    "err": "preparefail", "message": "Failed to prepare recorder. Settings are probably wrong.",
    "stackTrace": [
        "0   myapp                            0x000000010a2f61cf +[Helpers errObjWithCode:withMessage:] + 159",
        "1   myapp                            0x000000010a2f4cb3 -[AudioRecorder prepare:withPath:withOptions:withCallback:] + 2707",
        "2   CoreFoundation                      0x00007fff23e43e8c __invoking___ + 140",
        "3   CoreFoundation                      0x00007fff23e41071 -[NSInvocation invoke] + 321",
        "4   CoreFoundation                      0x00007fff23e41344 -[NSInvocation invokeWithTarget:] + 68",
        "5   myapp                            0x000000010a06edc4 -[RCTModuleMethod invokeWithBridge:module:arguments:] + 2660",
        "6   myapp                            0x000000010a072f91 _ZN8facebook5reactL11invokeInnerEP9RCTBridgeP13RCTModuleDatajRKN5folly7dynamicE + 801",
        "7   myapp                            0x000000010a072a66 _ZZN8facebook5react15RCTNativeModule6invokeEjON5folly7dynamicEiENK3$_0clEv + 134",
        "8   myapp                            0x000000010a0729cc ___ZN8facebook5react15RCTNativeModule6invokeEjON5folly7dynamicEi_block_invoke + 28",
        "9   libdispatch.dylib                   0x00007fff519e2951 _dispatch_call_block_and_release + 12",
        "10  libdispatch.dylib                   0x00007fff519e38cb _dispatch_client_callout + 8",
        "11  libdispatch.dylib                   0x00007fff519e960c _dispatch_lane_serial_drain + 707",
        "12  libdispatch.dylib                   0x00007fff519ea044 _dispatch_lane_invoke + 388",
        "13  libdispatch.dylib                   0x00007fff519f40c4 _dispatch_workloop_worker_thread + 626",
        "14  libsystem_pthread.dylib             0x00007fff51c096fc _pthread_wqthread + 290",
        "15  libsystem_pthread.dylib             0x00007fff51c08827 start_wqthread + 15"
    ]
}

Примечание: я пробовал использовать параметры записи по умолчанию, но та же ошибка: (

Примечание: это происходит только на симуляторах. На реальных устройствах работает хорошо. :)

1 Ответ

0 голосов
/ 15 августа 2020

Вы обновили свой info.plist?

Если нет, вы, вероятно, захотите добавить следующие строки:

<key>NSMicrophoneUsageDescription</key>
<string>The description why you need to use microphone.</string>

Или добавить Конфиденциальность - Описание использования микрофона

...