2016-06-14 4 views
0

다음 매개 변수 aac-profile = 5, mime = audio/mp4a-latm, 비트 전송률 = 12000, 채널 수 = 1로 AAC 인코더를 초기화하려고합니다. 샘플 속도 = 8000안드로이드 AAC-HE 인코더 초기화가 8khz 샘플링 속도로 실패합니다

그러나 코덱 초기화는 다음과 같은 오류와 함께 실패는 AAC를 내가 16kHz의 샘플링 속도, 작동으로 초기화하려고

06-14 19:17:58.009 6194-6450/? E/SoftAACEncoder2: Unable to initialize encoder for profile/sample-rate/bit-rate/channels
06-14 19:17:58.010 6194-6449/? E/ACodec: [OMX.google.aac.encoder] ERROR(0x80001001)
06-14 19:17:58.010 6194-6449/? E/ACodec: signalError(omxError 0x80001001, internalError -2147483648)
06-14 19:17:58.010 6194-6449/? E/MediaCodec: Codec reported err 0x80001001, actionCode 0, while in state 6

하지만,하지만, 설명서를 말한다 -HE 프로파일은 8khz 샘플링 속도를 지원합니다. 어떤 아이디어가 문제 일 수 있습니까?

+0

'bitrate = 16000' 또는'bitrate = 32000'을 시도해보십시오 ... 또한 비트 깊이 설정 (8 비트 또는 16 비트 오디오)은 무엇입니까? –

+0

안녕하세요, 답장을 보내 주셔서 감사합니다, 나는 16000과 시도, 결과는 동일합니다. 16 비트 오디오를 사용하고 있습니다. – user2067340

답변

0

HE-AAC는 8 kHz 샘플링 속도를 지원한다고 말하는 설명서는 무엇입니까? 이를 지원하는 표준 자체와이를 지원하는이 특정 인코더 간에는 차이점이 있습니다.

실제로 HE-AAC는 측 대역 복제 (SBR)라는 기술을 사용합니다. 이것은 주요 AAC 스트림 자체가 절반 샘플 속도이며, 그 다음에 더 높은 샘플 속도가 이것에 재구성된다는 것입니다. 이런 식으로 8 kHz 오디오를 인코딩한다면, 메인 AAC 스트림은 4 kHz가 될 것이고, 인코더가 실제로 이것을 지원하는지 확신 할 수 없습니다.

따라서 높은 샘플링 속도를 얻으면 HE-AAC가 가장 적합합니다. 8 kHz 오디오 스트림에 사용하려고 시도하는 것은별로 의미가 없습니다.

관련 문제