Skip to content

Commit 4f4c95d

Browse files
committed
fix(ios): more options support for recorder
1 parent 55db12d commit 4f4c95d

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

src/audio/index.d.ts

+2
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ export interface AudioRecorderOptions {
9797
bitRate?: any;
9898
encoder?: any;
9999

100+
quality?: number; // iOS quality AVEncoderAudioQualityKey
101+
100102
/**
101103
* Callback to execute when playback has an error.
102104
* @returns {Object} An object containing the native values for the error callback.

src/audio/ios/recorder.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export class TNSRecorder extends Observable {
6464
return new Promise((resolve, reject) => {
6565
try {
6666
this._recordingSession = AVAudioSession.sharedInstance();
67-
let errorRef = new interop.Reference<NSError>();
67+
const errorRef = new interop.Reference<NSError>();
6868
this._recordingSession.setCategoryError(AVAudioSessionCategoryPlayAndRecord, errorRef);
6969
if (errorRef && errorRef.value) {
7070
throw interop.NSErrorWrapper(errorRef.value);
@@ -87,9 +87,9 @@ export class TNSRecorder extends Observable {
8787
// NSNumber.numberWithInt((<any>AVAudioQuality).Medium.rawValue),
8888
// 'AVEncoderAudioQualityKey'
8989
// );
90-
recordSetting.setValueForKey(NSNumber.numberWithInt(AVAudioQuality.Medium), 'AVEncoderAudioQualityKey');
91-
recordSetting.setValueForKey(NSNumber.numberWithFloat(16000.0), 'AVSampleRateKey');
92-
recordSetting.setValueForKey(NSNumber.numberWithInt(1), 'AVNumberOfChannelsKey');
90+
recordSetting.setValueForKey(NSNumber.numberWithInt(options.quality || AVAudioQuality.Medium), 'AVEncoderAudioQualityKey');
91+
recordSetting.setValueForKey(NSNumber.numberWithFloat(options.sampleRate || 16000), 'AVSampleRateKey');
92+
recordSetting.setValueForKey(NSNumber.numberWithInt(options.channels || 1), 'AVNumberOfChannelsKey');
9393

9494
const url = NSURL.fileURLWithPath(options.filename);
9595

0 commit comments

Comments
 (0)