Pitch Clock: Ball Speed from Video — Privacy Policy
Last updated: 2026-10-08
This privacy policy applies to the mobile app "Pitch Clock: Ball Speed from Video" for Android:
- Google Play: package com.moon.ballspeed, developer "janey-moon"
The app is developed and operated by Heekyung Moon (Google Play developer name: janey-moon).
Contact: ansgml2100@gmail.com
OVERVIEW
Pitch Clock: Ball Speed from Video (shown in the app as "Pitch Clock") does not require an account, and we do not sell personal information. You use it to import or record a ball video, mark two frames, enter a distance, and save the estimated speed, optionally under a player name. Videos, players, and measurements are kept in the app's storage on your device. The app also uses Google services for analytics, crash reporting, remote configuration, and advertising.
CAMERA, VIDEOS, AND FILES
Camera: the app asks for camera permission only when you open "Record silent video" and tap "Allow camera". Recording uses the back camera without sound; the app does not use the microphone. A recording stops after 60 seconds or 100 MB, or when you tap Stop or leave the app. If you decline, the Record screen lets you ask again or, once Android no longer shows the request, open Android Settings; you can still import a video.
Importing: "Import video" opens the system file picker, which needs no storage or photo permission, and only the video you pick is read. The app copies the selected or recorded video into its documents storage without changing it, so the copy keeps any information the original file contains (for example, a date or location saved by your camera). The temporary copies made by the picker and the camera are removed from the app's cache after the copy is made. The app reads the frame timestamps, frame rate, and size of the video on your device and creates preview frames in a cache folder, which the app clears when it starts again or the video is removed. Video frames are processed on your device and are not uploaded.
When you change or leave a video without saving a measurement for it, the app normally removes its copy of that video.
Exports: "Export session CSV" writes a .csv file to an exports folder in the app's cache and opens the Android share sheet. The file contains, for each measurement shown, its ID, player name (or player ID if the player was deleted), session, recorded time, distance and tolerance, marked frames, elapsed time, speed and range, timing source, capture frame rate, and display unit. "Export backup" writes a .zip archive to the same folder and opens the share sheet. A backup contains your current players, measurements, and video records (frame timestamps and timing settings), the IDs of deleted records, the videos currently kept in the app (including the video open on the Measure tab, if any), and the raw contents of any saved file the app could not read. The app or person you choose in the share sheet receives the file. The app normally removes these exports from its cache when it starts again, and deleting a measurement also removes the CSV exports that include it.
Restoring: "Restore backup" opens the system file picker (no permission is needed). The app copies the chosen files into its cache to read them and removes those copies afterwards. Restoring merges the backup with your records: the newer version of each record is kept, and records deleted in either place stay deleted. If parts of a backup are missing, the parts already received are kept in app storage so you can add the missing parts later.
The app does not use location, contacts, or the microphone.
INFORMATION STORED ON YOUR DEVICE
The app saves each record as a file in its documents storage. Record types are players (name), measurements (player, video, session, time, distance, tolerance, start and end frame, elapsed time, estimated speed and range, timing source, capture frame rate, unit), and video records (the app's copy of the video, its size, frame timestamps, frame rates, dimensions, and whether you confirmed the recording mode). The app sets no limit on the number of players, measurements, or videos, and restoring a backup does not apply a count limit either.
To keep deletions in effect after a restore, the app keeps the IDs of deleted records. The app may also store basic operating information such as your speed unit, an app-use count, whether the review prompt was requested, and cached advertising settings and More Apps list.
The developer does not run a server that receives your records. The app reads developer-controlled advertising settings and, when you open More apps, a More Apps list from Google Cloud Firestore, but it does not write to Firestore or upload your videos, players, measurements, or backups. The More Apps list loads app icons from internet addresses in that list.
ANALYTICS, CRASH REPORTING, AND ADS
Google Firebase Analytics may process limited app-usage and technical information, such as app opens and sessions, a screen view of the start screen, an app-use count, review prompt events, whether a launch ad was shown, ad revenue events (ad format, value, currency, and precision), app version, device type, and app-instance identifiers. No event parameter carries values you enter; events do not include player names, speeds, distances, or video content.
Google Firebase Crashlytics may process crash reports and related technical information needed to diagnose app problems.
The app shows ads through Google AdMob: an app-open ad at launch or when you return to the app, an interstitial ad that may appear on the Log tab after you save a measurement, a banner ad on the Log tab, and a native ad in the exit dialog. Google may process advertising identifiers and device, app, consent, network, and ad-performance information to provide and measure ads, and may use an IP address to estimate an approximate location. Ads are played muted.
PERMISSIONS AND ADVERTISING CHOICES
Feature permissions: camera, only for the silent recordings you start. The app also uses vibration, a permission Android grants without asking, for short haptic feedback when you tap a button or an action such as a save or export completes. The app does not request microphone, location, contacts, photos and media, or storage access. You can change camera permission in Android Settings at any time.
At launch, before ads are requested, Google's consent message (UMP) is checked and shown where required (for example in the EEA and UK). If that step completes and Google reports that ads cannot be requested, the app does not request ads. Personalized ads are requested only when consent is not required or your choice allows personalized advertising; otherwise ads are non-personalized. If the consent step fails (the consent information cannot be updated or the consent message cannot be loaded or read), the app requests non-personalized ads only.
Where Google requires it, the app menu shows "Privacy choices", which reopens the consent message so you can change your advertising choice. If that message cannot be opened or your new choice cannot be read, the app stops requesting ads until it is closed and started again.
STORAGE AND YOUR CONTROL
On the Log tab, Delete removes that measurement from the log, from later CSV exports, and from later backups; you can undo it for a few seconds. After that, the app normally removes its copy of the measurement's video if no other measurement uses it, and the CSV exports that include the measurement; the video is kept if the app could not read some of its saved files at startup. On the Players tab, Delete removes the player from the Players tab, the log filters, and later backups; that player's measurements stay in the log without a player name, and you can undo it for a few seconds. The app does not erase the saved record file of a deleted player or measurement (or the timing record of a removed video): the file stays in the app's storage, marked as deleted by its ID, so that the deletion stays in effect after a restore, and it is removed only when the app's storage is cleared or the app is uninstalled.
The app has no button to delete exports or the backup parts kept from an incomplete restore; exports are normally removed when the app starts again, and kept restore parts are removed once the backup has been fully restored. Clearing the app's storage in Android Settings or uninstalling the app removes them along with the rest of the app's storage. Files you shared or saved elsewhere are controlled by the app or person that received them, or by the place where you saved them.
Local data, including your videos, may be included in a Google or device backup depending on your backup settings (the app allows Android system backup). Uninstalling normally removes the active copy but may not remove an older backup.
Because we do not receive your records, we cannot delete them for you; the controls above remove them from the app. For questions about data processed by Google, or to ask us for help with a privacy request, contact us at the address below.
We use these services under their applicable terms, and we ensure that third-party service providers with whom we share user data provide the same or equal protection of that data as stated in this policy. Data processed by Google is retained according to its service settings and policies:
- Google Privacy Policy: https://policies.google.com/privacy
- Firebase privacy information: https://firebase.google.com/support/privacy
- Google advertising technologies: https://policies.google.com/technologies/ads
SECURITY
Your videos and records are kept in the app's private storage, which the operating system protects from other apps; they are not separately encrypted by the app, so protect your device with a screen lock. Exported CSV files and backup archives are not encrypted, so anyone who receives one can read its contents, including the videos in a backup. Apart from the limited analytics events described above, the app does not upload your saved data. Communication between the app and Google services uses encrypted connections (HTTPS/TLS). No method of storage or transmission is completely secure, but we limit what the app handles to what is described in this policy.
IMPORTANT NOTICE
Pitch Clock shows an estimated average speed between the two frames you mark, based on the video's frame timing and the distance you enter. The shown range does not cover incorrect endpoints, motion blur, curved paths, or altered video timing, and results from normal-speed video of fast balls are coarse. Do not use the results for officiating, safety decisions, or medical or training advice. Film from a safe position, and ask before you record or name other people.
CHILDREN
The app is intended for adults and is not directed to children; we do not knowingly collect personal information from children. If you record or name a minor (for example, a youth player), please make sure you have permission from a parent or guardian.
CHANGES
We may update this policy if the app or its services change. The date above shows the latest revision.
CONTACT
Heekyung Moon (Google Play developer: janey-moon)
Email: ansgml2100@gmail.com