MediaMetadataRetriever를 이용해 원하는 프레임 Bitmap 추출하려고 하는데 에러만 나옵니다.


동영상에서 이미지를 추출하기 위해 적당한 클레스를 찾아보다가

MediaMetadataRetriever라는 클레스가 있다는것을 알게되어 테스트를 해보니

에러만 나고 원하는 결과는 나오지 않습니다.


원인이 무엇인지 알수있을까요?

동영상파일은 MediaPlayer 클래스를 이용해 재생해본결과 문제없이 잘동작하는것은 확인했습니다.


안드로이드 버전은 2.3.3 이고 테스트한 단말은 겔노트입니다.


*테스트용이라 다른처리는 하지 않았습니다.

 public void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        try
        {
	        MediaMetadataRetriever mt = new MediaMetadataRetriever();
        	int Duration = 0;
		AssetFileDescriptor afd = getResources().openRawResourceFd(R.raw.v0);
		mt.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
		String Title = mt.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE);
		String strDuration = mt.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
		if(strDuration != null)	Duration = Integer.parseInt(strDuration);
		Log.d(TAG, "<<-------- Duration : " + Duration + ", strDuration : " + strDuration + ", Title : " + Title);
		Log.d(TAG, "<<-------- getFrameAtTime : " + mt.getFrameAtTime(0));
        	afd.close();	
		 mt.release();
        }
        catch(Exception e)
        {
        }
    }


*해당 부분의 로고기록은 이렇습니다. 

04-10 15:04:18.839: V/MediaPlayerService(187): Create new media retriever from pid 9379

04-10 15:04:18.839: D/MediaPlayerService(187): getPlayerType. Ln=986

04-10 15:04:18.839: D/MediaPlayerService(187): using default player. STAGEFRIGHT_PLAYER. Ln=966

04-10 15:04:18.839: E/SavsMetadataRetriever(187): void android::SavsMetadataRetriever::parseMetaData()  sthmb_open() fail err=-5

04-10 15:04:18.839: D/MetetestActivity(9379): <<-------- Duration : 0, strDuration : null, Title : null

04-10 15:04:18.839: E/SavsMetadataRetriever(187): android::VideoFrame* android::SavsMetadataRetriever::getThumbnail()  sthmb_open() fail

04-10 15:04:18.839: E/MetadataRetrieverClient(187): failed to capture a video frame

04-10 15:04:18.839: E/MediaMetadataRetrieverJNI(9379): getFrameAtTime: videoFrame is a NULL pointer

04-10 15:04:18.839: D/MetetestActivity(9379): <<-------- getFrameAtTime : null


아참 공지는 보고 글올렸습니다.

검색해도 관련된 에러는 못찾겠습니다. ㅠㅠ