64-bit bug in faac?
myers at aedifice.net
Sun Jun 4 16:01:56 PDT 2006
I've been experimenting with transcoding MPEG-2 transport streams to MP4
files (mpeg-4 video, AAC audio), using ffmpeg and faac. But there
appears to be a 64-bit bug in faac. When I run the ffmpeg process from
an i386 machine, the generated file is clean, and a Mac Mini running
QuickTime can play the file without problems. But when I do the exact
same transcode from my amd64 server, the resulting audio is bad. I get
a constant stream of
FAAD: Failed to decode frame: Invalid number of channels
when I try to play the file using mplayer. After some delay, the video
portion will play (using any of my players: mplayer/i386, mplayer/amd64,
and QuickTime), but not the audio. Note that 'mp4info' (from the
mpeg4ip port) indicates that the audio track is there, and that it has
Anybody else seen this? Any workarounds?
This bug is only in faac; running faad (the decoder piece) on either
i386 or amd64 with a known-good MP4 file works fine. Though I note that
faad is at version 2.0 in the ports collection, while faac is still 1.24.
For reference, this is the command I run (identically on both i386 and
ffmpeg -i $mpgfile -f mp4 -vcodec mpeg4 -b $bitrate -hq -acodec aac
-ab 128 $mp4file
More information about the freebsd-multimedia