AvCompositionに静止画像を追加するにはどうすればよいですか?
-
28-09-2019 - |
質問
を持っています AVMutableComposition
ビデオトラックを使用して、ビデオトラックに静止画像を追加し、特定の時間のために表示したいと思います。静止画像は単なるPNGです。画像を資産としてロードできますが、結果の資産にはトラックがないため、単に挿入できないため、それについてです。 insertTimeRange…
方法。
構図に静止画像を追加する方法はありますか?答えはコアアニメーションのどこかにあるように見えますが、全体が私の頭の上にあるようで、コードサンプルまたはいくつかの情報ポインターに感謝します。
解決
わかった。呼ばれる素晴らしいビデオがあります AV Foundationでメディアを編集します から WWDC それはたくさん説明しています。画像を正しく挿入することはできません AVComposition
タイムライン、少なくとも私はそれをする方法を見つけられませんでした。しかし、資産をエクスポートまたはプレイするときは、 AVVideoComposition
. 。それはクラスの完璧な名前ではないかもしれません。なぜなら、それはあなたが資産内のさまざまなビデオトラックを非常によく混ぜることができるので AVAudioMix
オーディオのために行います。そしてその AVVideoComposition
持っています animationTool
コアアニメーションレイヤーを投げることができるプロパティ(CALayer
)ミックスに。 CALayer
があります contents
割り当てることができるプロパティ CGImageRef
. 。私の場合は助けにならず、他の誰かを助けるかもしれません。
他のヒント
作曲には静止画が必要です。私の考え方は少し違っています。画像が表示される場合の代わりに、黒のオンザフライ映画を挿入します(おそらく、そのようなビデオで十分です)。そのような各挿入物に辞書の参照を追加し、組成の時間距離を真正な希望の画像にリンクします。正しい時間範囲が私のフルタイムのカスタムコンポジタに到着したら、目的の画像を引き出して、それを出力ピクセルバッファーに塗装し、組成からの入っている黒フレームを無視します。それはそれをする別の方法になると思います。