小编Mun*_*Jan的帖子

如何在运行时将 CIFilters 添加到视频

我使用 avfoundation 录制了一个视频,点击视频后,它开始在新的视图控制器上播放。问题是,我无法为正在播放的视频添加滤镜效果。以下是我所实现的代码。

import UIKit
import AVFoundation

class VideoPlayback: UIViewController {

    let avPlayer = AVPlayer()
    var avPlayerLayer: AVPlayerLayer!

    var videoURL: URL!

    @IBOutlet weak var videoView: UIView!

    override func viewDidLoad() {
        super.viewDidLoad()

        NotificationCenter.default.addObserver(self, selector: #selector(finishVideo), name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: nil)

        avPlayerLayer = AVPlayerLayer(player: avPlayer)
        avPlayerLayer.frame = view.bounds
        avPlayerLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill
        videoView.layer.insertSublayer(avPlayerLayer, at: 0)

        view.layoutIfNeeded()

        let playerItem = AVPlayerItem(url: videoURL as URL)
        avPlayer.replaceCurrentItem(with: playerItem)

        avPlayer.play()

    }

    @objc func finishVideo()
        {
            print("Video Finished")
            self.performSegue(withIdentifier: "unwindToFifteenSeconds", sender: self)
        }

// Remove Observer
    deinit {
        NotificationCenter.default.removeObserver(self) …
Run Code Online (Sandbox Code Playgroud)

video filter avfoundation cifilter swift

3
推荐指数
1
解决办法
1457
查看次数

标签 统计

avfoundation ×1

cifilter ×1

filter ×1

swift ×1

video ×1