Domanda

Ho composto con successo un AVMutableComposition con più video clip e può vederlo ed esportarlo, e vorrei essere in grado di transizione tra di loro utilizzando una dissolvenza incrociata, quindi voglio usare AVMutableVideoComposition. Non riesco a trovare alcun esempio su come organizzare e riprodurre un video paio AVAsset in successione, anche. Qualcuno ha un esempio di come aggiungere tracce a un AVMutableVideoComposition con l'equivalente di insertTimeRange di AVMutableComposition, o come impostare una dissolvenza incrociata?

[self.composition insertTimeRange:CMTimeRangeMake(kCMTimeZero,asset.avAsset.duration)
                                         ofAsset:asset.avAsset
                                          atTime:self.composition.frameDuration
                                           error:nil]
È stato utile?

Soluzione

Ho trovato un esempio chiamato AVEditDemo dal WWDC 2010 di esempio di Apple Codice.

https://developer.apple.com/library/ ios / SampleCode / AVCustomEdit / Introduzione / intro.html

Ci sono un sacco di dettagli nel campione, ma io riassumere: È necessario utilizzare sia AVMutableComposition e AVMutableVideoComposition. Aggiungere le tracce individualmente a AVMutableComposition invece che con l'insertTimeRange più semplice, in quanto consente di impostare i tempi di sovrapposizione sui binari. Le tracce devono anche essere aggiunti al AVMutableVideoComposition come AVMutableVideoCompositionLayerInstructions con una rampa di opacità. Infine, per riprodurre in un AVPlayer, è necessario creare un AVPlayerItem utilizzando sia l'AVMutableComposition e AVMutableVideoComposition.

Sembra andare ogni livello più profondo nel api - in questo caso da MPMoviePlayer con una risorsa per AVPlayer con un'AVComposition e, infine, a un AVVideoComposition -. Aumenta in modo esponenziale necessarie codifica

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top