프로젝트 소개

OpenDisplay는 iPhone, iPad 또는 남는 Mac을 macOS의 진정한 확장 세컨드 디스플레이로 사용할 수 있는 무료, 오픈소스, 계정 불필요, 동글 불필요 솔루션입니다. Apple Sidecar, Duet Display, Luna Display의 자체 호스팅 대안 역할을 합니다. 주요 기능으로는 진정한 디스플레이 확장(미러링 아님), macOS 내장 usbmuxd를 통한 최저 지연의 USB 유선 연결, Bonjour 검색을 통한 제로 구성 WiFi 모드가 있습니다. 가상 디스플레이는 Retina/HiDPI @2x 픽셀 매칭, 터치 입력(탭하여 클릭, 드래그, 두 손가락 스크롤), 세로 및 가로 회전, VideoToolbox를 사용한 저지연 하드웨어 H.264 인코딩 파이프라인을 지원합니다. 이 프로젝트는 CGVirtualDisplay(비공개 CoreGraphics API)를 사용하여 macOS가 실제 모니터로 취급하는 가상 디스플레이를 생성합니다. 스트리밍 파이프라인은 ScreenCaptureKit을 통해 가상 디스플레이를 캡처하고, 하드웨어 H.264(실시간 모드, B-프레임 없음)로 인코딩하며, 프레임 드롭 백프레셔 및 키프레임 복구와 함께 TCP를 통해 전송합니다. 수신 측에서는 AVSampleBufferDisplayLayer가 디코딩 및 렌더링을 처리합니다. 남는 Mac도 별도의 OpenDisplay Receiver 앱을 설치하면 디스플레이로 사용할 수 있습니다(macOS 12+ 필요). WiFi 연결은 즉시 작동하며, 유선 연결의 경우 Thunderbolt/USB4 케이블, 이더넷 케이블 또는 일반 USB-C 데이터 케이블을 사용할 수 있습니다. 와이어 프로토콜은 PROTOCOL.md에 공개적으로 명시되어 있어 서드파티 구현이 가능합니다. 커뮤니티 제작 클라이언트로는 Android(Android 8.0+), 구형 iOS 기기(iOS 12), Linux(KDE Plasma 및 Hyprland를 포함한 Wayland 데스크톱)용이 있습니다. 이들은 팬 제작 프로젝트이며 공식적으로 유지보수되지 않습니다. macOS 앱은 Developer ID 인증서로 서명되었으며 Apple의 공증을 받았습니다. iOS 앱은 iOS/iPadOS 15 이상이 필요하며 TestFlight를 통해 이용하거나 소스에서 빌드할 수 있습니다. 앱은 Sparkle을 통해 자체 업데이트됩니다. 이 프로젝트는 GPL-3.0 라이선스로 배포됩니다.