Skip to content

Commit

Permalink
Audio Device Optimization
Browse files Browse the repository at this point in the history
allow listen-only mode in AudioUnit, adjust when category changes (webrtc-sdk#2)

release mic when category changes (webrtc-sdk#5)

Change defaults to iOS defaults (webrtc-sdk#7)

Sync audio session config (webrtc-sdk#8)

feat: support bypass voice processing for iOS. (webrtc-sdk#15)

Remove MacBookPro audio pan right code (webrtc-sdk#22)

fix: Fix can't open mic alone when built-in AEC is enabled. (webrtc-sdk#29)

feat: add audio device changes detect for windows. (webrtc-sdk#41)

fix Linux compile (webrtc-sdk#47)

AudioUnit: Don't rely on category switch for mic indicator to turn off (webrtc-sdk#52)

Stop recording on mute (turn off mic indicator) (webrtc-sdk#55)

Cherry pick audio selection from m97 release (webrtc-sdk#35)

[Mac] Allow audio device selection (webrtc-sdk#21)

RTCAudioDeviceModule.outputDevice / inputDevice getter and setter (webrtc-sdk#80)

Co-authored-by: Hiroshi Horie <548776+hiroshihorie@users.noreply.github.com>
Co-authored-by: David Zhao <dz@livekit.io>
  • Loading branch information
3 people authored and npazkevich committed Jun 24, 2024
1 parent 432a28b commit 68f3000
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
6 changes: 6 additions & 0 deletions sdk/objc/api/peerconnection/RTCPeerConnectionFactory+Native.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,12 @@ NS_ASSUME_NONNULL_BEGIN
initWithEncoderFactory:(nullable id<RTC_OBJC_TYPE(RTCVideoEncoderFactory)>)encoderFactory
decoderFactory:(nullable id<RTC_OBJC_TYPE(RTCVideoDecoderFactory)>)decoderFactory;

- (instancetype)
initWithBypassVoiceProcessing:(BOOL)bypassVoiceProcessing
encoderFactory:(nullable id<RTC_OBJC_TYPE(RTCVideoEncoderFactory)>)encoderFactory
decoderFactory:
(nullable id<RTC_OBJC_TYPE(RTCVideoDecoderFactory)>)decoderFactory;

/** Initialize an RTCPeerConnection with a configuration, constraints, and
* dependencies.
*/
Expand Down
10 changes: 10 additions & 0 deletions sdk/objc/native/src/audio/audio_device_ios.mm
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,16 @@
const UInt16 kFixedPlayoutDelayEstimate = 30;
const UInt16 kFixedRecordDelayEstimate = 30;

enum AudioDeviceMessageType : uint32_t {
kMessageTypeInterruptionBegin,
kMessageTypeInterruptionEnd,
kMessageTypeValidRouteChange,
kMessageTypeCanPlayOrRecordChange,
kMessageTypePlayoutGlitchDetected,
kMessageOutputVolumeChange,
kMessageTypeAudioWillRecord,
};

using ios::CheckAndLogError;

#if !defined(NDEBUG)
Expand Down

0 comments on commit 68f3000

Please sign in to comment.