나는 비디오 디코더를 Stagefright
(Android의 멀티미디어 프레임 워크)에 통합하는 작업이 있습니다. 내가 검색하고 Stagefright
에 대한 새 플러그인을 만드는 방법에 대해 다음과 발견 :스테이지 플 라이트 플러그인을 만드는 방법
새로운 형식에 대한 지원을 추가하려면 다음을 수행해야합니다
컨테이너가 아닌 경우, 새로운 추출기 클래스를 개발 아직 지원되지 않습니다.
StageFright
코어가 데이터를 읽는 데 필요한 인터페이스를 구현하는 새로운 Decoder 클래스를 개발하십시오.파일의 MIME 유형을
OMXCodec.cpp
파일의kDecoderInfo
배열에있는 새 디코더로 읽을 수 있습니다.
static const CodecInfo kDecoderInfo[] = {
{MEDIA_MIMETYPE_AUDIO_AAC, "OMX.TI.AAC.decode"},
{MEDIA_MIMETYPE_AUDIO_AAC, "AACDecoder"},
};
위의 데이터는 내가 인터넷에서 찾을 수있는 모든 것입니다. 지금은 파일을 입력으로 받아서 안드로이드의 기본 API를 사용하여 화면에 렌더링하는 간단한 응용 프로그램이 있습니다. 아무도 더 진행하는 법을 말해 줄 수 있습니까? 그리고이 모든 것이 OMXCodec.cpp
과 다른 것들이 어디서 왔는지 그리고 내 프로젝트의 어느 디렉토리에 있어야합니까? 같은 문제에 대한 해결책을 제공해주십시오. 미리 감사드립니다.
고마워요.이 정보로 계속 진행할 수 있습니다. 가능하다면 안드로이드 소스에 대한 기본 사항을 알 수있는 특정 링크를 제공해주십시오. 위의 주어진 링크에서 http://androidxref.com/ 내 프로젝트에서 안드로이드 소스를 사용하여 시작하는 방법에 대한 기초를 찾을 수 없습니다. 모든 응용 프로그램에서 안드로이드 소스를 사용하는 방법에 대한 정보원을 제공 할 수 있다면 정말 좋을 것입니다. 또한 작은 쿼리 : 여기에 안드로이드 소스 코드를 수정하거나 기존 소스 코드에 대한 독립 실행 형 플러그인을 만드는 중입니까? – Zax
@Zax Java 수준의 소개를 찾고 있다면 http://developer.android.com/training/index.html에서 시작할 수 있습니다. 그러나 통합 노트를보고 있다면 stackoverflow 아카이브에서 더 많은 내용을 읽을 수 있습니다. Ice-Cream Sandwich에 코덱을 통합하려면 Android 소스를 수정해야합니다. 'JellyBean'으로의 통합을 위해서는 플랫폼 특정 파일을 업데이트해야합니다. 소스 코드는 없습니다. – Ganesh
마지막으로 저는 안드로이드 소스 코드의 일부를 다시 빌드하고 libstagefright.so를 생성해야한다는 것을 이해했습니다. Android.mk를 내 장치의/system/libs에있는 기존 장치로 바꿉니다. 이제 inorder를 * .so 파일로 만들려면 전체 안드로이드 소스 코드를 다운로드해야합니까, 아니면 framework/base/media/libstagefright/contents를 다운로드해야합니까? – Zax