Revert "revert WebRTC related changes to AppAudioManager"

This reverts commit 6b4dedfefe.
pull/1/head
Matthew Chen 9 years ago
parent 8b45ac2233
commit 2216dc8d37

@ -14,6 +14,8 @@
@import AVFoundation; @import AVFoundation;
NS_ASSUME_NONNULL_BEGIN
@interface AppAudioManager : NSObject <SoundPlayerDelegate> @interface AppAudioManager : NSObject <SoundPlayerDelegate>
enum AudioProfile { enum AudioProfile {
@ -31,7 +33,9 @@ enum AudioProfile {
- (void)respondToTerminationType:(enum CallTerminationType)terminationType; - (void)respondToTerminationType:(enum CallTerminationType)terminationType;
- (BOOL)toggleSpeakerPhone; - (BOOL)toggleSpeakerPhone;
- (void)cancellAllAudio; - (void)toggleSpeakerPhoneIsEnabled:(BOOL)enabled NS_SWIFT_NAME(toggleSpeakerPhone(isEnabled:));
- (void)cancelAllAudio;
- (void)requestRequiredPermissionsIfNeededWithCompletion:(PermissionBlock)permissionBlock incoming:(BOOL)isIncoming; - (void)requestRequiredPermissionsIfNeededWithCompletion:(PermissionBlock)permissionBlock incoming:(BOOL)isIncoming;
- (BOOL)requestRecordingPrivilege; - (BOOL)requestRecordingPrivilege;
@ -42,4 +46,9 @@ enum AudioProfile {
- (void)didCompleteSoundInstanceOfType:(SoundInstanceType)instanceType; - (void)didCompleteSoundInstanceOfType:(SoundInstanceType)instanceType;
- (void)handleInboundRing;
- (void)setDefaultAudioProfile;
@end @end
NS_ASSUME_NONNULL_END

@ -3,6 +3,7 @@
#import "AudioRouter.h" #import "AudioRouter.h"
#import "SoundBoard.h" #import "SoundBoard.h"
NS_ASSUME_NONNULL_BEGIN
#define DEFAULT_CATEGORY AVAudioSessionCategorySoloAmbient #define DEFAULT_CATEGORY AVAudioSessionCategorySoloAmbient
#define RECORDING_CATEGORY AVAudioSessionCategoryPlayAndRecord #define RECORDING_CATEGORY AVAudioSessionCategoryPlayAndRecord
@ -34,8 +35,8 @@ AppAudioManager *sharedAppAudioManager;
#pragma mark AudioState Management #pragma mark AudioState Management
- (void)setAudioProfile:(enum AudioProfile)profile { - (void)setAudioProfile:(enum AudioProfile)profile {
[self updateAudioRouter];
_audioProfile = profile; _audioProfile = profile;
[self updateAudioRouter];
} }
- (void)updateAudioRouter { - (void)updateAudioRouter {
@ -55,17 +56,6 @@ AppAudioManager *sharedAppAudioManager;
} }
} }
- (void)overrideAudioProfile {
isSpeakerphoneActive = YES;
[self updateAudioRouter];
}
- (void)resetOverride {
isSpeakerphoneActive = NO;
[self updateAudioRouter];
}
- (enum AudioProfile)getCurrentAudioProfile { - (enum AudioProfile)getCurrentAudioProfile {
return (isSpeakerphoneActive) ? AudioProfile_ExternalSpeaker : _audioProfile; return (isSpeakerphoneActive) ? AudioProfile_ExternalSpeaker : _audioProfile;
} }
@ -110,26 +100,35 @@ AppAudioManager *sharedAppAudioManager;
} }
- (void)handleInboundRing { - (void)handleInboundRing {
[self setAudioProfile:AudioProfile_ExternalSpeaker];
[_soundPlayer playSound:[SoundBoard instanceOfInboundRingtone]]; [_soundPlayer playSound:[SoundBoard instanceOfInboundRingtone]];
} }
- (void)handleOutboundRing { - (void)handleOutboundRing {
[self setAudioProfile:AudioProfile_Default]; [self setDefaultAudioProfile];
[_soundPlayer playSound:[SoundBoard instanceOfOutboundRingtone]]; [_soundPlayer playSound:[SoundBoard instanceOfOutboundRingtone]];
} }
- (void)handleSecuring { - (void)handleSecuring {
[_soundPlayer stopAllAudio]; [_soundPlayer stopAllAudio];
[self setAudioProfile:AudioProfile_Default]; [self setDefaultAudioProfile];
[_soundPlayer playSound:[SoundBoard instanceOfHandshakeSound]]; [_soundPlayer playSound:[SoundBoard instanceOfHandshakeSound]];
} }
- (void)handleCallEstablished { - (void)handleCallEstablished {
[_soundPlayer stopAllAudio]; [_soundPlayer stopAllAudio];
[self setAudioProfile:AudioProfile_Default]; [self setDefaultAudioProfile];
[_soundPlayer playSound:[SoundBoard instanceOfCompletedSound]]; [_soundPlayer playSound:[SoundBoard instanceOfCompletedSound]];
} }
/**
* Route traffic through internal speaker, unless speakerphone is enabled.
*/
- (void)setDefaultAudioProfile
{
[self setAudioProfile:AudioProfile_Default];
}
- (BOOL)toggleSpeakerPhone { - (BOOL)toggleSpeakerPhone {
isSpeakerphoneActive = !isSpeakerphoneActive; isSpeakerphoneActive = !isSpeakerphoneActive;
[self updateAudioRouter]; [self updateAudioRouter];
@ -137,9 +136,17 @@ AppAudioManager *sharedAppAudioManager;
return isSpeakerphoneActive; return isSpeakerphoneActive;
} }
- (void)toggleSpeakerPhoneIsEnabled:(BOOL)enabled
{
DDLogInfo(@"%@ Toggled speaker phone: %@", self.tag, enabled ? @"ON" : @"OFF");
isSpeakerphoneActive = enabled;
[self updateAudioRouter];
}
#pragma mark Audio Control #pragma mark Audio Control
- (void)cancellAllAudio { - (void)cancelAllAudio
{
[_soundPlayer stopAllAudio]; [_soundPlayer stopAllAudio];
} }
@ -196,7 +203,8 @@ AppAudioManager *sharedAppAudioManager;
return (nil != e); return (nil != e);
} }
- (void)awake { - (void)awake
{
[_soundPlayer awake]; [_soundPlayer awake];
} }
@ -209,5 +217,18 @@ AppAudioManager *sharedAppAudioManager;
} }
} }
#pragma mark - Logging
+ (NSString *)tag
{
return [NSString stringWithFormat:@"[%@]", self.class];
}
- (NSString *)tag
{
return self.class.tag;
}
@end @end
NS_ASSUME_NONNULL_END

@ -61,7 +61,7 @@
[super viewWillDisappear:animated]; [super viewWillDisappear:animated];
[self stopRingingAnimation]; [self stopRingingAnimation];
[self stopConnectingFlashAnimation]; [self stopConnectingFlashAnimation];
[AppAudioManager.sharedInstance cancellAllAudio]; [AppAudioManager.sharedInstance cancelAllAudio];
[UIDevice.currentDevice setProximityMonitoringEnabled:NO]; [UIDevice.currentDevice setProximityMonitoringEnabled:NO];
} }

Loading…
Cancel
Save