Update ObjC video decoder factory to use same parameters as encoder factory

Bug: chromium:1029737
Change-Id: I941bd29cb8e1dd018ee78157afe170ba78af4392
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169853
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30721}
This commit is contained in:
Johannes Kron
2020-03-06 12:47:23 +01:00
committed by Commit Bot
parent 13188a24a4
commit 6a29eb1c0c
2 changed files with 60 additions and 15 deletions

View File

@ -15,13 +15,33 @@
@implementation RTCVideoDecoderFactoryH264
- (NSArray<RTCVideoCodecInfo *> *)supportedCodecs {
NSMutableArray<RTCVideoCodecInfo *> *codecs = [NSMutableArray array];
NSString *codecName = kRTCVideoCodecH264Name;
NSDictionary<NSString *, NSString *> *constrainedHighParams = @{
@"profile-level-id" : kRTCMaxSupportedH264ProfileLevelConstrainedHigh,
@"level-asymmetry-allowed" : @"1",
@"packetization-mode" : @"1",
};
RTCVideoCodecInfo *constrainedHighInfo =
[[RTCVideoCodecInfo alloc] initWithName:codecName parameters:constrainedHighParams];
[codecs addObject:constrainedHighInfo];
NSDictionary<NSString *, NSString *> *constrainedBaselineParams = @{
@"profile-level-id" : kRTCMaxSupportedH264ProfileLevelConstrainedBaseline,
@"level-asymmetry-allowed" : @"1",
@"packetization-mode" : @"1",
};
RTCVideoCodecInfo *constrainedBaselineInfo =
[[RTCVideoCodecInfo alloc] initWithName:codecName parameters:constrainedBaselineParams];
[codecs addObject:constrainedBaselineInfo];
return [codecs copy];
}
- (id<RTCVideoDecoder>)createDecoder:(RTCVideoCodecInfo *)info {
return [[RTCVideoDecoderH264 alloc] init];
}
- (NSArray<RTCVideoCodecInfo *> *)supportedCodecs {
NSString *codecName = kRTCVideoCodecH264Name;
return @[ [[RTCVideoCodecInfo alloc] initWithName:codecName parameters:nil] ];
}
@end