This is a guide for using MP4Box (GPAC) to alter the audio language of the tracks in a MP4/M4V file from “undetermined” to match the actual spoken language of said track. This can also be used to change the displayed language of subtitle tracks, title info etc. in the file.
Guide is based on using OS X Mavericks, and GPAC (MP4Box) installed using MacPorts.
1. From the Terminal navigate to the folder where the .m4v file you want to edit is stored
2. Use the following command to determine the available tracks in the file: mp4box -info name.of.my.file.m4v
This will list the details of each track available in the file. In the example below, there’s two audio tracks (TrackID 2 and TrackID 3), where the Type is “soun” (sound) and Language is “undetermined”.
Track # 2 Info – TrackID 2 – TimeScale 48000 – Duration 01:32:15.381
Media Info: Language “Undetermined” – Type “soun:mp4a” – 259471 samples
MPEG-4 Config: Audio Stream – ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC – 2 Channel(s) – SampleRate 48000
Synchronized on stream 1
Alternate Group ID 1Track # 3 Info – TrackID 3 – TimeScale 48000 – Duration 01:32:15.360
Track is disabled
Media Info: Language “Undetermined” – Type “soun:ac-3” – 172980 samples
AC3 stream – Sample Rate 48000 – 2 channel(s) – bitrate 192000
Alternate Group ID 1
3. To change the language use the following command: mp4box – lang 2=Eng name.of.my.file.m4v
This will alter the language of track 2 to “English”. You can either use the short form “Eng” or the full “English” when setting the language.
This we re-write the file, save it with the same name. Only the meta data of the language is changed. No re-compression or changes is done to the audio or video content of the file.
Repeat, this step for all the tracks you want to alter.
4. Use the “mp4box -info name.of.my.file.m4v” to determine that all is correct.
Track # 2 Info – TrackID 2 – TimeScale 48000 – Duration 01:32:15.381
Media Info: Language “English” – Type “soun:mp4a” – 259471 samples
MPEG-4 Config: Audio Stream – ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC – 2 Channel(s) – SampleRate 48000
Synchronized on stream 1
Alternate Group ID 1Track # 3 Info – TrackID 3 – TimeScale 48000 – Duration 01:32:15.360
Track is disabled
Media Info: Language “English” – Type “soun:ac-3” – 172980 samples
AC3 stream – Sample Rate 48000 – 2 channel(s) – bitrate 192000
Alternate Group ID 1
Once the above is completed, the audio language will be displayed correctly when played in various players, and if you have made settings in your player for preferring certain languages over others, the player will now choose the correct audio language automatically.
One thought on “How to alter the Audio Language of tracks in MP4 files (m4v)”