Bir AVMutableComposition
dışa aktardıktan sonra, videoyu kamera rulosuna kaydetmek için PHPhotoLibrary
kullanıyorum. creationRequestForAssetFromVideoAtFileURL:
tamamlama işleyicisi, ben o zaman gibi Instagram kaydedilmiş videoyu açın: kezBeyaz video AVMutableComposition açıldığında Instagram'da
__block PHObjectPlaceholder *videoAssetPlaceholder;
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
PHAssetChangeRequest *req = [PHAssetChangeRequest creationRequestForAssetFromVideoAtFileURL:localVideoURL];
videoAssetPlaceholder = req.placeholderForCreatedAsset;
} completionHandler:^(BOOL success, NSError *error) {
if (success) {
completion(YES);
NSString *localID = videoAssetPlaceholder.localIdentifier;
NSRange rangeOfSlash = [localID rangeOfString:@"/"];
if (rangeOfSlash.location != NSNotFound) {
NSString *assetID = [localID substringToIndex:rangeOfSlash.location];
NSURL *instagramURL = [NSURL URLWithString:[NSString stringWithFormat:@"instagram://library?AssetPath=%@", assetID]];
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
[[UIApplication sharedApplication] openURL:instagramURL];
}
}
}
}];
Yaklaşık 50% Instagram açılır ve beklendiği gibi video oynar. Bununla birlikte, diğer videoların% 50'si, hem video hem de önizleme beyazdır ve aldığım tek şey ses. Bu genellikle başka bir video seçerek ve ardından videoma geri dönerek giderilir. Video kamera rulosunda mükemmel bir şekilde oynatılır, sadece sorunlara neden olan Instagram Instagram. Bu, Instagram'ın videolarımı yanlış yolla ihraç ettiğine veya gönderebileceğime mi ilişkin bir sorun mu? Sadece Apple DTS haber
AVAssetExportSession *exporter = [[AVAssetExportSession alloc] initWithAsset:mixComposition
presetName:AVAssetExportPresetHighestQuality];
exporter.outputURL = url;
exporter.outputFileType = AVFileTypeMPEG4;
exporter.shouldOptimizeForNetworkUse = YES;
exporter.videoComposition = mainCompositionInst;
[exporter exportAsynchronouslyWithCompletionHandler:^{
dispatch_async(dispatch_get_main_queue(), ^{
handler(exporter.outputURL);
});
}];
Daniel, aynı balina av konum düşünüyorum bu sorun için bir çözüm gibi görünmüyor. [My Question] (http://stackoverflow.com/questions/39560386/avplayer-playback-fails-while-avassetexportsession-is-active-as-of-ios-10) –
Çözümünüz var mı? Oynatmaya başladığımda, AVAssetExportSession'ın aktif olması gerektiğini düşündüm ama bittikten sonra bile öyle görünüyor. Sorun başladıktan hemen sonra iptal ederseniz, sorun görülmez. –
@AndresCanella Bunun için henüz bir çözüm bulamadım. Sadece Instagram'a ihracat yaparken sorunu gördüğümden, bunun bilinen bir hata olup olmadığını görmek için onlara ulaşabilirim. Ama evet, sanki sorularımız aynı kaynaktan geliyor gibi görünüyor. –