[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