AVPlayerのSwiftUIラッパー

WWDC23のObject Capture for iOSのサンプル「GuidedCapture」では、次のようにカメラプレビューにオーバーレイするかたちで動画が表示される。

画像はWWDC23のセッションより引用

こんな感じでSwiftUI上でUIの中でアニメーション素材のように動画を使う実装はいつかどこかでそのまま使い回せるかもしれないと思ったので、コードスニペットとしてメモを残しておこうかと。(ローカルメモだと存在すら忘れるので記事にしてみる)

ポイントとしては、

  • AVPlayerLooper でループ再生

  • 動画の透過表示

  • AVPlayer, AVPlayerLayerをラップしてSwiftUIで利用

  • AVMutableVideoComposition を利用して CIFilter でエフェクトをかけて再生

といったあたりの実装が入っている


ここから先は

8,332字
WWDC23だけでなく、WWDC22についても書いていきます。

WWDC 2023やiOS 17についてセッションやサンプルを見つつ勉強したことを記事にしていくマガジンです。また昨年キャッチアップをお休…

最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/