2010-03-18 31 views
2

我想讓用戶從設備上的iPod庫中選擇一個視頻文件(以便我可以在我自己的應用程序中播放它)。那可能嗎? 我想使用MPMediaPickerController,但我不確定它是否能夠選擇視頻文件或只是音頻文件。MPMediaPickerController用於選擇視頻文件

任何幫助將不勝感激。

感謝,

回答

0

揀出器有一個名爲mediaTypes屬性,這是宣佈here枚舉,像這樣:

enum { 
    // audio media types 
    MPMediaTypeMusic  = 1 << 0, 
    MPMediaTypePodcast  = 1 << 1, 
    MPMediaTypeAudioBook = 1 << 2, 
    MPMediaTypeAnyAudio  = 0x00ff, 

    // generic media type 
    MPMediaTypeAny   = ~0 
}; 

正如你可以看到沒有證據表明beeing一些非音頻,除了MPMediaTypeAny但文檔說

MPMediaTypeAny如果設置,media ite m包含未指定類型的 音頻。

這意味着只有音頻,對不起。 :(

+0

嘛,不是問題的答案我所期待的,但它確實回答我的問題。謝謝! – 2010-03-18 12:20:54

+0

有關如何在iOS 5中執行此操作的信息,請參閱以下內容5 – ransomweaver 2012-02-17 04:15:42

0

做這樣的:

IImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; 
    imagePicker.delegate = self; 
    imagePicker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; 
    // UIImagePickerControllerSourceTypeSavedPhotosAlbum;// UIImagePickerControllerSourceTypePhotoLibrary 
    imagePicker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:imagePicker.sourceType]; 
    imagePicker.allowsEditing = NO; 
+4

這適用於用戶錄製的視頻,而不適用於ipod庫中的視頻 – ransomweaver 2012-02-17 04:15:21

1

看來這可能是iOS 5中與MPMediaPickerController,現在允許設置這些類型:

// video media types 
    MPMediaTypeMovie  = 1 << 8, 
    MPMediaTypeTVShow  = 1 << 9, 
    MPMediaTypeVideoPodcast = 1 << 10, 
    MPMediaTypeMusicVideo = 1 << 11, 
    MPMediaTypeVideoITunesU = 1 << 12, 
    MPMediaTypeAnyVideo  = 0xff00, 

哪些是OS 5只

一旦你有你的收藏品,你需要訪問的網址:

MPMediaItem * item = .... 
NSString *url = [item valueForProperty:@"MPMediaItemPropertyAssetURL"]; 

而且這個URL只能用於AV Foundation,所以使用AVPlayer而不是MPMoviePlayerController。

從文檔:

MPMediaItemPropertyAssetURL 
A URL pointing to the media item, from which an AVAsset object (or other 
URL-based AV Foundation object) can be created, with any options as desired. 
Value is an NSURL object. 
The URL has the custom scheme of ipod-library. For example, a URL might look 
like this: 
    ipod-library://item/item.m4a?id=12345 
Usage of the URL outside of the AV Foundation framework is not supported. 
Available in iOS 4.0 and later. 
相關問題