動画撮影の際に「because more than one output of the same type is unsupported」というエラーが出る
現在動画を撮影しようとしているのですが、以下のコードを実行すると「because more than one output of the same type is unsupported」というエラーが出ます。
var myDevice : AVCaptureDevice?
let devices = AVCaptureDevice.devices()
for device in devices {
if(device.position == AVCaptureDevicePosition.Front){
myDevice = device as? AVCaptureDevice
}
}
do {
let videoInput = try AVCaptureDeviceInput(device: myDevice) as AVCaptureDeviceInput
self.captureSession.addInput(videoInput)
let audioInput = try AVCaptureDeviceInput(device: self.audioDevice) as AVCaptureDeviceInput
self.captureSession.addInput(audioInput);
} catch {
}
let movieFileOutput = AVCaptureMovieFileOutput()
self.captureSession.addOutput(movieFileOutput)
var videoConnection: AVCaptureConnection? = nil
for connection: AVCaptureConnection in movieFileOutput.connections as! [AVCaptureConnection] {
print(connection)
for inputport in connection.inputPorts {
if let port = inputport as? AVCaptureInputPort {
print(port)
if port.mediaType == AVMediaTypeVideo {
videoConnection = connection
}
}
}
}
if ((videoConnection?.supportsVideoOrientation) != nil) {
videoConnection?.videoOrientation = AVCaptureVideoOrientation.LandscapeLeft
}
self.captureSession.commitConfiguration()
self.captureSession.addOutput(self.fileOutput)
self.captureSession.startRunning()
let movieFileOutput = AVCaptureMovieFileOutput()の行から
if ((videoConnection?.supportsVideoOrientation) != nil) {
までの行を追加すると上述のエラーが出ました。(その追加したコードは動画の向きを横向きで固定するためのコードです)
どうすれば動画を撮影できるようになるでしょうか?
どなたかわかる方がいれば教えていただきたいです。よろしくお願いします。