Ho scritto un framework di animazione di base utilizzando Core Animation su iPhone. Ha la funzionalità per mettere in pausa e riprendere le animazioni e può anche eseguire animazioni all'ora specificata. Il mio problema di base è che non riesco a trovare un modo per esportare le mie animazioni in un file video (.mov, .avi, ecc.). Ho letto su AVAssetWriter
e AVComposition
ma non riesco a capire come farlo funzionare nel mio caso.Esporta CoreAnimation sul file video
Cercando su Internet il più vicino che sono riuscito a ottenere è stato facendo una lettura fotogramma per fotogramma delle mie animazioni. Anche per questo non sono riuscito a trovare un modo per farlo funzionare e non ho potuto scoprire se iPhone SDK avesse qualcosa da fare per questo tipo di lettura fotogramma per fotogramma nel mio caso. Mi sono anche avvicinato a questo question on stackoverflow e ancora non riuscivo a capire (scusa se sento di essere un principiante in quelle cose, ma non lo sono, semplicemente non capisco alcune cose)
Se qualcuno sa come farlo funzionare o anche come qualcosa di simile ad esso per favore condividere. E se non c'è modo, se conosci un altro modo per farlo usando OpenGL ES invece di CoreAnimation, condividilo anche tu.
Dai uno sguardo allo AVMutableVideoComposition.animationTool. Sono abbastanza sicuro che è necessario creare una composizione AVMutable ed esportarla da AVAssetExportSession – Gabriele
Grazie per la risposta. Ma ho provato entrambi, ma non sono riuscito a farli funzionare. Attualmente sto lavorando a una soluzione che legge le mie animazioni fotogramma per fotogramma nelle immagini. Sta funzionando e leggendo fotogramma per fotogramma che si ottiene ottenendo fotogramma programmando un timer per il mio metodo. Funziona per la lettura a 30 fps, ma voglio convertire le mie animazioni con molto più fps che viene rallentato a causa di NSTimer. Ora voglio sapere c'è un modo migliore per questo genere di cose? – Azeem
Non correlato alla tua domanda, ma sei riuscito a ottenere un 'UIImage *' dalla tua animazione senza renderlo sullo schermo? Come? (renderInContext ignora le trasformazioni, quindi ha ucciso una idea che avevo qualche tempo fa =(). Ho del codice per fare un file video da una serie di immagini, lo vuoi? –