- (void)showvideolist { [self buildassetslibrary]; } - (void)buildassetslibrary { assetslibrary = [[alassetslibrary alloc] init]; alassetslibrary *notificationsender = nil; videourlarray = [[nsmutablearray alloc] init]; nsstring *minimumsystemversion = @"4.1"; nsstring *systemversion = [[uidevice currentdevice] systemversion]; if ([systemversion compare:minimumsystemversion options:nsnumericsearch] != nsorderedascending) notificationsender = assetslibrary; [[nsnotificationcenter defaultcenter] addobserver:self selector:@selector(assetslibrarydidchange:) name:alassetslibrarychangednotification object:notificationsender]; [self updateassetslibrary]; } - (void)assetslibrarydidchange:(nsnotification*)changenotification { [self updateassetslibrary]; } - (void)updateassetslibrary { assetitems = [nsmutablearray arraywithcapacity:0]; alassetslibrary *assetlibrary = [[alassetslibrary alloc] init]; [assetlibrary enumerategroupswithtypes:alassetsgroupall usingblock:^(alassetsgroup *group, bool *stop) { if (group) { [group setassetsfilter:[alassetsfilter allvideos]]; [group enumerateassetsusingblock:^(alasset *asset, nsuinteger index, bool *stop) { if (asset) { dic = [[nsmutabledictionary alloc] init]; alassetrepresentation *defaultrepresentation = [asset defaultrepresentation]; nsstring *uti = [defaultrepresentation uti]; videourl = [[asset valueforproperty:alassetpropertyurls] valueforkey:uti]; mpvideoplayer = [[mpmovieplayercontroller alloc] initwithcontenturl:videourl]; nsstring *title = [nsstring stringwithformat:@"%@ %lu", nslocalizedstring(@"video", nil), [assetitems count]+1]; [self performselector:@selector(imagefromvideourl)]; [dic setvalue:title forkey:@"videotitle"];//kname [dic setvalue:videourl forkey:@"videourl"];//kurl assetbrowseritem *item = [[assetbrowseritem alloc] initwithurl:videourl title:title]; [assetitems addobject:item]; [videourlarray addobject:dic]; nslog(@"video has info:%@",videourlarray); } nslog(@"values of dictonary==>%@", dic); //nslog(@"assetitems:%@",assetitems); nslog(@"videos are:%@",videourlarray); } ]; } // group == nil signals done iterating. else { dispatch_async(dispatch_get_main_queue(), ^{ // [self updatebrowseritemsandsignaldelegate:assetitems]; // loadimgview.hidden = no; // [spinner stopanimating]; // [loadimgview removefromsuperview]; // selectvideobtn .userinteractionenabled = yes; }); } } failureblock:^(nserror *error) { nslog(@"error enumerating assetlibrary groups %@\n", error); }]; } - (uiimage *)imagefromvideourl { uiimage *image = nil; avasset *asset = [[avurlasset alloc] initwithurl:videourl options:nil];; avassetimagegenerator *imagegenerator = [[avassetimagegenerator alloc] initwithasset:asset]; imagegenerator.appliespreferredtracktransform = yes; // calc midpoint time of video float64 durationseconds = cmtimegetseconds([asset duration]); cmtime midpoint = cmtimemakewithseconds(durationseconds/2.0, 600); // image nserror *error = nil; cmtime actualtime; cgimageref halfwayimage = [imagegenerator copycgimageattime:midpoint actualtime:&actualtime error:&error]; if (halfwayimage != null) { // cgimage uiimage image = [[uiimage alloc] initwithcgimage:halfwayimage]; [dic setvalue:image forkey:@"imagethumbnail"];//kimage nslog(@"values of dictonary==>%@", dic); nslog(@"videos are:%@",videourlarray); cgimagerelease(halfwayimage); } return image; } -(void)mediapicker:(mpmediapickercontroller *)mediapicker didpickmediaitems:(mpmediaitemcollection *)mediaitemcollection { mpmediaitem *item = [[mediaitemcollection items] objectatindex:0]; nsurl *url = [item valueforproperty:mpmediaitempropertyasseturl]; [mediapicker dismissviewcontrolleranimated:yes completion:nil]; avplayeritem *playeritem=[avplayeritem playeritemwithurl:url]; avplayer *player=[[avplayer alloc] initwithplayeritem:playeritem]; avplayerlayer *playerlayer=[avplayerlayer playerlayerwithplayer:player]; playerlayer.frame=cgrectmake(0, 0, 10, 10); [player play]; [self.view.layer addsublayer:playerlayer]; }
so using code, asks permission photos. how can permission without popup window?
i trying list of videos iphone or ipad, unable so. please me.
thanks in advance
why not use alassetslibrary ? recommended way of getting photos/videos out of iphone\ipad.