• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *  Copyright 2016 The WebRTC Project Authors. All rights reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10 
11 #import <Foundation/Foundation.h>
12 
13 NS_ASSUME_NONNULL_BEGIN
14 
15 /**
16  * Light-weight persistent store for user settings.
17  *
18  * It will persist between application launches and application updates.
19  */
20 @interface ARDSettingsStore : NSObject
21 
22 /**
23  * Set fallback values in case the setting has not been written by the user.
24  * @param dictionary of values to store
25  */
26 + (void)setDefaultsForVideoResolution:(NSString *)videoResolution
27                            videoCodec:(NSData *)videoCodec
28                               bitrate:(nullable NSNumber *)bitrate
29                             audioOnly:(BOOL)audioOnly
30                         createAecDump:(BOOL)createAecDump
31                  useManualAudioConfig:(BOOL)useManualAudioConfig;
32 
33 @property(nonatomic) NSString *videoResolution;
34 @property(nonatomic) NSData *videoCodec;
35 
36 /**
37  * Returns current max bitrate number stored in the store.
38  */
39 - (nullable NSNumber *)maxBitrate;
40 
41 /**
42  * Stores the provided value as maximum bitrate setting.
43  * @param value the number to be stored
44  */
45 - (void)setMaxBitrate:(nullable NSNumber *)value;
46 
47 @property(nonatomic) BOOL audioOnly;
48 @property(nonatomic) BOOL createAecDump;
49 @property(nonatomic) BOOL useManualAudioConfig;
50 
51 @end
52 NS_ASSUME_NONNULL_END
53