Erstellen eines Videos aus einem UIImage-Array mit verschiedenen Übergangsanimationen

9

Ich folge diesem Code , um Video aus einem UIImage Array zu erstellen. Beim Übergang von einem Bild zum anderen gibt es hier keine Animation. Ich möchte einen Fotoübergangseffekt wie diese hinzufügen:

  1. TransitionFlipFromTop
  2. TransitionFlipFromBottom
  3. TransitionFlipFromLeft
  4. TransitionFlipFromRight
  5. TransitionCurlUp
  6. TransitionCurlDown
  7. TransitionCrossDissolve
  8. FadeIn
  9. FadeOut

Diese Animationen können über UIView.transition() & amp; UIView.animate() .

Wie können Sie diese Übergangsanimationen anwenden, während Sie ein Video von einem UIImage-Array erstellen? Ich habe viel gesucht, aber nichts gefunden.

Ich habe HJImagesToVideo auch versucht, aber es bietet nur Crossfade Übergang an.

    
Roy 20.09.2017, 07:32
quelle

1 Antwort

4

Ich war für ein bisschen Zeit in demselben Problem stecken geblieben. Da es eine große Antwort ist, kann es dich langweilen, aber ich hoffe, es wird dir helfen. Hier ist meine Antwort in Swift 3.

Theorie:

Erstens: Sie müssen ein Video mit Ihrem Bild-Array erstellen. Für dieses Problem gibt es viele Lösungen. Suchen Sie einfach ein wenig, ich hoffe, Sie werden eins bekommen. Wenn nicht, siehe meinen Code unten. Zweitens: Sie wissen vielleicht, dass ein CALayer über ein Video hinzugefügt werden kann. Wenn nicht, suchen Sie ein wenig, wie Sie CALayer über ein Video hinzufügen können. Drittens: müssen Sie wissen, wie Sie einen CALayer animieren können. Core Animation wird die Aufgabe für Sie übernehmen. Eine riesige Sammlung von Beispielcodes steht diesbezüglich zur Verfügung. Suche danach. Jetzt haben Sie einen CALayer und Sie wissen, wie Sie ihn animieren können. Zu guter Letzt musst du diesen animierten CALayer in dein Video einfügen.

Code:

1.Erstelle ein Video mit deinem Bilder-Array

%Vor%

2.Fügen Sie eine Animation zum erstellten Video hinzu (Lesen Sie bitte alle kommentierten Abschnitte sorgfältig. Ich denke, einige Probleme werden durch das Lesen dieser Themen klar.)

%Vor%

Vergessen Sie nicht, das AVFoundation

zu importieren     
pigeon_39 04.10.2017, 08:45
quelle