2012-04-04 131 views
1

我正嘗試將原始PCM轉換爲aac。因此,我正試圖通過ffmpeg來實現它。使用ffmpeg原生AAC將原始PCM編碼爲aac

我ffmepg配置

--enable-交叉編譯--arch =臂--cpu = ARMv6的--enable-ASM --target-OS = linux的--disable剝--enable氖--enable-version3 --disable-shared --enable-static --enable-gpl --enable-memalign-hack --cc = arm-linux-androideabi-gcc --ld = arm-linux-androideabi-ld - -extra-cflags =' - fPIC -DANDROID -D_ thumb _ -mthumb -Wfatal-errors -Wno-deprecated -marm -march = armv6'--disable-everything --enable-encoder = aac --enable-decoder = h264 --enable-hwaccels --disable -ffmpeg --disable -ffplay --disable -ffprobe --disable -ffserver --disable-network --enable-filter = buffer --enable-filter = buffersink --disable- demuxer = v4l --disable-demuxer = v4l2 --disable-indev = v4l --disable-indev = v4l2

avcodec_find_encoder(CODEC_ID_AAC) find's the AAC encoder succesfully. 

audio_context= avcodec_alloc_context() 
avcodec_open(audio_context, audio_encoder) failed to open aac 

有什麼想法嗎?

回答

0

我認爲答案將在logcat的ffmpeg部分。您應該在ffmpeg庫中打開調試級別日誌記錄,並捕獲日誌以找出codec_open語句失敗的位置。

在這裏提供日誌。

0

而不是使用ffmpeg內置aac編碼器嘗試使用libfaac。

首先爲android交叉編譯libfaac。

中的ffmpeg --extra-CFLAGS您編譯libfaac的包括目錄提供路徑。

--extra-LDFLAGS提供路徑編譯的libfaac的的lib目錄

與libfaac再次

編譯的ffmpeg FFmpeg的config.sh使用--enable-libfaac。

相關問題