Ich habe seit über einer Woche mit diesem Problem gekämpft. Ich hoffe, dass jemand sieht, was ich falsch mache. Ich versuche, die finishWithingWithCompletionHandler: -Methode zu verwenden, da die finishWriting-Methode jetzt veraltet ist. Mit der neuen Methode hatte ich keinen Erfolg. Es schlägt mit einem unbekannten Fehler -11800 fehl. Ich kann meine MOV-Datei mit der veralteten Methode Fine speichern, aber wenn ich die Entsprechung mit der neuen Methode erstelle, versagt sie jedes Mal.
Hier ist mein Originalcode:
%Vor%Meine neue Methode ist wie folgt:
%Vor%Ich glaube nicht, dass ich etwas verpasst habe und ich bekomme nicht viel von dem Fehler, den es verursacht. Jede Hilfe wird sehr geschätzt.
Danke, Rob
Ich habe endlich die Antwort gefunden. Die finishWritingWithCompletionHandler:
ist fehlgeschlagen, weil ich die markAsFinished
auf den AVAssetWriterInput
-Objekten nicht ausgeführt habe. Nachdem ich die markAsFinished
-Methoden vor finishWritingWithCompletionHandler:
ausgeführt hatte, konnte der Prozess ohne Fehler abgeschlossen werden.
Ich hatte ein ähnliches Problem und stellte fest, dass der Handler nicht aufgerufen wurde, weil ich das AVAssetWriter
unmittelbar nach dem Aufruf von finishWritingWithCompletionHandler:
, z. B.
Um es zu beheben, verschieben Sie einfach die Freigabelinie in den Completion-Handler:
%Vor% Die Antwort war für mich, den Aufruf von finishWritingWithCompletionHandler
zu entfernen. Anscheinend wurde die Funktion schon einmal aufgerufen.
Tags und Links grand-central-dispatch avfoundation ios6 avassetwriter