Skip to content

Commit

Permalink
Namespace errors under the Aperture name
Browse files Browse the repository at this point in the history
  • Loading branch information
sindresorhus committed Feb 14, 2020
1 parent cc856ce commit 5f80b52
Showing 1 changed file with 15 additions and 15 deletions.
30 changes: 15 additions & 15 deletions Sources/Aperture/Aperture.swift
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
import Foundation
import AVFoundation

public enum ApertureError: Error {
case invalidScreen
case invalidAudioDevice
case couldNotAddScreen
case couldNotAddMic
case couldNotAddOutput
}

public final class Aperture: NSObject {
public enum Error: Swift.Error {
case invalidScreen
case invalidAudioDevice
case couldNotAddScreen
case couldNotAddMic
case couldNotAddOutput
}

private let destination: URL
private let session: AVCaptureSession
private let output: AVCaptureMovieFileOutput
private var activity: NSObjectProtocol?

public var onStart: (() -> Void)?
public var onFinish: (() -> Void)?
public var onError: ((Error) -> Void)?
public var onError: ((Swift.Error) -> Void)?
public var onPause: (() -> Void)?
public var onResume: (() -> Void)?
public var isRecording: Bool { output.isRecording }
Expand All @@ -42,28 +42,28 @@ public final class Aperture: NSObject {

if let audioDevice = audioDevice {
if !audioDevice.hasMediaType(.audio) {
throw ApertureError.invalidAudioDevice
throw Error.invalidAudioDevice
}

let audioInput = try AVCaptureDeviceInput(device: audioDevice)

if session.canAddInput(audioInput) {
session.addInput(audioInput)
} else {
throw ApertureError.couldNotAddMic
throw Error.couldNotAddMic
}
}

if session.canAddInput(input) {
session.addInput(input)
} else {
throw ApertureError.couldNotAddScreen
throw Error.couldNotAddScreen
}

if session.canAddOutput(output) {
session.addOutput(output)
} else {
throw ApertureError.couldNotAddOutput
throw Error.couldNotAddOutput
}

// TODO: Default to HEVC when on 10.13 or newer and encoding is hardware supported. Without hardware encoding I got 3 FPS full screen recording.
Expand Down Expand Up @@ -103,7 +103,7 @@ public final class Aperture: NSObject {
audioDevice: AVCaptureDevice? = .default(for: .audio),
videoCodec: String? = nil
) throws {
let input = try AVCaptureScreenInput(displayID: screenId).unwrapOrThrow(ApertureError.invalidScreen)
let input = try AVCaptureScreenInput(displayID: screenId).unwrapOrThrow(Error.invalidScreen)

input.minFrameDuration = CMTime(videoFramesPerSecond: framesPerSecond)

Expand Down Expand Up @@ -195,7 +195,7 @@ extension Aperture: AVCaptureFileOutputRecordingDelegate {
onStart?()
}

public func fileOutput(_ captureOutput: AVCaptureFileOutput, didFinishRecordingTo outputFileURL: URL, from connections: [AVCaptureConnection], error: Error?) {
public func fileOutput(_ captureOutput: AVCaptureFileOutput, didFinishRecordingTo outputFileURL: URL, from connections: [AVCaptureConnection], error: Swift.Error?) {
shouldPreventSleep = false

let FINISHED_RECORDING_ERROR_CODE = -11_806
Expand Down

0 comments on commit 5f80b52

Please sign in to comment.