Home / LiveBand Sunday Stream / Privacy Policy
› Legal · Privacy

Privacy policy

LiveBand Sunday Stream collects no personal data. This page documents exactly what the app does with the data on your device and what it doesn't do — verified by codebase audit.

Effective April 14, 2026
Last updated June 2, 2026
App version 2.0.0 (Build 2)

Overview

LiveBand Sunday Stream (“the App”) is developed by GraniteVector Systems, LLC (“we”, “us”, “our”). This policy describes how the App handles your data.

Summary

We do not collect any personal data. The App does not use analytics, advertising, or tracking services. All app data is stored locally on your device unless you choose to enable iCloud sync.

Data We Collect

None. The App does not require an account, login, or registration. We do not collect names, email addresses, phone numbers, location data, device identifiers, or any other personal information.

Data Stored on Your Device

The App stores the following data locally:

  • Songs, lyrics, chord charts, and setlists you create or import
  • Learning progress and practice statistics
  • App preferences and settings
  • Stream configuration (RTMP URLs, SRT settings) if you use streaming features
  • Stream keys and passphrases, stored securely in your device’s Keychain
  • Crash diagnostics from Apple’s MetricKit framework, stored locally with file-level encryption and never transmitted to us. Reports older than 7 days are automatically deleted

This data stays on your device and is not sent to us or any third party.

iCloud Sync (Optional)

If you enable iCloud sync in the App’s settings, your songs and setlists are synced to your personal iCloud account via Apple’s CloudKit service. This data is managed by Apple under Apple’s Privacy Policy. We do not have access to your iCloud data. You can disable iCloud sync at any time.

Streaming

When you use the App’s livestreaming features (available on macOS), audio and video content is transmitted directly to the streaming destination you configure (for example, YouTube, Facebook, or a custom RTMP/SRT server). This content goes directly from your device to your chosen destination. We do not receive, store, route, or have access to your streamed content. You are responsible for your streaming destination’s privacy practices.

Local Network

The App may use your local network to discover and control audio mixers (via OSC), PTZ cameras (via VISCA-over-IP), MIDI devices, companion camera devices, NDI video sources, tally lights, and other LiveBand Sunday Stream devices for Band Sync. All local network communication stays on your network. No data from these connections is transmitted to us.

Band Sync

When you use Band Sync to synchronize setlist playback and song content with other band members, the App can communicate in two ways:

  • Local (Bluetooth / Wi-Fi): Uses Apple’s MultipeerConnectivity framework to communicate directly between nearby devices. All communication is encrypted and stays between the connected devices. Local sessions use pairing codes for secure connections.
  • Cloud (iCloud): When local connectivity is unavailable, Band Sync can optionally use your personal iCloud account (via CloudKit) to relay session state and song updates. This data is stored temporarily in your iCloud account and cleaned up when the session ends. We do not have access to your iCloud data.

No data from Band Sync sessions — local or cloud — is transmitted to us or any third party. Band Sync is optional and requires you to explicitly start a session.

Web Remote Control (macOS)

On macOS, the App includes an optional Web Remote feature that runs a local HTTP server on your device to provide a browser-based control dashboard. This server is accessible only on your local network and requires a per-session authentication token for all API requests. The server does not expose any personal data, and no data from the Web Remote is transmitted outside your local network. The Web Remote is disabled by default and must be explicitly enabled.

Web Content Import

When you use the web import feature to fetch song lyrics or chord charts from a URL you provide, the App makes a standard HTTP GET request to that URL. The App does not track which URLs you visit, and no browsing data is sent to us. On macOS, the studio’s WebSource feature can render a URL as a video source — this content is processed locally and never transmitted back to us.

Face-Gesture Scrolling (iOS)

On iOS, the App can use the TrueDepth camera (via ARKit) to detect head tilt for hands-free lyrics scrolling during performances. Facial geometry data is processed entirely on your device in real-time. It is never stored, recorded, or transmitted. This feature is optional and requires your explicit permission.

Backup and Export

When you export a backup (.appbackup), setlist (.lbsetlist), or library (.lblibrary), the App creates a temporary ZIP archive on your device. This file is only shared when you explicitly choose a destination (e.g., Files, AirDrop, email). Temporary backup files older than 24 hours are automatically cleaned up. We never receive backup files.

Lyrics Translation

The App offers optional lyrics translation using Apple’s Translation framework. When you translate lyrics, Apple may process the text on your device (using downloaded language models) or through Apple’s translation servers, depending on the language pair and device capabilities. This processing is handled entirely by Apple under Apple’s Privacy Policy. We do not send lyrics to any non-Apple service. Translation is user-initiated and optional.

On-Device AI

On supported devices (iOS 26+ / macOS 26+ with compatible hardware), the App uses Apple’s FoundationModels framework for AI-assisted features such as chord parsing and lyric formatting. All AI processing runs entirely on your device. No data is sent to any AI service, cloud API, or external server. When AI features are unavailable, the App uses deterministic processing instead.

Third-Party Code

The App includes one third-party open-source library: HaishinKit (RTMP/SRT streaming). This library does not collect, transmit, or store any user data. No other third-party SDKs, analytics services, advertising frameworks, or tracking tools are included.

Permissions

The App may request the following device permissions. All are optional — the App works fully for Library, Setlists, Learn, and practice features without any permissions granted.

  • Camera — Live video production and multi-camera switching (macOS); face-gesture lyrics scrolling (iOS via TrueDepth/ARKit)
  • Microphone — Live audio mixing, monitoring, broadcast encoding, and real-time audio analysis (macOS)
  • Screen Recording — Capturing windows and displays as video sources for live production (macOS)
  • Local Network — Discovering and controlling audio mixers (OSC), PTZ cameras (VISCA), NDI sources, companion devices, tally lights, and MIDI devices on your network
  • Face ID / TrueDepth Camera — Hands-free face-gesture lyrics scrolling during performances (iOS only; data is never stored or transmitted)
  • Bluetooth / Peer-to-Peer Wi-Fi — Band Sync uses Bluetooth and peer-to-peer Wi-Fi to synchronize setlist playback and song content with other band members’ devices (optional; all communication is encrypted and stays between connected devices). Cloud mode uses your personal iCloud account as an alternative transport
  • Notifications — Receiving iCloud sync updates (requested only when you enable iCloud sync)
  • Accessibility — Global keyboard shortcuts for studio controls (macOS only; e.g., scene switching, fade to black)

Children’s Privacy

The App does not collect personal data from any user, including children under 13.

Changes to This Policy

We may update this policy. Changes will be posted here with a revised effective date.

Contact

If you have questions about this privacy policy, visit granitevectorsystems.com/contact and select “LiveBand Sunday Stream — app support” from the dropdown.


App Privacy Answer Matrix

Last audited: 2026-06-02  ·  App version: 2.0.0 (Build 2)  ·  Bundle ID: ThatalHome.LiveBandSundayStream

This document provides verified answers for the App Store Connect privacy questionnaire, based on a full codebase audit.

Overall Privacy Posture

QuestionAnswerEvidence
Does this app track users?NoNo IDFA, no ATTrackingManager, no AppTrackingTransparency imports found.
Does this app use third-party analytics?NoNo Firebase, Crashlytics, Amplitude, Mixpanel, Sentry, or any analytics SDK present.
Does this app collect data linked to user identity?NoNo user accounts, no login, no email collection, no remote user profiles.
Does this app use advertising SDKs?NoNo ad frameworks or advertising identifiers.
Does this app transmit data to developer servers?NoNo URLSession calls to any developer-controlled backend. All network activity is user-initiated (RTMP/SRT streaming to user-configured destinations, OSC to user’s mixer, local LAN web remote).
Does this app use iCloud?Yes (optional)CloudKit sync is user-controlled. Data stored in the user’s personal iCloud account, managed by Apple.

Privacy Nutrition Label — Category Answers

CategoryCollect?Verification
Contact InfoNoNo fields for name, email, phone, or address. No user account system.
Health & FitnessNoNo HealthKit, no health-related data types.
Financial InfoNoNo payment processing, no financial data. No in-app purchases in v2.0.0.
LocationNoNo CoreLocation, no CLLocationManager, no GPS or geofence usage.
Sensitive InfoNoNo biometric data collection. TrueDepth camera (ARKit) processes head tilt in real-time; never stored or transmitted.
ContactsNoNo Contacts framework, no address book access.
User ContentNoSongs, setlists, lyrics, charts, recordings stored locally. Optional iCloud sync stored in user’s iCloud (Apple-managed).
Browsing HistoryNoNo web browsing functionality. WebSource (macOS) renders user-configured URLs without tracking.
Search HistoryNoLibrary and Learn search are on-device only. Stored locally via UserDefaults.
IdentifiersNoNo device ID, no IDFA, no vendor identifier collection.
PurchasesNoNo in-app purchases or subscriptions in v2.0.0.
Usage DataNoStreamTelemetryManager tracks stream health locally for UI display only — never transmitted.
DiagnosticsNoCrashReporter uses Apple MetricKit. Payloads saved to local disk only — no remote transmission.
Other DataNoNo other data categories collected.

Network Activity Audit

ComponentPurposeData DestinationDeveloper Collection?
RTMPBroadcasterLivestream outputUser-configured RTMP/RTMPS serverNo
SRTBroadcasterLivestream outputUser-configured SRT endpointNo
StudioWebRemoteLAN remote controlLocal network only (HTTP server on device, token-authenticated)No
HostConnectionManagerMixer control (OSC)User’s X32/M32 mixer on local networkNo
DeviceScannerNetwork discoveryLocal network broadcast (Bonjour/mDNS)No
MIDINetworkControllerMIDI over networkLocal network MIDI devicesNo
CloudKit (iCloud sync)Optional data syncUser’s personal iCloud account (Apple-managed)No
AIImportEngineAI chord/lyric parsingOn-device only (FoundationModels)No
CloudPresetManagerMixer preset storageCloudKit (user’s iCloud)No
VideoMixingEngineVideo compositingLocal only (no network)No
CompanionCameraSender/ReceiveriOS companion cameraLocal network peer-to-peer (NWConnection)No
TallyLightServiceTally light broadcastLocal network UDP broadcastNo
PTZCameraManagerPTZ camera controlUser’s PTZ camera on local network (VISCA-over-IP)No
APNs (push notifications)CloudKit sync triggersApple Push Notification service (Apple-managed)No
MetricKit (CrashReporter)On-device crash diagnosticsLocal disk only — Apple delivers payloads to app, no developer serverNo
WirelessMicMonitorWireless mic statusLocal network monitoringNo
NDISenderManagerNDI video output (LAN)Local network only (raw BGRA frames via NDI protocol)No
BandSyncManagerBand Sync (setlist + content sync between devices)Local peer-to-peer (MultipeerConnectivity, Bluetooth/Wi-Fi) or user’s personal iCloud (CloudKit)No
CloudBandSyncTransportBand Sync cloud transportUser’s personal iCloud account (CloudKit public database, session records cleaned up on end)No
WorshipPlannerEngineAI setlist generationOn-device only (algorithmic + optional FoundationModels)No
TranslationService (Lyrics Translation)Optional lyrics translationOn-device (downloaded language models) or Apple’s translation servers, depending on language pair — Apple-managed under Apple’s Privacy Policy. No non-Apple service receives lyrics.No
WebImportServiceFetch song/chord HTML for importUser-provided URL (GET with browser User-Agent)No
WebSource (macOS studio)Render user-configured URL as video sourceLocal rendering only (WKWebView, no data sent back)No
FaceScrollManager (iOS)ARKit head-tilt for hands-free lyrics scrollOn-device only (real-time ARKit face geometry, never stored or transmitted)No
SecurityBookmarkManagerPersist sandbox file access across launchesLocal disk only (Application Support plist)No
BackupManagerExport/import .appbackup, .lbsetlist, .lblibraryLocal disk (temp directory ZIP, user-initiated file transfer only)No

No component transmits data to any developer-controlled server.

On-Device Data Storage Audit

All data is stored locally on the user’s device (or the user’s personal iCloud account if sync is enabled). No data reaches developer-controlled servers.

Storage LocationData StoredSensitive?Component
Keychain (com.livebandsundaystream.streamkey)RTMP stream key, SRT passphrase, iOS stream keyYES — encrypted by OS KeychainKeychainStreamKeyStore
UserDefaults / @AppStorage (~95+ keys)UI preferences, layout, studio settingsNO — no PII or auth tokensVarious (studio*, learn* prefixed)
~/Documents/Songs (JSON), Setlists (JSON), learning progressNO (user content)LibraryViewModel, LearningProgressStore
~/Documents/CrashReports/MetricKit diagnostic payloads (JSON), file-level encrypted, auto-deleted after 7 daysNO — system diagnostics onlyCrashReporter
~/Movies/ (macOS)Broadcast recordings (.mov, HEVC+AAC)NO (user content)ProgramRecorder, ISORecordManager
~/Application Support/LiveBandSundayStream/Security-scoped bookmarks, scene manager dataNOSecurityBookmarkManager, SceneManager
Temp directoryZIP archives during export (.appbackup), auto-cleaned after 24 hoursNO — cleared after user downloadsBackupManager
NSUbiquitousKeyValueStore (iCloud)Songs, setlists, learning progress (JSON)NO — user’s personal iCloudSDSong, LearningProgressStore

PrivacyInfo.xcprivacy Verification

KeyValueStatus
NSPrivacyTrackingfalseCorrect
NSPrivacyCollectedDataTypes[] (empty)Correct — no data collected
NSPrivacyAccessedAPITypesUserDefaults (CA92.1), Disk Space (E174.1), System Boot Time (35F9.1), File Timestamp (DDA9.1)Correct — all declared with valid reasons

Info.plist Permission Strings

KeyDescriptionRequired For
NSCameraUsageDescriptionCamera accessLivestream video capture (macOS)
NSMicrophoneUsageDescriptionMicrophone accessLivestream audio capture (macOS)
NSScreenCaptureUsageDescriptionScreen recordingWindow/display capture as studio sources (macOS)
NSLocalNetworkUsageDescriptionLocal networkMixer discovery (OSC), companion device connectivity
NSFaceIDUsageDescriptionTrueDepth cameraHands-free face-gesture lyrics scrolling (iOS, ARKit)
NSBonjourServicesBonjourNetwork device discovery

Encryption (ITSAppUsesNonExemptEncryption)

KeyValueRationale
ITSAppUsesNonExemptEncryptionfalseAll encryption is exempt: RTMPS uses OS-provided TLS (exempt), SRT uses libsrt AES (auth/data integrity, exempt under TSU exception), Keychain uses Apple Security framework (exempt), HaishinKit MD5 is for RTMP auth handshake only (exempt).

Third-Party SDK Audit

DependencyPurposePrivacy Impact
HaishinKit.swiftRTMP/RTMPS streamingNo analytics, no tracking. MD5 used for RTMP auth handshake only.

No other third-party SDKs, analytics frameworks, or ad networks are included in the project.

Note: A PrivacyInfo.xcprivacy has been added to the HaishinKit target declaring no tracking, no collected data types, and no required-reasons APIs (audit confirmed none are used). The HaishinKit Package.swift bundles this manifest as a resource.

› Questions?

Got privacy questions?

Reach out through our support form. Select "LiveBand Sunday Stream — app support" from the topic dropdown.

Contact us