Support delayed AudioUnit initialization.

Applications can choose to decide when to give up control of the
AVAudioSession to WebRTC. Otherwise, behavior should be
unchanged.

Adds a toggle to AppRTCDemo so developers can see the different
paths.

BUG=
R=haysc@webrtc.org

Review URL: https://codereview.webrtc.org/1822543002 .

Cr-Commit-Position: refs/heads/master@{#12080}
This commit is contained in:
Tze Kwang Chin
2016-03-21 13:57:40 -07:00
parent bc73fe1aad
commit 307a0922c5
16 changed files with 644 additions and 179 deletions

View File

@ -15,9 +15,12 @@
@protocol ARDMainViewDelegate <NSObject>
- (void)mainView:(ARDMainView *)mainView
didInputRoom:(NSString *)room
isLoopback:(BOOL)isLoopback
isAudioOnly:(BOOL)isAudioOnly;
didInputRoom:(NSString *)room
isLoopback:(BOOL)isLoopback
isAudioOnly:(BOOL)isAudioOnly
shouldDelayAudioConfig:(BOOL)shouldDelayAudioConfig;
- (void)mainViewDidToggleAudioLoop:(ARDMainView *)mainView;
@end
@ -26,5 +29,7 @@
@interface ARDMainView : UIView
@property(nonatomic, weak) id<ARDMainViewDelegate> delegate;
// Updates the audio loop button as needed.
@property(nonatomic, assign) BOOL isAudioLoopPlaying;
@end