Issue description
This app stores recordings in the MP4 container, which is perfectly fine for audio. However, the extension is .mp4 and the current version of VLC and built-in video for Android, as well as various other apps that open, process or send media files, expect these files to contain a video track, and its absence makes them treat the file as invalid.
Therefore, I propose a very minor change: the file extension should be .m4a (MPEG-4 Audio). The internal structure of .m4a files is identical to normal MP4's, the only difference is that the extension makes applications expect an audio-only file. This has been supported for many, many years.
Proposed solution
The code contains 5 instances of mp4 in total. Most of them (🟢) can just be replaced with m4a. Listed in order of importance:
- /app/src/main/java/com/danielkim/soundrecorder/RecordingService.java : 115
- 🟢 File extension of newly created recording.
- /app/src/main/java/com/danielkim/soundrecorder/adapters/FileViewerAdapter.java : 256
- 🟢 Extension appended to text input from rename dialog
- /app/src/main/res/layout/dialog_rename_file.xml : 15
- 🟢 Rename dialog: text that appears right from textbox
- /app/src/main/java/com/danielkim/soundrecorder/adapters/FileViewerAdapter.java : 237
- ⚠️ MIME type of recorded audio when starting player intent, currently
audio/mp4. It could work if replaced with audio/x-m4a or audio/m4a; however, I think keeping it as-is is best for compatibility.
- /app/src/main/res/layout/fragment_media_playback.xml : 33
- 🟢 Placeholder text, replaced before being shown on screen. Replacing with
m4a recommended but not neccessary.
Issue description
This app stores recordings in the MP4 container, which is perfectly fine for audio. However, the extension is
.mp4and the current version of VLC and built-in video for Android, as well as various other apps that open, process or send media files, expect these files to contain a video track, and its absence makes them treat the file as invalid.Therefore, I propose a very minor change: the file extension should be
.m4a(MPEG-4 Audio). The internal structure of.m4afiles is identical to normal MP4's, the only difference is that the extension makes applications expect an audio-only file. This has been supported for many, many years.Proposed solution
The code contains 5 instances of
mp4in total. Most of them (🟢) can just be replaced withm4a. Listed in order of importance:audio/mp4. It could work if replaced withaudio/x-m4aoraudio/m4a; however, I think keeping it as-is is best for compatibility.m4arecommended but not neccessary.