Obtenir la vidéo de ALAsset
À l'aide de la nouvelle bibliothèque d'actifs cadre est disponible dans iOS 4, je vois que je peux avoir l'adresse url d'une vidéo à l'aide de la UIImagePickerControllerReferenceurl. L'url retournée est dans le format suivant:
assets-library://asset/asset.M4V?id=1000000004&ext=M4V
Je suis en train de télécharger cette vidéo pour un site web de manière rapide la preuve de concept, je suis en train suivantes
NSData *data = [NSData dataWithContentsOfURL:videourl];
[data writeToFile:tmpfile atomically:NO];
De données n'est jamais initialisée dans ce cas. Quelqu'un a réussi à accéder à l'url directement via la nouvelle bibliothèque d'actifs? Merci pour votre aide.
J'ai essayé avec l'option proposée par les Riches, mais ne fonctionne pas. Je suis en utilisant la même vidéo stockées dans l'iPhone Bibliothèque pour mon test, et parfois les infos du dictionnaire retourné contient seulement UIImagePickerControllerReferenceurl. J'ai essayé d'utiliser l'URL comme entrée pour videoAssetURLToTempFile mais lors de l'exécution de cette méthode ne saisissez pas le code pour mettre à jour le bloc de résultats. Je ne peux pas déterminer dans quelles circonstances la UIImagePickerController didFinishPickingMediaWithInfo délégué méthode fonctionne correctement. Un peu d'aide s'il vous plaît? Merci à l'avance!
Est-il possible que ce soit une version iOS problème? UIImagePickerControllerReferenceurl est la vieille méthode de renvoyer les données.
Est-il possible que ce soit une version iOS problème? UIImagePickerControllerReferenceurl est la vieille méthode de renvoyer les données.
OriginalL'auteur Rich Dominelli | 2010-12-28
Vous devez vous connecter pour publier un commentaire.
Ici est propre swift solution pour obtenir des vidéos comme NSData.
Il utilise les Photos cadre ALAssetLibrary est obsolète depuis la iOS9:
OriginalL'auteur Alonzo
J'utilise la suite de la catégorie sur
ALAsset
:C'est ce que je cherche.. Merci @zoul
OriginalL'auteur zoul
Ce n'est pas la meilleure façon de le faire. Je réponds à cette question dans le cas où un autre de SORTE que l'utilisateur vient sur le même sujet.
Fondamentalement, mon besoin était d'être capable de traiter les fichiers vidéo vers un fichier tmp afin que je puisse la télécharger sur un site web en utilisant ASIHTTPFormDataRequest. Il y a probablement un moyen de diffusion à partir de l'actif url de la ASIHTTPFormDataRequest télécharger mais je ne pouvais pas le comprendre. Au lieu de cela, j'ai écrit la fonction suivante pour déplacer le fichier vers un fichier tmp ajouter à ASIHTTPFormDataRequest.
Vous avez raison, je vous remercie.
génial extrait de! Merci!!!!!!
OriginalL'auteur Rich Dominelli
Là, vous allez...
Vous pouvez utiliser une autre touche de présélection si vous souhaitez ré-encoder le film (
AVAssetExportPresetMediumQuality
par exemple)Probablement trop tard ici, mais vous pouvez instancier un ALAsset objet à partir d'une URL de référence en utilisant -[ALAssetLibrary assetForURL:resultBlock:failureBlock: la méthode].
Doit être accepté de répondre. Mais n'oubliez pas d'envoi exportAsynchronouslyWithCompletionhandler:^ dans le thread principal, car il s'exécute en arrière-plan par défaut.
Est-il un moyen de le faire avec un PHAsset? ALAsset api est obsolète dans iOS9
OriginalL'auteur Gilad Novik
Ici est la Objective C solution de Alonzo réponse, à l'Aide de photos cadre
OriginalL'auteur arunjos007
ce de Zoul Réponse
grâce
Xamarin C# Équivalent
OriginalL'auteur MeqDotNet