2011-08-23 2 views
0

iPod 라이브러리에서 에셋을 수집하는 데 MediaItem API를 사용하고 있습니다. 응용 프로그램이 잠시 실행 된 후에 실행중인 이상한 버그가 있습니다. 다음 코드를 실행하고 AVURLAsset에는 연결된 트랙이 없습니다.트랙이없는 자산을 반환하는 iPod 라이브러리

NSURL* url = [iPodSong valueForProperty:MPMediaItemPropertyAssetURL]; 
mAssetToLoad = [[AVURLAsset alloc] initWithURL:url options:nil]; 

bool protectedCon = mAssetToLoad.hasProtectedContent; 
bool exportable = true;//mAssetToLoad.exportable; //4.3 only 

if(!protectedCon && exportable) { 

    AVAssetTrack* songTrack = [mAssetToLoad.tracks objectAtIndex:0]; 
    //CRASH tracks is of size 0 

문제가 발생하는 자산 변경하는 것, 그리고 내가 응용 프로그램을 다시 시작하고 다시 같은 자산을로드하는 경우, 올바르게로드합니다.

이전에 본 사람이 있습니까? 내가 뭘 잘못하고 있을지 모르겠다.

답변

0

나는 CMSampleBufferRef가 공개되지 않는 문제가 있다고 생각합니다. 한 번에 너무 많은 항목이 iPod 라이브러리에서 열렸습니다. 동일한 동작이 다른 장치에서 발생 했으므로 RAM이 많은 장치에서 오랜 시간이 걸렸습니다.

관련 문제