Skip to content

AudioManager.setAudioSessionOptions({ iosCategory: "record" }) not working #805

@PierreCapo

Description

@PierreCapo

Description

When recording, it is necessary to use before

AudioManager.setAudioSessionOptions({
  iosCategory: "playAndRecord",
  iosMode: "measurement",
  iosOptions: ["mixWithOthers"],
})

iosCategory has an enum case "record", but when using it for recording as the name implies, the buffers generated are empty, so it doesn't work.

Following discussion in #804

Steps to reproduce

AudioManager.setAudioSessionOptions({
  iosCategory: "record",
  iosMode: "measurement",
  iosOptions: ["mixWithOthers"],
})
recorderNode.onAudioReady((event) => {
  const { buffer } = event;
  recordDurationMs.value = recordDurationMs.value + buffer.duration * 1000;
  audioBuffersRef.push(buffer);
});

Snack or a link to a repository

https://snack.expo.io/

React Native Audio API version

0.10.1

React Native version

0.81.5

Platforms

iOS

JavaScript runtime

Hermes

Workflow

Expo Dev Client

Architecture

Fabric (New Architecture)

Build type

None

Device

Real device

Device model

No response

Acknowledgements

Yes

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions