Privacy Policy
Overview
MediaHelm is an Android-first multimedia suite. The app includes Browser, Files, TV, Queue, and Settings. It is play-first: you can play media in the app without linking a receiver. Casting is optional and available when you choose a compatible device on your local network.
This Privacy Policy explains what MediaHelm does not collect, what remains on your device, how
the app uses the network, and which Android permissions it requests. It applies to the MediaHelm software
identified as com.mediahelm.app.
Local-first & serverless
MediaHelm is designed as a local-first tool. You do not need a MediaHelm cloud account. There is no MediaHelm-operated backend that collects or stores your personal data, browsing history, or media libraries.
Preferences, bookmarks, history, and libraries persist on the device (using on-device preferences storage). MediaHelm does not operate a SQLite or cloud database for your personal data.
Device discovery (mDNS/SSDP), the Browser media sniffer (on-device inspection of media requests from pages you open), Shields/blocklists, and the media cache run on your device and on your local area network (LAN). Casting uses that local network. For remote HLS, Chromecast receives a phone MediaProxy URL on the LAN (the playlist is rewritten so variants and segments stay on that proxy). MediaHelm does not send that media traffic to a MediaHelm cloud. See MediaProxy & headers for how the phone serves media on the LAN.
Network use is not the same as our collection. The app does make user-initiated network requests: websites you open in the Browser, HLS, M3U, or CDN URLs you choose (including TV channels you add), and LAN communication with receivers such as Chromecast, DLNA, or Roku. Those requests go to the destinations you select, or to devices on your network. They are not a mechanism for MediaHelm to collect your data on MediaHelm servers. We do not operate those websites, CDNs, or receivers.
What we do not collect
MediaHelm does not:
- Collect or send your personal data, browsing history, or media libraries to MediaHelm external servers.
- Sell personal data.
- Require an account to use the app.
- Operate a MediaHelm cloud service that stores your history, bookmarks, files, or playback queue.
If you later install a different build, add-on, or unofficial fork, that software may behave differently. This policy describes the MediaHelm app identified above.
What stays on your device
Data the app remembers for its own features is stored locally on your device. You can typically clear it by using in-app controls (where provided) or by clearing the app’s storage in Android settings.
Examples of on-device data include:
- Browser history (title, URL, and timestamp; approximately 300 URLs, with consecutive-URL deduplication).
- Bookmarks and related library entries you save.
- Mute-tab / mute-site preferences (these mute local WebView audio on the phone, not Cast volume).
- Settings, device nicknames, and queue-related preferences.
- Media cache used for Files: SAF and SMB follow a cache-then-cast model. A persistable SAF tree URI is used to read files you choose; content is served to the receiver over local HTTP. The receiver plays that local HTTP URL, not the Android content URI.
Uninstalling the app, or clearing its storage, removes this local data from that device. MediaHelm does not keep a copy on MediaHelm servers.
Permissions
MediaHelm requests Android permissions needed for browsing, local playback, discovery, and optional casting. In plain language:
- Network / Internet. Used to load websites you open, fetch playlists and media from URLs you choose, and talk to devices on your LAN.
- Local network discovery. Used to find Cast, DLNA, Roku, and similar devices on your network (for example via mDNS/SSDP multicast). This is not a request for device location.
-
Storage / Storage Access Framework (SAF). Files
uses user-chosen folder trees and the system picker. MediaHelm does not use
MANAGE_EXTERNAL_STORAGEas its default permission path. You grant access only to the trees you select. - Notifications and foreground work. Used when casting or keeping playback-related work running (for example an ongoing playback notification while a session is active). Notification permission on current Android versions is requested when that foreground work starts, not as a condition of opening the app.
Permission prompts and exact labels depend on your Android version. Denying a permission may disable the related feature (for example, discovery, Files access, or background playback notices) without requiring a MediaHelm account.
Third parties & LAN
When you open a website, load an HLS/M3U/CDN URL, or add a playlist, that third party receives whatever your device sends in the ordinary course of HTTP(S) (such as IP address, user-agent, cookies the site sets, and referrers). Those services have their own privacy policies. MediaHelm does not operate them and does not control how they use data.
When you cast, your phone and the receiver exchange media and control traffic on the LAN (and, for remote HLS, via the phone MediaProxy described above). Guest Wi‑Fi, client isolation, VPNs, firewalls, and receiver firmware can affect whether discovery and playback work. Destination devices (Chromecast, Google TV / Android TV with Cast, DLNA, Roku, experimental AirPlay, and similar) are made by others; their software may log or process streams according to their own terms.
Optional tips. If the app offers a tip jar, it is voluntary. If you leave MediaHelm to an external tip site, that site’s privacy policy applies. MediaHelm does not require a tip to use the app.
MediaProxy & headers
When you cast (and for some local Files flows), your phone can act as a short-lived HTTP media server on your LAN (MediaProxy and/or a local media server). The casting receiver fetches playlists and segments from your phone over the local network. That hop is often cleartext HTTP on the LAN (receivers commonly expect HTTP for media), even when the original source was HTTPS.
On a shared or untrusted Wi‑Fi network, other devices on the same LAN may be able to observe or request that local HTTP traffic while a cast session is active. Prefer a trusted private network when casting sensitive streams. MediaHelm does not tunnel that LAN media hop through a MediaHelm cloud.
To play authenticated or site-restricted media, MediaHelm may forward an
allowlisted set of HTTP headers needed for upstream
fetches and playback. In the current app, that allowlist includes
User-Agent,
Referer /
Referrer,
Cookie /
Cookie2,
Origin, and
Authorization when present on sniffed or
supplied requests. Those values stay on-device for the session and may be sent to the origin CDN and/or
used when the receiver pulls media via the phone proxy — they are not uploaded to MediaHelm servers.
Diagnostic logs avoid printing Cookie or Authorization values.
The Browser sniffer inspects media-related network requests on your device (for example to surface HLS playlists) so you can play or cast what you choose. It is not a MediaHelm cloud crawler and does not replace the site’s own terms.
Contact
For privacy questions or requests about this policy, contact the publisher by email:
You may also open an issue on this public legal repository (secondary channel):
https://github.com/heribertolord96/mediahelm-legal/issues
Because MediaHelm does not store your personal data on MediaHelm servers, there is typically no operator-held account profile or cloud history to export or delete. Local data is under your control on the device.