마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

미디어코덱 AAC오디오 디코딩을 위한 csd정보에 뭘 넣어야 하는지 아시는분 계신가요?

0 추천

H264 비디오 데이터의 경우는 

rtsp 데이터에서 sps와 pps를 캡쳐떠서 

format.setByteBuffer("csd-0", ByteBuffer.wrap(sps_header));
format.setByteBuffer("csd-1", ByteBuffer.wrap(pps_header));
 
MediaFormat에 넣어줬더니 영상 재생은 되더군요.
 
 
그렇다면 오디오 데이터의 경우는 어떤 데이터를 설정해줘야 거기부터 오디오 데이터구나 하고 인식할수 있는 것인가요?
 
답변 부탁드려요. 감사합니다!
 
emerald (760 포인트) 님이 2015년 1월 15일 질문

1개의 답변

0 추천
아래 URL을 참조하세요

http://thdev.net/567
사악미소 (65,330 포인트) 님이 2015년 1월 15일 답변
이 분 블로그에 있는건 다 해봤죠..근데 실행해보면 SoftAAC2 태그에 AAC decoder returned error 16388, substituting silence 이런 경고가 발생하고 dequeueOutputBuffer 값이 -1이 나와서요..
AAC 데이터가 ADTS형식인지 확인 해 보세요
ADTS 형식이라면, mediaFormat.setInteger(MediaFormat.KEY_IS_ADTS, 1); 같이 설정 해 보세요..

ADTS 형식이 아닌 음원이면 굳이 설정을 안해도 될 듯은한데,
혹시 그래도 안된다면
http://stackoverflow.com/questions/18862715/how-to-generate-the-aac-adts-elementary-stream-with-android-mediacodec 를 참조하셔서 데이터 앞부분에 ADTS 헤더를 삽입 해서 재생해보세요.
...