
I found a fix for corrupted* Voice Memos
This is very frustrating and hope that Apple can fix this up for everyone. I will send through my findings to Apple to get this fixed.
The fix
Install ffpmeg ([link to Audacity’s walkthrough for macOS])(https://support.audacityteam.org/basics/installing-ffmpeg#macos)
Find the file location. In Finder you can go to Go → Go to Folder… and paste in “~/Library/Group Containers/group.com.apple.VoiceMemos.shared/Recordings/"
Find the recording. It will be in year-month-day (YYYYMMDD e.g. 20260501 for May 1 2026) and unique ID format
Open Terminal.app (you can Spotlight search it, or in Finder go to Applications → Utilities → Terminal
Copy and paste:
ffmpeg -Iand ensure one single space is after itDrag and drop your file, and ensure one single space is after it
Copy and paste
-map 0:a:0 -c:a copy ~/Desktop/Audio.m4aIt will now end up looking something like this:
ffmpeg -i /Users/[Your User Name]/Library/Group\ Containers/group.com.apple.VoiceMemos.shared/Recordings/[The File].qta -map 0:a:0 -c:a copy ~/Desktop/Audio.m4aBefore clicking
returnon keyboard, understand what the command is that you’re running:ffmpeg -i [The File].qtaputs the.qtafile as the inputmap 0:a:0: finds the first audio stream from the first input filec:a copy: copies the audio with no encoding (no data loss and the same as “copy and pasting” a file)Audio.m4a: the output file made into.m4acontainer
Click
returnon your keyboard and it will save a file called “Audio.m4a” to your Desktop.
The issue
The data is not corrupt but just unplayable (as I was aware as the binary was still there). The issue is the qta file is a QuickTime container with a moov atom (the metadata that tells apps how to read the file) was sitting at the end of the file, rather than at the front. Apple’s apps expect it there and handle it fine, but the ftyp was set to qt which causes an issue with both Apple and third-party apps/players. Everything is still there in the file, the AAC stereo file, the Spatial Audio data, the duration, and even the title of the file. This command only copies the audio from the file it’s been provided with to an AAC LC stereo stream (i.e. no Spatial Audio, though could be done with tinking the command).
I have been unable to find an answer for iOS or iPadOS as it does not expose the raw file like it does such on macOS.
And to address the asterisk in the title: As explained, it is not a corrupt file, it is just not handled correctly and the system will think it is corrupt.