The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Buffie, reference master (f76334), with Swift 6.4 for tvOS using Xcode 27.0 on 16 Sep 2026 14:41:21 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme Buffie -destination generic/platform=tvOS

Build Log

    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.LinkFileList
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-OutputFileMap.json (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-OutputFileMap.json
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie_const_extract_protocols.json (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie_const_extract_protocols.json
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.SwiftFileList (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.SwiftFileList
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.SwiftConstValuesFileList (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.SwiftConstValuesFileList
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-product-t.build/Objects-normal/arm64/Buffie.LinkFileList (in target 'Buffie-product' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-product-t.build/Objects-normal/arm64/Buffie.LinkFileList
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-product-t.build/Buffie.DependencyStaticMetadataFileList (in target 'Buffie-product' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-product-t.build/Buffie.DependencyStaticMetadataFileList
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-product-t.build/Buffie.DependencyMetadataFileList (in target 'Buffie-product' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-product-t.build/Buffie.DependencyMetadataFileList
WriteAuxiliaryFile /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Buffie.DependencyMetadataFileList (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    write-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Buffie.DependencyMetadataFileList
MkDir /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/PackageFrameworks/Buffie.framework (in target 'Buffie-product' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    /bin/mkdir -p /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/PackageFrameworks/Buffie.framework
Copy /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/GeneratedModuleMaps-appletvos/Buffie.modulemap /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Buffie.modulemap (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace
    builtin-copy -exclude .DS_Store -exclude CVS -exclude .svn -exclude .git -exclude .hg -resolve-src-symlinks /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Buffie.modulemap /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/GeneratedModuleMaps-appletvos
SwiftDriver Buffie normal arm64 com.apple.xcode.tools.swift.compiler (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name Buffie -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -target arm64-apple-tvos15.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 4 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-OutputFileMap.json -save-temps -no-color-diagnostics -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftmodule -serialize-diagnostics -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftCompile normal arm64 Compiling\ Camera.swift,\ CaptureSession.swift,\ DeviceHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:10:33: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     |           `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:97:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 38 | }
 39 |
 40 | public class Camera {
    |              `- note: add '@available' attribute to enclosing class
 41 |
 42 |     /// Which camera to use front/back
    :
 95 |     }
 96 |
 97 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
 98 |         self.cameraSession?.start(onComplete: onComplete)
 99 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:12:29: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
    |                             |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                             `- note: add 'if #available' version check
 13 |         case .back: return AVCaptureDevice.Position.back
 14 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:13:28: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
 13 |         case .back: return AVCaptureDevice.Position.back
    |                            |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                            `- note: add 'if #available' version check
 14 |         }
 15 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:5:22: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
    |         |            `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:6:22: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    |         |            `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 |
  8 |     func start()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:9:30: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
  8 |     func start()
  9 |     func start(onComplete: ((AVCaptureSession) -> Void)?)
    |          |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 10 |
 11 |     func stop()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:13:35: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    :
 11 |     func stop()
 12 |
 13 |     func changeToCamera(position: AVCaptureDevice.Position) -> Bool
    |          |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 14 | }
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:20:32: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
 19 |
 20 |     @objc private var session: AVCaptureSession
    |                                `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:23:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
 23 |     private var videoInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:24:31: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 22 |
 23 |     private var videoInput: AVCaptureInput?
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
    |                               `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:27:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
 27 |     private var audioInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:28:31: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 26 |
 27 |     private var audioInput: AVCaptureInput?
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
    |                               `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:31:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              |                `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:32:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
    |                               `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 33 |                   controlDelegate: CameraControlDelegate,
 34 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:98:34: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 |                `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:115:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
113 |     }
114 |
115 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
116 |         self.session.startRunning()
117 |         onComplete?(self.session)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:124:42: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:37:38: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
    :
 35 |     {
 36 |         self.controlDelegate       = controlDelegate
 37 |         self.session               = AVCaptureSession()
    |                                      |- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                                      `- note: add 'if #available' version check
 38 |
 39 |         if let vInput = videoInput {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:41:35: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
    :
 39 |         if let vInput = videoInput {
 40 |             self.videoInput     = vInput
 41 |             self.videoOutput    = AVCaptureVideoDataOutput()
    |                                   |- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
    |                                   `- note: add 'if #available' version check
 42 |             self.videoOutput?.videoSettings = [kCVPixelBufferPixelFormatTypeKey as String: kCVPixelFormatType_420YpCbCr8PlanarFullRange]
 43 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:53:32: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
    :
 51 |         if let aInput = audioInput {
 52 |             self.audioInput  = aInput
 53 |             self.audioOutput = AVCaptureAudioDataOutput()
    |                                |- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
    |                                `- note: add 'if #available' version check
 54 |
 55 |             #if os(macOS)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:78:25: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
 76 |                      cameraReader: AVReaderProtocol) throws
 77 |     {
 78 |         var videoInput: AVCaptureInput? = nil
    |                         |- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |                         `- note: add 'if #available' version check
 79 |         var audioInput: AVCaptureInput? = nil
 80 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:79:25: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
    :
 77 |     {
 78 |         var videoInput: AVCaptureInput? = nil
 79 |         var audioInput: AVCaptureInput? = nil
    |                         |- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |                         `- note: add 'if #available' version check
 80 |
 81 |         // Attempt to configure the video device
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:82:26: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
    :
 80 |
 81 |         // Attempt to configure the video device
 82 |         videoInput = try AVCaptureDeviceInput.input(for: videoDeviceID)
    |                          |- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    |                          `- note: add 'if #available' version check
 83 |
 84 |         // Attempt to configure the video device
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:85:26: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
    :
 83 |
 84 |         // Attempt to configure the video device
 85 |         audioInput = try AVCaptureDeviceInput.input(for: audioDeviceID)
    |                          |- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    |                          `- note: add 'if #available' version check
 86 |
 87 |         // Ensure we have at least one input
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:102:31: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
101 |     {
102 |         let videoDevice = try AVCaptureDevice.firstDevice(for: .video, in: position)
    |                               |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                               `- note: add 'if #available' version check
103 |         let audioDevice = try AVCaptureDevice.firstDevice(for: .audio, in: position)
104 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:103:31: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
101 |     {
102 |         let videoDevice = try AVCaptureDevice.firstDevice(for: .video, in: position)
103 |         let audioDevice = try AVCaptureDevice.firstDevice(for: .audio, in: position)
    |                               |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                               `- note: add 'if #available' version check
104 |
105 |         try self.init(videoDeviceID: videoDevice.uniqueID,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:131:49: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
    :
129 |                     if port.mediaType == .video {
130 |
131 |                         let videoDevice   = try AVCaptureDevice.firstDevice(for: .video, in: position)
    |                                                 |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                                                 `- note: add 'if #available' version check
132 |                         let newVideoInput = try AVCaptureDeviceInput(device: videoDevice)
133 |                         self.session.beginConfiguration()
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Camera.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile CaptureSession.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DeviceHelpers.swift
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:132:49: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
    :
130 |
131 |                         let videoDevice   = try AVCaptureDevice.firstDevice(for: .video, in: position)
132 |                         let newVideoInput = try AVCaptureDeviceInput(device: videoDevice)
    |                                                 |- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    |                                                 `- note: add 'if #available' version check
133 |                         self.session.beginConfiguration()
134 |                         self.session.removeInput(input)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:5: warning: 'public' modifier is redundant for static method declared in a public extension
 4 | public extension AVCaptureDevice {
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:5: warning: 'public' modifier is redundant for static method declared in a public extension
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:14:5: warning: 'public' modifier is redundant for static method declared in a public extension
12 |     }
13 |
14 |     public static func videoDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
15 |         return self.dictionary(for: self.videoDevices())
16 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:18:5: warning: 'public' modifier is redundant for static method declared in a public extension
16 |     }
17 |
18 |     public static func audioDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
19 |         return self.dictionary(for: self.audioDevices())
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:22:50: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
20 |     }
21 |
22 |     private static func dictionary(for devices: [AVCaptureDevice]) -> [String: String] {
   |                         |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                         `- note: add '@available' attribute to enclosing static method
23 |         var result: [String: String] = [:]
24 |         for device in devices {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:70: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                    `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:106: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                                                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:4:18: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        |         `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:63: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |                        |                                      `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:5: warning: 'public' modifier is redundant for static method declared in a public extension
41 | public extension AVCaptureDeviceInput {
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:41:18: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        |         `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:7:16: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |                        `- note: add '@available' attribute to enclosing static method
 7 |         return AVCaptureDevice.devices(for: .video)
   |                |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                `- note: add 'if #available' version check
 8 |     }
 9 |
SwiftCompile normal arm64 Compiling\ VideoEncoderSettings.swift,\ VideoSampleHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoderSettings.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoSampleHelpers.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoderSettings.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VideoEncoderSettings.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoSampleHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VideoSampleHelpers.swift
SwiftCompile normal arm64 Compiling\ Helpers.swift,\ ThreadSafeArray.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ThreadSafeArray.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Helpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Helpers.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ThreadSafeArray.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ThreadSafeArray.swift
SwiftCompile normal arm64 Compiling\ VideoDecoder.swift,\ VideoEncoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoDecoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoder.swift (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoder.swift:84:5: warning: expression of type 'CFString' is unused [#NoUsage]
 82 |     }
 83 |
 84 |     kVTCompressionPropertyKey_VideoEncoderPixelBufferAttributes
    |     `- warning: expression of type 'CFString' is unused [#NoUsage]
 85 |     kVTCompressionPropertyKey_PixelTransferProperties
 86 |
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoDecoder.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VideoDecoder.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoder.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VideoEncoder.swift
SwiftCompile normal arm64 Compiling\ NALU.swift,\ SampleHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/NALU.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:24:5: warning: 'public' modifier is redundant for property declared in a public extension
22 |     }
23 |
24 |     public var notSync: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
25 |         return self.attachmentValue(for: kCMSampleAttachmentKey_NotSync)
26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:28:5: warning: 'public' modifier is redundant for property declared in a public extension
26 |     }
27 |
28 |     public var dependsOnOthers: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
29 |         return self.attachmentValue(for: kCMSampleAttachmentKey_DependsOnOthers)
30 |     }
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/NALU.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile NALU.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile SampleHelpers.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ Buffie (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:6:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 4 | #if os(macOS)
 5 |
 6 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 7 |     internal enum DisplayType {
 8 |         case active
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:12:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
10 |     }
11 |
12 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
13 |     public struct Display {
14 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:5:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 3 |
 4 | #if os(macOS)
 5 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 6 | public class ScreenRecorder {
 7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:62:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
60 | }
61 |
62 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
63 | extension ScreenRecorder: CaptureDevice { }
64 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:65:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
63 | extension ScreenRecorder: CaptureDevice { }
64 |
65 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
66 | extension ScreenRecorder: CameraControlDelegate {
67 |     public func cameraStarted() {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:5:22: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
  7 | }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:6:22: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 | }
  8 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:20:35: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:21:35: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 22 |
 23 |     final public var videoFormat: CMFormatDescription?
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:53:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:55:50: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
    |                                                  `- error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 56 |     {
 57 |         let duration = CMSampleBufferGetDuration(sampleBuffer)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:121:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
115 | }
116 |
117 | internal class AudioSampleReader: NSObject, AVCaptureAudioDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
118 |
119 |     internal var delegate: SampleReader?
120 |
121 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
122 |                                 didOutput sampleBuffer: CMSampleBuffer,
123 |                                 from connection: AVCaptureConnection)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:123:50: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
115 | }
116 |
117 | internal class AudioSampleReader: NSObject, AVCaptureAudioDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
118 |
119 |     internal var delegate: SampleReader?
120 |
121 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   `- note: add '@available' attribute to enclosing instance method
122 |                                 didOutput sampleBuffer: CMSampleBuffer,
123 |                                 from connection: AVCaptureConnection)
    |                                                  `- error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
124 |     {
125 |         self.delegate?.got(sampleBuffer, type: .audio)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:10:33: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     |           `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:97:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 38 | }
 39 |
 40 | public class Camera {
    |              `- note: add '@available' attribute to enclosing class
 41 |
 42 |     /// Which camera to use front/back
    :
 95 |     }
 96 |
 97 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
 98 |         self.cameraSession?.start(onComplete: onComplete)
 99 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:5:22: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
    |         |            `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:6:22: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    |         |            `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 |
  8 |     func start()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:9:30: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
  8 |     func start()
  9 |     func start(onComplete: ((AVCaptureSession) -> Void)?)
    |          |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 10 |
 11 |     func stop()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:13:35: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    :
 11 |     func stop()
 12 |
 13 |     func changeToCamera(position: AVCaptureDevice.Position) -> Bool
    |          |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 14 | }
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:20:32: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
 19 |
 20 |     @objc private var session: AVCaptureSession
    |                                `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:23:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
 23 |     private var videoInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:24:31: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 22 |
 23 |     private var videoInput: AVCaptureInput?
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
    |                               `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:27:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
 27 |     private var audioInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:28:31: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 26 |
 27 |     private var audioInput: AVCaptureInput?
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
    |                               `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:31:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              |                `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:32:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
    |                               `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 33 |                   controlDelegate: CameraControlDelegate,
 34 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:98:34: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 |                `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:115:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
113 |     }
114 |
115 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
116 |         self.session.startRunning()
117 |         onComplete?(self.session)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:124:42: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:5: warning: 'public' modifier is redundant for static method declared in a public extension
 4 | public extension AVCaptureDevice {
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:5: warning: 'public' modifier is redundant for static method declared in a public extension
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:14:5: warning: 'public' modifier is redundant for static method declared in a public extension
12 |     }
13 |
14 |     public static func videoDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
15 |         return self.dictionary(for: self.videoDevices())
16 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:18:5: warning: 'public' modifier is redundant for static method declared in a public extension
16 |     }
17 |
18 |     public static func audioDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
19 |         return self.dictionary(for: self.audioDevices())
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:22:50: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
20 |     }
21 |
22 |     private static func dictionary(for devices: [AVCaptureDevice]) -> [String: String] {
   |                         |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                         `- note: add '@available' attribute to enclosing static method
23 |         var result: [String: String] = [:]
24 |         for device in devices {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:70: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                    `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:106: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                                                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:4:18: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        |         `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:63: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |                        |                                      `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:5: warning: 'public' modifier is redundant for static method declared in a public extension
41 | public extension AVCaptureDeviceInput {
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:41:18: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        |         `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:24:5: warning: 'public' modifier is redundant for property declared in a public extension
22 |     }
23 |
24 |     public var notSync: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
25 |         return self.attachmentValue(for: kCMSampleAttachmentKey_NotSync)
26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:28:5: warning: 'public' modifier is redundant for property declared in a public extension
26 |     }
27 |
28 |     public var dependsOnOthers: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
29 |         return self.attachmentValue(for: kCMSampleAttachmentKey_DependsOnOthers)
30 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:32:5: warning: 'public' modifier is redundant for property declared in a public extension
30 |     }
31 |
32 |     public var earlierPTS: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
33 |         return self.attachmentValue(for: kCMSampleAttachmentKey_EarlierDisplayTimesAllowed)
34 |     }
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ByteHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/M4VWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MOVWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MP4Writer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileContainer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileQuality.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/FormatHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ThreadSafeArray.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/NALU.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoDecoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoderSettings.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoSampleHelpers.swift -target arm64-apple-tvos15.0 -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 4 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name Buffie -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie_const_extract_protocols.json -disable-clang-spi -target-sdk-version 27.0 -target-sdk-name appletvos27.0 -external-plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/local/lib/swift/host/plugins\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.abi.json
SwiftCompile normal arm64 (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ Display.swift,\ ScreenRecording.swift,\ M4VWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/M4VWriter.swift (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:6:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 4 | #if os(macOS)
 5 |
 6 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 7 |     internal enum DisplayType {
 8 |         case active
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:12:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
10 |     }
11 |
12 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
13 |     public struct Display {
14 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:5:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 3 |
 4 | #if os(macOS)
 5 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 6 | public class ScreenRecorder {
 7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:62:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
60 | }
61 |
62 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
63 | extension ScreenRecorder: CaptureDevice { }
64 |
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Display.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ScreenRecording.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/M4VWriter.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile M4VWriter.swift
SwiftCompile normal arm64 Compiling\ AACEncoder.swift,\ ByteHelpers.swift,\ AVReader.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ByteHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift:90:42: error: cannot find 'getAudioClassDescription' in scope
 88 |                 if status != noErr { print("Failed to setup converter:", status) }
 89 |                 #else
 90 |                     if var description = getAudioClassDescription() {
    |                                          `- error: cannot find 'getAudioClassDescription' in scope
 91 |                         let status = AudioConverterNewSpecific(&inASBD,
 92 |                                                                &outASBD,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:5:22: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
  7 | }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:6:22: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 | }
  8 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:20:35: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:21:35: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 22 |
 23 |     final public var videoFormat: CMFormatDescription?
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:53:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:55:50: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
    |                                                  `- error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 56 |     {
 57 |         let duration = CMSampleBufferGetDuration(sampleBuffer)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:121:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
115 | }
116 |
117 | internal class AudioSampleReader: NSObject, AVCaptureAudioDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
118 |
119 |     internal var delegate: SampleReader?
120 |
121 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
122 |                                 didOutput sampleBuffer: CMSampleBuffer,
123 |                                 from connection: AVCaptureConnection)
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AACEncoder.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ByteHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ByteHelpers.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AVReader.swift
SwiftCompile normal arm64 Compiling\ MOVWriter.swift,\ MP4Writer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MOVWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MP4Writer.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MOVWriter.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MOVWriter.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MP4Writer.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MP4Writer.swift
SwiftCompile normal arm64 Compiling\ MovieFileWriter.swift,\ FormatHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/FormatHelpers.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileWriter.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MovieFileWriter.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/FormatHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile FormatHelpers.swift
SwiftCompile normal arm64 Compiling\ MovieFileContainer.swift,\ MovieFileQuality.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileContainer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileQuality.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileContainer.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MovieFileContainer.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileQuality.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MovieFileQuality.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
2026-09-16 10:41:10.712 xcodebuild[662:4250] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftEmitModule normal arm64 Emitting\ module\ for\ Buffie (in target 'Buffie' from project 'Buffie')
	SwiftCompile normal arm64 (in target 'Buffie' from project 'Buffie')
	Building workspace Buffie with scheme Buffie
(3 failures)
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -resolvePackageDependencies
Resolve Package Graph
Resolved source packages:
  Buffie: /Users/admin/builder/spi-builder-workspace
resolved source packages: Buffie
2026-09-16 10:41:18.422 xcodebuild[688:4512] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Buffie",
  "name" : "Buffie",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Buffie",
      "targets" : [
        "Buffie"
      ],
      "type" : {
        "library" : [
          "dynamic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "BuffieTests",
      "module_type" : "SwiftTarget",
      "name" : "BuffieTests",
      "path" : "Tests/BuffieTests",
      "sources" : [
        "AACEncoderTests.swift",
        "AVMuxerTests.swift",
        "AudioEncoderTests.swift",
        "CameraTests.swift",
        "DeviceEnumerationTests.swift",
        "DisplayTests.swift",
        "MP4WriterTests.swift",
        "Mocks/NALUData.swift",
        "Mocks/SimpleMocks.swift",
        "PathHelpers.swift",
        "PlaylistWriterTests.swift",
        "ScreenRecorderTests.swift",
        "SegmenterTests.swift",
        "VideoDecoderTests.swift",
        "VideoEncoderTests.swift"
      ],
      "target_dependencies" : [
        "Buffie"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Buffie",
      "module_type" : "SwiftTarget",
      "name" : "Buffie",
      "path" : "Sources/Buffie",
      "product_memberships" : [
        "Buffie"
      ],
      "sources" : [
        "Audio/AACEncoder.swift",
        "ByteHelpers.swift",
        "Capture/AVReader.swift",
        "Capture/Camera/Camera.swift",
        "Capture/Camera/CaptureSession.swift",
        "Capture/Camera/DeviceHelpers.swift",
        "Capture/Displays/Display.swift",
        "Capture/Displays/ScreenRecording.swift",
        "File Writers/M4VWriter.swift",
        "File Writers/MOVWriter.swift",
        "File Writers/MP4Writer.swift",
        "File Writers/MovieFileContainer.swift",
        "File Writers/MovieFileQuality.swift",
        "File Writers/MovieFileWriter.swift",
        "FormatHelpers.swift",
        "Helpers.swift",
        "ThreadSafeArray.swift",
        "Video/NALU.swift",
        "Video/SampleHelpers.swift",
        "Video/VideoDecoder.swift",
        "Video/VideoEncoder.swift",
        "Video/VideoEncoderSettings.swift",
        "Video/VideoSampleHelpers.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
{
  "workspace" : {
    "name" : "Buffie",
    "schemes" : [
      "Buffie"
    ]
  }
}
2026-09-16 10:41:19.653 xcodebuild[696:4577] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme Buffie -destination generic/platform=tvOS
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath /Users/admin/builder/spi-builder-workspace/.derivedData build -scheme Buffie -destination generic/platform=tvOS
Resolve Package Graph
Resolved source packages:
  Buffie: /Users/admin/builder/spi-builder-workspace
ComputePackagePrebuildTargetDependencyGraph
Prepare packages
CreateBuildRequest
SendProjectDescription
CreateBuildOperation
ComputeTargetDependencyGraph
note: Building targets in dependency order
note: Target dependency graph (2 targets)
    Target 'Buffie-product' in project 'Buffie'
        ➜ Explicit dependency on target 'Buffie' in project 'Buffie'
    Target 'Buffie' in project 'Buffie' (no dependencies)
GatherProvisioningInputs
CreateBuildDescription
ClangStatCache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -o /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache
SwiftDriver Buffie normal arm64 com.apple.xcode.tools.swift.compiler (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name Buffie -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -target arm64-apple-tvos15.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 4 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-OutputFileMap.json -save-temps -no-color-diagnostics -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftmodule -serialize-diagnostics -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftCompile normal arm64 Compiling\ AACEncoder.swift,\ ByteHelpers.swift,\ AVReader.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ByteHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AACEncoder.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ByteHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ByteHelpers.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile AVReader.swift
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift:90:42: error: cannot find 'getAudioClassDescription' in scope
 88 |                 if status != noErr { print("Failed to setup converter:", status) }
 89 |                 #else
 90 |                     if var description = getAudioClassDescription() {
    |                                          `- error: cannot find 'getAudioClassDescription' in scope
 91 |                         let status = AudioConverterNewSpecific(&inASBD,
 92 |                                                                &outASBD,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:5:22: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
  7 | }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:6:22: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 | }
  8 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:20:35: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:21:35: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 22 |
 23 |     final public var videoFormat: CMFormatDescription?
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:53:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:55:50: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
    |                                                  `- error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 56 |     {
 57 |         let duration = CMSampleBufferGetDuration(sampleBuffer)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:121:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
115 | }
116 |
117 | internal class AudioSampleReader: NSObject, AVCaptureAudioDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
118 |
119 |     internal var delegate: SampleReader?
120 |
121 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
122 |                                 didOutput sampleBuffer: CMSampleBuffer,
123 |                                 from connection: AVCaptureConnection)
SwiftCompile normal arm64 Compiling\ Camera.swift,\ CaptureSession.swift,\ DeviceHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:10:33: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     |           `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:97:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 38 | }
 39 |
 40 | public class Camera {
    |              `- note: add '@available' attribute to enclosing class
 41 |
 42 |     /// Which camera to use front/back
    :
 95 |     }
 96 |
 97 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
 98 |         self.cameraSession?.start(onComplete: onComplete)
 99 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:12:29: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
    |                             |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                             `- note: add 'if #available' version check
 13 |         case .back: return AVCaptureDevice.Position.back
 14 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:13:28: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
 13 |         case .back: return AVCaptureDevice.Position.back
    |                            |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                            `- note: add 'if #available' version check
 14 |         }
 15 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:5:22: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
    |         |            `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:6:22: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    |         |            `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 |
  8 |     func start()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:9:30: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
  8 |     func start()
  9 |     func start(onComplete: ((AVCaptureSession) -> Void)?)
    |          |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 10 |
 11 |     func stop()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:13:35: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    :
 11 |     func stop()
 12 |
 13 |     func changeToCamera(position: AVCaptureDevice.Position) -> Bool
    |          |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 14 | }
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:20:32: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
 19 |
 20 |     @objc private var session: AVCaptureSession
    |                                `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:23:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
 23 |     private var videoInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:24:31: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 22 |
 23 |     private var videoInput: AVCaptureInput?
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
    |                               `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:27:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
 27 |     private var audioInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:28:31: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 26 |
 27 |     private var audioInput: AVCaptureInput?
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
    |                               `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:31:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              |                `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:32:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
    |                               `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 33 |                   controlDelegate: CameraControlDelegate,
 34 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:98:34: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 |                `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:115:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
113 |     }
114 |
115 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
116 |         self.session.startRunning()
117 |         onComplete?(self.session)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:124:42: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:37:38: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
    :
 35 |     {
 36 |         self.controlDelegate       = controlDelegate
 37 |         self.session               = AVCaptureSession()
    |                                      |- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                                      `- note: add 'if #available' version check
 38 |
 39 |         if let vInput = videoInput {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:41:35: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
    :
 39 |         if let vInput = videoInput {
 40 |             self.videoInput     = vInput
 41 |             self.videoOutput    = AVCaptureVideoDataOutput()
    |                                   |- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
    |                                   `- note: add 'if #available' version check
 42 |             self.videoOutput?.videoSettings = [kCVPixelBufferPixelFormatTypeKey as String: kCVPixelFormatType_420YpCbCr8PlanarFullRange]
 43 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:53:32: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
    :
 51 |         if let aInput = audioInput {
 52 |             self.audioInput  = aInput
 53 |             self.audioOutput = AVCaptureAudioDataOutput()
    |                                |- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
    |                                `- note: add 'if #available' version check
 54 |
 55 |             #if os(macOS)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:78:25: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
 76 |                      cameraReader: AVReaderProtocol) throws
 77 |     {
 78 |         var videoInput: AVCaptureInput? = nil
    |                         |- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |                         `- note: add 'if #available' version check
 79 |         var audioInput: AVCaptureInput? = nil
 80 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:79:25: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
    :
 77 |     {
 78 |         var videoInput: AVCaptureInput? = nil
 79 |         var audioInput: AVCaptureInput? = nil
    |                         |- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |                         `- note: add 'if #available' version check
 80 |
 81 |         // Attempt to configure the video device
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:82:26: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
    :
 80 |
 81 |         // Attempt to configure the video device
 82 |         videoInput = try AVCaptureDeviceInput.input(for: videoDeviceID)
    |                          |- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    |                          `- note: add 'if #available' version check
 83 |
 84 |         // Attempt to configure the video device
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:85:26: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 71 |     }
 72 |
 73 |     convenience init(videoDeviceID: String?,
    |                 `- note: add '@available' attribute to enclosing initializer
 74 |                      audioDeviceID: String?,
 75 |                      controlDelegate: CameraControlDelegate,
    :
 83 |
 84 |         // Attempt to configure the video device
 85 |         audioInput = try AVCaptureDeviceInput.input(for: audioDeviceID)
    |                          |- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    |                          `- note: add 'if #available' version check
 86 |
 87 |         // Ensure we have at least one input
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:102:31: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
101 |     {
102 |         let videoDevice = try AVCaptureDevice.firstDevice(for: .video, in: position)
    |                               |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                               `- note: add 'if #available' version check
103 |         let audioDevice = try AVCaptureDevice.firstDevice(for: .audio, in: position)
104 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:103:31: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
101 |     {
102 |         let videoDevice = try AVCaptureDevice.firstDevice(for: .video, in: position)
103 |         let audioDevice = try AVCaptureDevice.firstDevice(for: .audio, in: position)
    |                               |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                               `- note: add 'if #available' version check
104 |
105 |         try self.init(videoDeviceID: videoDevice.uniqueID,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:131:49: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
    :
129 |                     if port.mediaType == .video {
130 |
131 |                         let videoDevice   = try AVCaptureDevice.firstDevice(for: .video, in: position)
    |                                                 |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                                                 `- note: add 'if #available' version check
132 |                         let newVideoInput = try AVCaptureDeviceInput(device: videoDevice)
133 |                         self.session.beginConfiguration()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:132:49: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
    :
130 |
131 |                         let videoDevice   = try AVCaptureDevice.firstDevice(for: .video, in: position)
132 |                         let newVideoInput = try AVCaptureDeviceInput(device: videoDevice)
    |                                                 |- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
    |                                                 `- note: add 'if #available' version check
133 |                         self.session.beginConfiguration()
134 |                         self.session.removeInput(input)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:5: warning: 'public' modifier is redundant for static method declared in a public extension
 4 | public extension AVCaptureDevice {
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:5: warning: 'public' modifier is redundant for static method declared in a public extension
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Camera.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile CaptureSession.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile DeviceHelpers.swift
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:14:5: warning: 'public' modifier is redundant for static method declared in a public extension
12 |     }
13 |
14 |     public static func videoDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
15 |         return self.dictionary(for: self.videoDevices())
16 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:18:5: warning: 'public' modifier is redundant for static method declared in a public extension
16 |     }
17 |
18 |     public static func audioDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
19 |         return self.dictionary(for: self.audioDevices())
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:22:50: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
20 |     }
21 |
22 |     private static func dictionary(for devices: [AVCaptureDevice]) -> [String: String] {
   |                         |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                         `- note: add '@available' attribute to enclosing static method
23 |         var result: [String: String] = [:]
24 |         for device in devices {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:70: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                    `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:106: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                                                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:4:18: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        |         `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:63: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |                        |                                      `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:5: warning: 'public' modifier is redundant for static method declared in a public extension
41 | public extension AVCaptureDeviceInput {
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:41:18: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        |         `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:7:16: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |                        `- note: add '@available' attribute to enclosing static method
 7 |         return AVCaptureDevice.devices(for: .video)
   |                |- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                `- note: add 'if #available' version check
 8 |     }
 9 |
SwiftCompile normal arm64 Compiling\ MovieFileContainer.swift,\ MovieFileQuality.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileContainer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileQuality.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileContainer.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MovieFileContainer.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileQuality.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MovieFileQuality.swift
SwiftCompile normal arm64 Compiling\ MOVWriter.swift,\ MP4Writer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MOVWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MP4Writer.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MOVWriter.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MOVWriter.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MP4Writer.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MP4Writer.swift
SwiftCompile normal arm64 Compiling\ Display.swift,\ ScreenRecording.swift,\ M4VWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/M4VWriter.swift (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:6:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 4 | #if os(macOS)
 5 |
 6 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 7 |     internal enum DisplayType {
 8 |         case active
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:12:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
10 |     }
11 |
12 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
13 |     public struct Display {
14 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:5:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 3 |
 4 | #if os(macOS)
 5 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 6 | public class ScreenRecorder {
 7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:62:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
60 | }
61 |
62 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
63 | extension ScreenRecorder: CaptureDevice { }
64 |
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Display.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ScreenRecording.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/M4VWriter.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile M4VWriter.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ Buffie (in target 'Buffie' from project 'Buffie')
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:6:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 4 | #if os(macOS)
 5 |
 6 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 7 |     internal enum DisplayType {
 8 |         case active
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift:12:15: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
10 |     }
11 |
12 |     @available (macOS 10.11, *)
   |               `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
13 |     public struct Display {
14 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:5:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 3 |
 4 | #if os(macOS)
 5 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 6 | public class ScreenRecorder {
 7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:62:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
60 | }
61 |
62 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
63 | extension ScreenRecorder: CaptureDevice { }
64 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift:65:11: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
63 | extension ScreenRecorder: CaptureDevice { }
64 |
65 | @available (macOS 10.11, *)
   |           `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
66 | extension ScreenRecorder: CameraControlDelegate {
67 |     public func cameraStarted() {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:5:22: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
  7 | }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:6:22: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | public protocol AVReaderProtocol {
    |                 `- note: add '@available' attribute to enclosing protocol
  5 |     var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate { get }
  6 |     var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate { get }
    |         |            `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 | }
  8 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:20:35: error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureVideoDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:21:35: error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 16 | }
 17 |
 18 | open class AVReader: AVReaderProtocol, SampleReader {
    |            `- note: add '@available' attribute to enclosing class
 19 |
 20 |     final public var videoReader: AVCaptureVideoDataOutputSampleBufferDelegate
 21 |     final public var audioReader: AVCaptureAudioDataOutputSampleBufferDelegate
    |                                   `- error: 'AVCaptureAudioDataOutputSampleBufferDelegate' is only available in tvOS 17.0 or newer
 22 |
 23 |     final public var videoFormat: CMFormatDescription?
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:53:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:55:50: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 44 | }
 45 |
 46 | internal class VideoSampleReader: NSObject, AVCaptureVideoDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
 47 |
 48 |     internal var delegate: SampleReader?
    :
 51 |     var previousTimeStamp: CFAbsoluteTime?
 52 |
 53 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   `- note: add '@available' attribute to enclosing instance method
 54 |                                 didOutput sampleBuffer: CMSampleBuffer,
 55 |                                 from connection: AVCaptureConnection)
    |                                                  `- error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
 56 |     {
 57 |         let duration = CMSampleBufferGetDuration(sampleBuffer)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:121:43: error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
115 | }
116 |
117 | internal class AudioSampleReader: NSObject, AVCaptureAudioDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
118 |
119 |     internal var delegate: SampleReader?
120 |
121 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   |                       `- error: 'AVCaptureOutput' is only available in tvOS 17.0 or newer
    |                   `- note: add '@available' attribute to enclosing instance method
122 |                                 didOutput sampleBuffer: CMSampleBuffer,
123 |                                 from connection: AVCaptureConnection)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift:123:50: error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
115 | }
116 |
117 | internal class AudioSampleReader: NSObject, AVCaptureAudioDataOutputSampleBufferDelegate {
    |                `- note: add '@available' attribute to enclosing class
118 |
119 |     internal var delegate: SampleReader?
120 |
121 |     internal func captureOutput(_ output: AVCaptureOutput,
    |                   `- note: add '@available' attribute to enclosing instance method
122 |                                 didOutput sampleBuffer: CMSampleBuffer,
123 |                                 from connection: AVCaptureConnection)
    |                                                  `- error: 'AVCaptureConnection' is only available in tvOS 17.0 or newer
124 |     {
125 |         self.delegate?.got(sampleBuffer, type: .audio)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:10:33: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  4 |
  5 | /// Enum representing the position of the camera
  6 | public enum CameraPosition {
    |             `- note: add '@available' attribute to enclosing enum
  7 |     case front
  8 |     case back
  9 |
 10 |     fileprivate var osPosition: AVCaptureDevice.Position {
    |                     |           `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                     `- note: add '@available' attribute to enclosing property
 11 |         switch self {
 12 |         case .front: return AVCaptureDevice.Position.front
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift:97:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 38 | }
 39 |
 40 | public class Camera {
    |              `- note: add '@available' attribute to enclosing class
 41 |
 42 |     /// Which camera to use front/back
    :
 95 |     }
 96 |
 97 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
 98 |         self.cameraSession?.start(onComplete: onComplete)
 99 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:5:22: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
    |         |            `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:6:22: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    |         |            `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
    |         `- note: add '@available' attribute to enclosing property
  7 |
  8 |     func start()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:9:30: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
  7 |
  8 |     func start()
  9 |     func start(onComplete: ((AVCaptureSession) -> Void)?)
    |          |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 10 |
 11 |     func stop()
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:13:35: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
  2 | import AVKit
  3 |
  4 | internal protocol CaptureSessionProtocol {
    |                   `- note: add '@available' attribute to enclosing protocol
  5 |     var videoOutput: AVCaptureVideoDataOutput? { get }
  6 |     var audioOutput: AVCaptureAudioDataOutput? { get }
    :
 11 |     func stop()
 12 |
 13 |     func changeToCamera(position: AVCaptureDevice.Position) -> Bool
    |          |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 14 | }
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:20:32: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
 19 |
 20 |     @objc private var session: AVCaptureSession
    |                                `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:23:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 21 |     var sessionObserver: NSKeyValueObservation?
 22 |
 23 |     private var videoInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:24:31: error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 22 |
 23 |     private var videoInput: AVCaptureInput?
 24 |     internal var videoOutput: AVCaptureVideoDataOutput?
    |                               `- error: 'AVCaptureVideoDataOutput' is only available in tvOS 17.0 or newer
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:27:29: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 25 |     private let videoQueue = DispatchQueue(label: "videoQ")
 26 |
 27 |     private var audioInput: AVCaptureInput?
    |                             `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:28:31: error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 26 |
 27 |     private var audioInput: AVCaptureInput?
 28 |     internal var audioOutput: AVCaptureAudioDataOutput?
    |                               `- error: 'AVCaptureAudioDataOutput' is only available in tvOS 17.0 or newer
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:31:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              |                `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
 33 |                   controlDelegate: CameraControlDelegate,
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:32:31: error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 29 |     private let audioQueue = DispatchQueue(label: "audioQ")
 30 |
 31 |     required init(videoInput: AVCaptureInput? = nil,
    |              `- note: add '@available' attribute to enclosing initializer
 32 |                   audioInput: AVCaptureInput? = nil,
    |                               `- error: 'AVCaptureInput' is only available in tvOS 17.0 or newer
 33 |                   controlDelegate: CameraControlDelegate,
 34 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:98:34: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
 96 |     }
 97 |
 98 |     convenience init(_ position: AVCaptureDevice.Position,
    |                 |                `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing initializer
 99 |                   controlDelegate: CameraControlDelegate,
100 |                   cameraReader: AVReaderProtocol) throws
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:115:37: error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
113 |     }
114 |
115 |     public func start(onComplete: ((AVCaptureSession) -> Void)? = nil) {
    |                 |                   `- error: 'AVCaptureSession' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
116 |         self.session.startRunning()
117 |         onComplete?(self.session)
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift:124:42: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 14 | }
 15 |
 16 | internal class CaptureSession: CaptureSessionProtocol {
    |                `- note: add '@available' attribute to enclosing class
 17 |
 18 |     private var controlDelegate: CameraControlDelegate
    :
122 |     }
123 |
124 |     public func changeToCamera(position: AVCaptureDevice.Position) -> Bool {
    |                 |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
    |                 `- note: add '@available' attribute to enclosing instance method
125 |         do {
126 |
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:6:5: warning: 'public' modifier is redundant for static method declared in a public extension
 4 | public extension AVCaptureDevice {
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
 7 |         return AVCaptureDevice.devices(for: .video)
 8 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:43: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |                        |                  `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:10:5: warning: 'public' modifier is redundant for static method declared in a public extension
 8 |     }
 9 |
10 |     public static func audioDevices() -> [AVCaptureDevice] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
11 |         return AVCaptureDevice.devices(for: .audio)
12 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:14:5: warning: 'public' modifier is redundant for static method declared in a public extension
12 |     }
13 |
14 |     public static func videoDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
15 |         return self.dictionary(for: self.videoDevices())
16 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:18:5: warning: 'public' modifier is redundant for static method declared in a public extension
16 |     }
17 |
18 |     public static func audioDevicesDictionary() -> [String: String] {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
19 |         return self.dictionary(for: self.audioDevices())
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:22:50: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
20 |     }
21 |
22 |     private static func dictionary(for devices: [AVCaptureDevice]) -> [String: String] {
   |                         |                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                         `- note: add '@available' attribute to enclosing static method
23 |         var result: [String: String] = [:]
24 |         for device in devices {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:70: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                    `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:30:106: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
   :
28 |     }
29 |
30 |     static func firstDevice(for mediaType: AVMediaType, in position: AVCaptureDevice.Position) throws -> AVCaptureDevice {
   |                 |                                                                                        `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |                 `- note: add '@available' attribute to enclosing static method
31 |         let devices = AVCaptureDevice.devices(for: mediaType).filter { $0.position != position }
32 |         if let device = devices.first {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:4:18: error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
 2 | import AVFoundation
 3 |
 4 | public extension AVCaptureDevice {
   |        |         `- error: 'AVCaptureDevice' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
 5 |
 6 |     public static func videoDevices() -> [AVCaptureDevice] {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:63: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |                        |                                      `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |                        `- note: add '@available' attribute to enclosing static method
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:43:5: warning: 'public' modifier is redundant for static method declared in a public extension
41 | public extension AVCaptureDeviceInput {
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
   |     `- warning: 'public' modifier is redundant for static method declared in a public extension
44 |         if let devID = deviceID {
45 |             if let device = AVCaptureDevice(uniqueID: devID) {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift:41:18: error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
39 | }
40 |
41 | public extension AVCaptureDeviceInput {
   |        |         `- error: 'AVCaptureDeviceInput' is only available in tvOS 17.0 or newer
   |        `- note: add '@available' attribute to enclosing extension
42 |
43 |     public static func input(for deviceID: String?) throws -> AVCaptureDeviceInput? {
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:24:5: warning: 'public' modifier is redundant for property declared in a public extension
22 |     }
23 |
24 |     public var notSync: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
25 |         return self.attachmentValue(for: kCMSampleAttachmentKey_NotSync)
26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:28:5: warning: 'public' modifier is redundant for property declared in a public extension
26 |     }
27 |
28 |     public var dependsOnOthers: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
29 |         return self.attachmentValue(for: kCMSampleAttachmentKey_DependsOnOthers)
30 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:32:5: warning: 'public' modifier is redundant for property declared in a public extension
30 |     }
31 |
32 |     public var earlierPTS: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
33 |         return self.attachmentValue(for: kCMSampleAttachmentKey_EarlierDisplayTimesAllowed)
34 |     }
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Audio/AACEncoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ByteHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/AVReader.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/Camera.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/CaptureSession.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Camera/DeviceHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/Display.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Capture/Displays/ScreenRecording.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/M4VWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MOVWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MP4Writer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileContainer.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileQuality.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/FormatHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ThreadSafeArray.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/NALU.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoDecoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoder.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoderSettings.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoSampleHelpers.swift -target arm64-apple-tvos15.0 -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 4 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name Buffie -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie_const_extract_protocols.json -disable-clang-spi -target-sdk-version 27.0 -target-sdk-name appletvos27.0 -external-plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/local/lib/swift/host/plugins\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/Buffie.build/Debug-appletvos/Buffie-t.build/Objects-normal/arm64/Buffie.abi.json
SwiftCompile normal arm64 (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ NALU.swift,\ SampleHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/NALU.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/NALU.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile NALU.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile SampleHelpers.swift
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:24:5: warning: 'public' modifier is redundant for property declared in a public extension
22 |     }
23 |
24 |     public var notSync: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
25 |         return self.attachmentValue(for: kCMSampleAttachmentKey_NotSync)
26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/SampleHelpers.swift:28:5: warning: 'public' modifier is redundant for property declared in a public extension
26 |     }
27 |
28 |     public var dependsOnOthers: Bool {
   |     `- warning: 'public' modifier is redundant for property declared in a public extension
29 |         return self.attachmentValue(for: kCMSampleAttachmentKey_DependsOnOthers)
30 |     }
SwiftCompile normal arm64 Compiling\ MovieFileWriter.swift,\ FormatHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileWriter.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/FormatHelpers.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/File\ Writers/MovieFileWriter.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MovieFileWriter.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/FormatHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile FormatHelpers.swift
SwiftCompile normal arm64 Compiling\ Helpers.swift,\ ThreadSafeArray.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Helpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ThreadSafeArray.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Helpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Helpers.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/ThreadSafeArray.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile ThreadSafeArray.swift
SwiftCompile normal arm64 Compiling\ VideoEncoderSettings.swift,\ VideoSampleHelpers.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoderSettings.swift /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoSampleHelpers.swift (in target 'Buffie' from project 'Buffie')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoEncoderSettings.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VideoEncoderSettings.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Buffie/Video/VideoSampleHelpers.swift (in target 'Buffie' from project 'Buffie')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile VideoSampleHelpers.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
2026-09-16 10:41:20.609 xcodebuild[697:4601] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftEmitModule normal arm64 Emitting\ module\ for\ Buffie (in target 'Buffie' from project 'Buffie')
	SwiftCompile normal arm64 (in target 'Buffie' from project 'Buffie')
	Building workspace Buffie with scheme Buffie
(3 failures)
BUILD FAILURE 6.4 tvOS