iOS Swift5 视频播放

文章目录

1.截图

2.代码

swift 复制代码
import UIKit
import AVKit
import AVFoundation

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = .white
        
        // 创建按钮
        let button = UIButton(type: .system)
        button.frame = CGRect(x: 100, y: 100, width: 200, height: 50)
        button.setTitle("Play Video", for: .normal)
        button.backgroundColor = .systemBlue
        button.setTitleColor(.white, for: .normal)
        
        // 添加按钮的点击事件
        button.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside)
        
        // 将按钮添加到视图中
        self.view.addSubview(button)
    }


    var playerViewController: AVPlayerViewController!
    var player: AVPlayer!


    @objc func buttonTapped() {
        //本地视频
        guard let localVideoURL = Bundle.main.url(forResource: "sample3", withExtension: "mp4") else {
            MyPrint("Invalid URL")
            return
        }
        // 创建AVPlayer
        player = AVPlayer(url: localVideoURL)

        // 创建AVPlayerViewController并设置player
        playerViewController = AVPlayerViewController()
        playerViewController.player = player
        present(playerViewController, animated: true) { [self] in
            player.play()
        }

    }

}

3.导入本地文件

相关推荐
网管NO.12 分钟前
视频核心技术 01:视频基础概念 —— 帧、分辨率、帧率、码率、YUV 色彩系统全解
音视频
冰凌时空6 分钟前
Swift 类型系统入门:从 Int、String 到自定义类型
前端·ios·ai编程
网管NO.113 分钟前
视频核心技术 04:封装格式详解 —— MP4、FLV、TS、MKV 到底有什么区别?
音视频
码农阿强28 分钟前
技术解析|doubao‑seedance 全系列模型深度解读:API 开放生态赋能 AI 视频生成工程化
人工智能·音视频
大拿爱科技29 分钟前
声音克隆接入短视频流程时,哪些环节最容易出问题?
人工智能·aigc·音视频·语音识别
DogDaoDao42 分钟前
libaom源码search_intra_modes_in_interframe函数深度分析
音视频·视频编解码·av1·libaom·帧内预测·预测编码·预测模式
网管NO.11 小时前
视频核心技术 03:H.264 / H.265 / AV1 编码标准对比 —— 压缩率、复杂度、适用场景
音视频·h.265·h.264
黄昏恋慕黎明1 小时前
音视频测试
音视频
果果开发ggdoc.cn1 小时前
我找到一个在线视频处理工具,不用上传,本地就能转格式、提取音频和字幕
音视频
网管NO.11 小时前
视频核心技术 05:流媒体传输协议 —— RTMP、HLS、WebRTC 怎么选?延迟、卡顿、原理全解
音视频