blob: 6d9fa5bb26a2274bfaa4569b18a02a582760c44a [file] [log] [blame]
denicijad17d5362016-11-02 02:56:09 -07001/*
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
denicija2256e042016-11-09 06:26:18 -080011#import "ARDSettingsStore.h"
denicijad17d5362016-11-02 02:56:09 -070012
denicija9af2b602016-11-17 00:43:43 -080013static NSString *const kMediaConstraintsKey = @"rtc_video_resolution_media_constraints_key";
sakal68b5df92017-03-17 09:01:59 -070014static NSString *const kVideoCodecKey = @"rtc_video_codec_key";
denicija9af2b602016-11-17 00:43:43 -080015static NSString *const kBitrateKey = @"rtc_max_bitrate_key";
denicijad17d5362016-11-02 02:56:09 -070016
17NS_ASSUME_NONNULL_BEGIN
denicija9af2b602016-11-17 00:43:43 -080018@interface ARDSettingsStore () {
19 NSUserDefaults *_storage;
20}
sakalc4adacf2017-03-28 01:22:48 -070021@property(nonatomic, strong, readonly) NSUserDefaults *storage;
denicija9af2b602016-11-17 00:43:43 -080022@end
23
denicija2256e042016-11-09 06:26:18 -080024@implementation ARDSettingsStore
denicijad17d5362016-11-02 02:56:09 -070025
denicija9af2b602016-11-17 00:43:43 -080026- (NSUserDefaults *)storage {
27 if (!_storage) {
28 _storage = [NSUserDefaults standardUserDefaults];
29 }
30 return _storage;
denicijad17d5362016-11-02 02:56:09 -070031}
32
denicija9af2b602016-11-17 00:43:43 -080033- (nullable NSString *)videoResolutionConstraints {
34 return [self.storage objectForKey:kMediaConstraintsKey];
35}
36
37- (void)setVideoResolutionConstraints:(NSString *)constraintsString {
38 [self.storage setObject:constraintsString forKey:kMediaConstraintsKey];
39 [self.storage synchronize];
40}
41
sakal68b5df92017-03-17 09:01:59 -070042- (NSString *)videoCodec {
43 return [self.storage objectForKey:kVideoCodecKey];
44}
45
46- (void)setVideoCodec:(NSString *)videoCodec {
47 [self.storage setObject:videoCodec forKey:kVideoCodecKey];
48 [self.storage synchronize];
49}
50
denicija9af2b602016-11-17 00:43:43 -080051- (nullable NSNumber *)maxBitrate {
52 return [self.storage objectForKey:kBitrateKey];
53}
54
55- (void)setMaxBitrate:(nullable NSNumber *)value {
56 [self.storage setObject:value forKey:kBitrateKey];
57 [self.storage synchronize];
denicijad17d5362016-11-02 02:56:09 -070058}
59
60@end
61NS_ASSUME_NONNULL_END