[FFmpeg-trac] #2809(undetermined:new): AAC output does not play on Nintendo devices
FFmpeg
trac at avcodec.org
Fri Jul 26 11:05:29 CEST 2013
#2809: AAC output does not play on Nintendo devices
-------------------------------------+-------------------------------------
Reporter: | Owner:
playingwithmusic | Status: new
Type: defect | Component:
Priority: normal | undetermined
Version: git-master | Resolution:
Keywords: aac | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Old description:
> Summary of the bug: When converting files of any input format to AAC
> audio (in .mp4, .m4a, or .3gp containers), the files will not play on
> Nintendo DSi/DSi XL/3DS/3DS XL. The files are detected, but when
> selected, they display "Could not play." It does not matter which AAC
> encoder is used. The fact that files encoded with libfaac in ffmpeg fail
> to play while the standalone faac works flawlessly suggests a problem in
> ffmpeg rather than the encoder.
>
> How to reproduce: Convert any file to AAC audio with frequency
> 41000-48000 Hz and bitrate 16-320 kbps, copy to SD card, and attempt to
> play on a Nintendo handheld. One of the commands that I tried is listed
> below, but any variation (such as with ffmpeg command and -c:a aac and
> -strict -2 parameters) should produce the same results.
>
> {{{
> for f in *.webm; do ffmpeg -i "$f" -acodec libfaac -b:a 128k -ar 44100
> -vn -af volume=1.50 "${f%.webm}.m4a"; done
> ffmpeg version 1.2.1
> built on Jul 11 2013 07:32:35 with gcc 4.8 (Debian 4.8.1-6)
> configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector
> --param=ssp-buffer-size=4 -Wformat -Werror=format-security ' --extra-
> ldflags='-Wl,-z,relro' --cc='ccache ccache cc' --enable-shared --enable-
> libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-
> pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-
> x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb
> --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-
> nonfree --disable-stripping --enable-libvpx --enable-libschroedinger
> --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg
> --enable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-
> aacenc --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-
> libaacplus --libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-
> libbluray --enable-libcdio --enable-gnutls --enable-frei0r --enable-
> openssl --enable-libass --enable-libopus --enable-fontconfig --enable-
> libpulse --disable-mips32r2 --disable-mipsdspr libavutil
> }}}
> I've attached an output file of this command. The corresponding input may
> be found at [https://www.youtube.com/watch?v=ALuCtudUHhs]
New description:
Summary of the bug: When converting files of any input format to AAC audio
(in .mp4, .m4a, or ~~aac~~ .3gp containers), the files will not play on
Nintendo DSi/DSi XL/3DS/3DS XL. The files are detected, but when selected,
they display "Could not play." It does not matter which AAC encoder is
used. The fact that files encoded with libfaac in ffmpeg fail to play
while the standalone faac works flawlessly suggests a problem in ffmpeg
rather than the encoder.
How to reproduce: Convert any file to AAC audio with frequency 41000-48000
Hz and bitrate 16-320 kbps, copy to SD card, and attempt to play on a
Nintendo handheld. One of the commands that I tried is listed below, but
any variation (such as with ffmpeg command and -c:a aac and -strict -2
parameters) should produce the same results.
{{{
for f in *.webm; do ffmpeg -i "$f" -acodec libfaac -b:a 128k -ar 44100 -vn
-af volume=1.50 "${f%.webm}.m4a"; done
ffmpeg version 1.2.1
built on Jul 11 2013 07:32:35 with gcc 4.8 (Debian 4.8.1-6)
configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector
--param=ssp-buffer-size=4 -Wformat -Werror=format-security ' --extra-
ldflags='-Wl,-z,relro' --cc='ccache ccache cc' --enable-shared --enable-
libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-
pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-
x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-
nonfree --disable-stripping --enable-libvpx --enable-libschroedinger
--disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg
--enable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-
aacenc --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-libaacplus
--libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-libbluray
--enable-libcdio --enable-gnutls --enable-frei0r --enable-openssl
--enable-libass --enable-libopus --enable-fontconfig --enable-libpulse
--disable-mips32r2 --disable-mipsdspr libavutil
}}}
I've attached an output file of this command. The corresponding input may
be found at [https://www.youtube.com/watch?v=ALuCtudUHhs]
--
Comment (by cehoyos):
Please test the following command lines:
{{{
$ ffmpeg -i faac.m4a -acodec copy out.mp4
$ ffmpeg -i faac.m4a -acodec copy out.3gp
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2809#comment:14>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list