我知道WebRTC
是为浏览器设计的,但是可以直接在移动应用程序上使用WebRTC库吗?
Thanks!
截至5月14日here https://github.com/pchab/AndroidRTC是一个android项目,使用WebRTC
效果很好。
我将整个 android 项目翻译为Objective-C
对于 iOS,WebRTC 也可以在 iOS 上工作,但我在 iPhone 4 和 4s 上遇到问题。仅适用于 iPhone 5 和 5s。
我认为问题在于性能。当我使用 webrtc 库进行视频通话时,它会占用 iPhone 5 上大约 140% 的 CPU,我猜这是大量资源,iPhone 4s 无法处理。
Edited
经过与视频连接的斗争(总是在 10 秒后断开),我终于让 WebRTC 在 iPhone 4s 上运行,您所要做的就是在创建本地 videoSource 捕获对象时设置正确的约束:
NSString *_width = @"320";
NSString *_height = @"180";
NSString *_maxFrameRate = @"10";
RTCMediaConstraints *videoConstraints = [[RTCMediaConstraints alloc]
initWithMandatoryConstraints:@[[[RTCPair alloc] initWithKey:@"maxHeight" value:_height],
[[RTCPair alloc] initWithKey:@"maxWidth" value:_width],
[[RTCPair alloc] initWithKey:@"maxFrameRate" value:_maxFrameRate]] optionalConstraints:@[[[RTCPair alloc]
initWithKey:@"googCpuOveruseDetection" value:@"true"],
[[RTCPair alloc] initWithKey:@"googCpuLimitedResolution" value:@"true"]]];
RTCVideoSource *videoSource = [factory videoSourceWithCapturer:capturer constraints:videoConstraints];
RTCMediaStream *lms = [factory mediaStreamWithLabel:@"ARDAMS"];
[lms addVideoTrack:[factory videoTrackWithID:@"ARDAMSv0" source:videoSource]];
请注意,这会发送一个非常小的视频,但它有效!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)