Ich habe einige Dokumente und Tutorials gelesen und unten auf der Grundlage dieser Forschung geantwortet.
Ist es möglich, das Video an Ort und Stelle zu bearbeiten?
Ja (durch Kopieren in das temporäre Verzeichnis) und Nein (an den ursprünglichen Speicherort, an dem das Video tatsächlich gespeichert ist)
Schauen Sie sich das folgende Bild an und zitieren Sie aus offiziellen Dokumenten
Mit PhotoKit können Sie Assets für die Anzeige und Wiedergabe abrufen und zwischenspeichern , Bild- und Videoinhalte bearbeiten oder Sammlungen von Assets wie Alben, Momenten und freigegebenen Alben verwalten.
Wir haben keinen direkten Zugriff auf den Speicherort des Bilds / Videos, stattdessen erhalten wir Rohdaten oder Darstellungen mit PHAsset, und Asset-Objekte sind unveränderlich, sodass wir keine Operationen direkt daran ausführen können. Wir benötigen PHAssetChangeRequest , um den Inhalt eines Fotos-Assets zu erstellen, zu löschen, die Metadaten zu ändern oder den Inhalt zu bearbeiten.
Muss ich das Video in ein temporäres Verzeichnis kopieren, es bearbeiten und dann auf die Kamerarolle zurückschreiben?
Ja, das ist der richtige Weg.
photos
, oder? ...... was seltsam aussehen mag, finden Sie das nicht?Wenn Sie die Assets bereits abgerufen haben und das PHFetchResult-Objekt verwenden, versuchen Sie Folgendes:
…
Wenn Sie den Standard-imagePicker verwenden, können Sie die tmp-Video-URL mithilfe folgender Adresse abrufen:
quelle
Ich implementiere so etwas in meinem Projekt. Ich hoffe, es wird Ihnen helfen.
Ich zeige alle Elemente in der Sammlungsansicht und führe eine Aktion bei der Auswahl aus. Sie können auch die URL des ausgewählten Videos abrufen
Ich hoffe es wird für dich funktionieren ... :)
quelle