Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am trying to create .m4a files to play in my car, which has a USB interface.
Files downloaded from this website work fine as is.

However for example if I remux them using

ffmpeg -i infile.m4a -c copy outfile.m4a

They will no longer play in my car.

ffmpeg version N-54499-g63d7684 Copyright (c) 2000-2013 the FFmpeg developers
  built on Jul  6 2013 10:35:18 with gcc 4.7.3 (GCC)
share|improve this question
Which brand/make/model is this device? Please show the complete ffmpeg console output. – LordNeckbeard Jul 7 '13 at 6:41
From my experience car radios tend to be very picky. Might be worth a shot asking the vendor what kinds of formats are supported, or enquiring in a product support forum. Does it work if you re-encode the audio? – slhck Jul 7 '13 at 7:04
up vote 4 down vote accepted

I ran the two files through mp4box and noticed a difference.

$ mp4box -info iTunes_test4_AAC-LC_v4_Stereo_VBR_128kbps_44100Hz.m4a
* Movie Info *
        Timescale 44100 - Duration 00:03:07.710
        Fragmented File no - 1 track(s)
        File suitable for progressive download (moov before mdat)
$ mp4box -info outfile.m4a
[iso file] Box "pgap" size 9 invalid (read 12)
* Movie Info *
        Timescale 1000 - Duration 00:03:07.711
        Fragmented File no - 1 track(s)

As you can see, the FFmpeg file apparently does not have the moov atom before mdat.
This is also known as faststart. I changed my command and it appears to have fixed the problem.

ffmpeg -i iTunes.m4a -c copy -movflags faststart outfile.m4a

Thanks to this blog post for the idea that lead to this answer.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .