Hi all,

       I have cross-compilled ffmpeg 3.1.3  + mpd for openwrt, the ARCH of target board is MIPS. the MCU of target board is MT7688, it doesn't have FPU,DSP.  (mpd is a music play daemon which uses ffmpeg library as backend for music play.) it works well for mp3. however,while I try to play aac/m4a codec audio network steams, the default aac decoder doesn't works well, it will docode audio to noises, you can't hear even a bit original music. and the CPU usage is nearly 100%. For comparison,  I compiled ffmpeg3.1.3+mpd for X86 PC, and play the same aac/mp4 network steams, it works well.

 

through trial and error, I found one non-perfect remedy: that is use aac decoder "aac_fixed" instead of "aac". using this decoder, although the decoded sound have background noise, however,  you can hear the original music from the background noise. and the CPU usage is low(20% only).

After browsing the code , I guess this phenomenon is because default aac codec use float point manipulation, which will consume much more cpu cycles in comparison with aac_fixed, which uses integer manipulation.

as I said, it is an non-perfect remedy, because the background noise is large, but how to eliminate the background noise for the board, I have no idea, is there any workaround for this?  any help will be appreciated, thanks in advance.

_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user

Reply via email to