SoundPull Privacy Policy
In force from 2026-10-02 · written for SoundPull 1.4
SoundPull is an iPhone app that pulls the sound out of videos, converts and joins audio files, and can turn recorded speech into text. This policy follows a file through the app step by step, then lists everything SoundPull keeps on your iPhone. SoundPull is developed and published by naruberio; in this policy, "we" and "us" mean naruberio.
In brief
- SoundPull has no account, no sign-in and no server of ours behind it.
- The videos, audio files, transcripts and subtitles you work with are processed on your iPhone and are never uploaded, whether to us or to anyone else.
- The app contains no analytics, advertising, crash-reporting or tracking code, and it needs no internet connection to do its work.
- Between launches, SoundPull remembers only three settings and the counts behind the rating prompt, all stored on the device. Copies made when you pick a file or when another app sends one to SoundPull can also remain on the device (see What stays on your iPhone).
What happens to a file you open in SoundPull
- You pick it. You can choose a video in the Photos picker, choose a video or an audio file (m4a, mp3, wav, aac, caf, aif, aiff or flac) in the Files app, or send one from another app's share sheet, Voice Memos included. iOS hands SoundPull only the items you select; the app does not look through the rest of your photo library or your folders.
- SoundPull makes a working copy. The item is copied into a temporary folder inside the app's own sandbox, so your original is never modified. The Photos and Files pickers and the share sheet may also leave a copy of their own inside the app's container.
- The copy is converted on the iPhone. With Apple's AVFoundation framework, SoundPull writes an M4A, MP3, WAV or M4R (ringtone) file, or, if you asked for one, a copy of the video with its soundtrack removed. When you merge, the items you lined up are joined in your order into a single file. MP3 files are encoded by the LAME library that is built into the app. None of these steps sends anything over the network.
- If you ask for a transcript, that happens on the iPhone too. Apple's Speech framework recognises the words with on-device recognition only (
requiresOnDeviceRecognition). When your iPhone has no on-device recognition for the language, SoundPull says so and stops; it never passes the audio to a server instead. You can export the text as a .txt file, or as an .srt subtitle file whose timings come from the same on-device recognition. Neither the audio nor the text is sent to Apple or to us. - You decide where the result goes. You can play it back and then send it through the iOS share sheet: Save to Files, AirDrop or another app. Once a file arrives where you sent it, what happens to it there is up to that destination, not SoundPull.
- The working files are cleared away. SoundPull deletes its copy of your original once the job no longer needs it: right after a conversion, and for a merge once the merge succeeds or, at the latest, when you leave the merge screen. A result is deleted when you start another job, discard it or leave the screen where it was made. Copies handed to the share sheet, transcript and subtitle files included, are kept until SoundPull next starts, because the receiving app may still be reading them. Each time SoundPull starts, it deletes any of its own working files that earlier sessions left behind. The copies that the pickers and the share sheet leave of their own (see step 2) are not part of that clean-up. Those left by the pickers are kept in the app's cache and temporary folders, which iOS may clear when storage runs low. When another app sends a file to SoundPull through the share sheet, iOS may copy it into the app's Inbox folder; iOS does not clear that folder on its own, so such a copy stays until you delete SoundPull. Deleting the app always removes both kinds from the iPhone.
What stays on your iPhone between launches
SoundPull keeps four small values in its own storage on the device (React Native AsyncStorage, inside the app's sandbox). None of them holds a file name, a recording, a transcript or anything that identifies you, and none of them is ever sent anywhere.
| Stored value | What it holds | Why it is kept |
|---|---|---|
soundpull.settings.hasSeenOnboarding | Whether you have finished the welcome screens | So the introduction appears only once |
soundpull.settings.outputFormat | The output format you chose last (M4A, MP3, WAV or M4R) | So the next job starts in the same format |
soundpull.settings.normalizeVolume | Whether "Match the volume" is switched on | So your choice carries over to the next job |
soundpull.reviewPrompt (new in 1.4) | Two whole numbers: how many extraction or merge jobs have succeeded, and how many of the rating-prompt milestones have been used up | To decide when to ask iOS for the rating prompt (see below) |
An iPhone that once ran an early version of SoundPull with a free tier may also still hold that version's usage count (soundpull.freeQuota.usedCount). Current versions neither read nor update it.
Deleting SoundPull from your iPhone deletes these values along with it. We have no way to read them.
Apart from these values, the copies that the pickers and the share sheet leave of their own when you pick a file or when another app sends one to SoundPull are not cleared by the app and can remain on the device between launches. Step 6 under What happens to a file you open in SoundPull explains where each kind is kept and when it goes.
The rating prompt, added in version 1.4
After your 3rd, 15th and 50th successful extraction or merge, SoundPull asks iOS to show Apple's standard prompt for rating the app, through the review request in Apple's StoreKit framework. iOS decides whether the prompt actually appears and limits how often any app may show it. SoundPull is not told whether the prompt appeared or what you did with it. If you rate or review SoundPull, Apple collects that under your Apple Account; a written review is published on the App Store under the nickname you choose, where anyone, us included, can read it; as the developer, we may also post a public reply there.
To stop these prompts for all apps, open the iOS Settings app, go to App Store and turn off In-App Ratings & Reviews. On iOS 18 and later, App Store is under Settings > Apps.
The rating prompt is the only thing SoundPull uses StoreKit for. The app has no purchase screens and makes no purchase requests of its own.
Permissions iOS may show
| Permission | When and why |
|---|---|
PhotosNSPhotoLibraryUsageDescription | Used only to read the video or videos you tap in the photo picker. SoundPull does not browse, index or upload your library. |
Speech RecognitionNSSpeechRecognitionUsageDescription | Requested the first time you start a transcription. Recognition is restricted to the device (requiresOnDeviceRecognition) and works on a file that is already in SoundPull, never on live microphone input. |
Opening a file from the Files app or from a share sheet needs no permission, because iOS passes over only the item you chose. SoundPull does not use the camera, the microphone, your location or your contacts, and it does not ask for network access. It never shows the App Tracking Transparency prompt, because it does not track anyone.
Paying for SoundPull
SoundPull is sold as a paid download on the App Store. That single purchase covers every feature; there are no in-app purchases, no subscriptions and no ads. Apple takes the payment and does not pass your name, email address, card details or other personal information on to us. How Apple treats your payment and account information is explained in Apple's Privacy Policy.
What the privacy manifest declares
SoundPull ships with an Apple privacy manifest. It states that the app does no tracking, contacts no tracking domains and collects no data types. It also lists four APIs for which Apple asks developers to give a reason, each used only for the purpose its reason code stands for:
FileTimestamp, reasonC617.1: reading the dates and sizes of files inside SoundPull's own container, for example to tell working files left by an earlier session apart from current ones.DiskSpace, reasonE174.1: checking that there is room to write the output file; if there is not, SoundPull stops and tells you.UserDefaults, reasonCA92.1: reading and writing values that only the app itself uses.SystemBootTime, reason35F9.1: measuring the time that passes between events inside the app, such as for timers.
SoundPull declares the first two itself; the other two are added on behalf of the frameworks the app is built with.
Children
SoundPull is meant for a general audience. It collects no personal information from anyone who uses it, so it does not knowingly collect any from children, whether the age limit that applies where you live is 13 or some other age.
Privacy laws and your choices
Laws such as the EU and UK GDPR, the California Consumer Privacy Act as amended by the CPRA, and Brazil's LGPD give you rights over personal data that a business holds about you. The app sends us no personal data about you, so for your use of SoundPull there is nothing on our side to show you, correct, hand over or erase, and we are neither a controller nor a processor of your personal data in connection with the app. Because the app sends nothing off your iPhone, it transfers no data to another country either. Email you send us is covered under Questions below.
What SoundPull keeps is in your hands: deleting the app removes the stored values described above and any copies left in the app's cache, temporary or Inbox folders, and files you saved stay wherever you put them until you delete them yourself.
When this policy changes
We may revise this policy, for instance when a new version of SoundPull changes what happens on the device. Every material revision gets a new date at the top of this page, and the current text is always published at naruberio.github.io/soundpull-legal/privacy-policy.html. If you keep using SoundPull after a revision takes effect, you accept the revised policy.
Questions
Send questions about this policy to konpei.work@gmail.com. SoundPull is published by naruberio.
When you email us, whether about this policy or for support, we receive only what you put in the message, such as your email address, your text and any attachment. We use it to reply to you and to look into and fix the problem you describe. For that, we may copy a description of the problem, without your name, email address or attachments, into the online issue tracker we use to organise our work. You can ask us at any time to delete that correspondence; we will then delete the emails and anything copied from them into the tracker.