我试图在我的VCSimpleSession中使用变量。我目前已设置好宽度和高度,并且它们工作正常,但是我无法使帧率和比特率的值正常工作。
来看看:
var session: VCSimpleSession!
var streamWidth:Int = Int(NSUserDefaults.standardUserDefaults().stringForKey("settingsWidth")!)!
var streamHeight:Int = Int(NSUserDefaults.standardUserDefaults().stringForKey("settingsHeight")!)!
var streamFramerate:Int = Int(NSUserDefaults.standardUserDefaults().stringForKey("settingsFramerate")!)!
var streamBitrate:Int = Int(NSUserDefaults.standardUserDefaults().stringForKey("settingsBitrate")!)!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
session = VCSimpleSession(videoSize: CGSize(width: streamWidth, height: streamHeight), frameRate: streamFramerate, bitrate: streamBitrate, useInterfaceOrientation: false)
previewView.addSubview(session.previewView)
session.previewView.frame = previewView.bounds
session.delegate = self
}
我在frameRate和bitrate上遇到错误,即无法为类型为'(videoSize:CGSize,frameRate:Int,bitrate:Int,useInterfaceOrientation:Bool)'的参数列表的'VCSimpleSession'类型调用初始化程序
我查看了VCSimpleSession.h文件,发现frameRate和bitrate都是int值,所以我很困惑为什么收到此错误。 (顺便说一下,语言是斯威夫特)
这是GitHub上VideoCore的链接:https://github.com/jgh-/VideoCore
谢谢!
最佳答案
我快要解决我的问题了。问题在于frameRate,比特率必须为Int32()
而不是Int()
。
因此,这就是最终产品的外观:session = VCSimpleSession(videoSize: CGSize(width: streamWidth, height: streamHeight), frameRate: Int32(streamFramerate), bitrate: Int32(streamBitrate), useInterfaceOrientation: false)
关于ios - VideoCore使用变量问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33205523/