我正在尝试在我的 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
}
我在帧速率和比特率方面遇到错误,即无法调用类型为“VCSimpleSession”的初始化程序,其参数列表类型为“(videoSize: CGSize, frameRate: Int, bitrate: Int, useInterfaceOrientation: Bool)”
我查看了VCSimpleSession.h 文件,发现frameRate 和bitrate 都是int 值,所以我很困惑为什么会收到此错误。 (顺便说一句,语言是 Swift)
以下是 GitHub 上 VideoCore 的链接:https://github.com/jgh-/VideoCore
谢谢!
最佳答案
我即将解决我的问题。问题在于帧速率和比特率需要是 Int32()
而不是 Int()
。
最终产品应该是这样的:
session = VCSimpleSession(videoSize:CGSize(宽度:streamWidth,高度:streamHeight),frameRate:Int32(streamFramerate),比特率:Int32(streamBitrate),useInterfaceOrientation:false)
关于ios - VideoCore 使用变量问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33205523/