Blog

Better Recorder Pro

How Continuity Camera shows up as a Mac camera source

This note is about the capture model, not a marketing checklist. When Apple’s Continuity Camera requirements are met, the iPhone is exposed to Mac apps as a normal camera device. Better Recorder Pro does not invent a private Continuity protocol; it discovers devices the system already publishes.

Samples below sketch public AVFoundation shapes and the product’s stated behavior. They are not a dump of proprietary app source.

Device discovery

Apps enumerate video devices through AVFoundation. A Continuity Camera iPhone typically appears alongside the built-in FaceTime camera and any USB cameras:

import AVFoundation

func videoDevices() -> [AVCaptureDevice] {
    AVCaptureDevice.DiscoverySession(
        deviceTypes: [.builtInWideAngleCamera, .external],
        mediaType: .video,
        position: .unspecified
    ).devices
}

When the user picks a device, the recorder wires an AVCaptureDeviceInput into a session the same way it would for a USB camera. Continuity availability still depends on Apple’s account, Bluetooth/Wi‑Fi, and OS pairing rules — the app cannot force an iPhone into the list.

Why the microphone is a separate choice

Video and audio are different inputs. Continuity Camera can provide an image while the active microphone remains the Mac’s built-in mic, a USB interface, or — only if the system lists it — the iPhone’s microphone.

func audioDevices() -> [AVCaptureDevice] {
    AVCaptureDevice.DiscoverySession(
        deviceTypes: [.microphone, .external],
        mediaType: .audio,
        position: .unspecified
    ).devices
}

Better Recorder Pro never auto-switches audio to the iPhone when you select the Continuity camera. That matches the product copy: select the iPhone mic only if it appears; the app does not take it over automatically.

Screen vs camera vs iPhone UI

Screen capture on macOS uses ScreenCaptureKit (display or window). Continuity Camera is still a camera feed. Recording the iPhone’s interface is a different pipeline (USB / QuickTime movie recording of the device screen) and is not in this release.

ScreenCaptureKit  → Mac display / window frames
AVFoundation video → Continuity Camera (iPhone image) or Mac/USB camera
AVFoundation audio → chosen microphone (optional iPhone mic if listed)
        ↓
   compose PiP (if Screen + Camera)
        ↓
   MP4 (H.264 + AAC), ≤1080p30, local folder

Practical limits

  • Upscaling a Continuity feed to “4K” does not create a 4K sensor path; this release caps at 1080p30.
  • Switching frontmost apps can interrupt Continuity on some OS builds; that is a system behavior operators should test on their machines.
  • Preflight only checks the permissions required for the selected mode (Screen Recording, Camera, Microphone).

Related

Back to Blog