标签: avplayerviewcontroller

既然MPMoviePlayerPlaybackDidFinishReasonUserInfoKey已被弃用,那么找到播放为何终止的最佳方法是什么?

在iOS9中,不推荐使用MPMoviePlayer类,而推荐使用AVPlayer。我有一个使用MPMoviePlayerPlaybackDidFinishReasonUserInfoKey的现有应用程序来确定如何记录有关视频播放器如何结束的事件。我如何对AVPlayer进行相同操作?

以下是结束原因键:

  • MPMovieFinishReasonPlaybackEnded
  • MPMovieFinishReasonPlaybackError
  • MPMovieFinishReasonUserExited

mpmovieplayercontroller ios avplayerviewcontroller

4
推荐指数
1
解决办法
1410
查看次数

什么视频分辨率和格式最适合ios应用程序?

我想在我的一个应用程序中播放全屏视频作为背景.问题是视频占用了大量空间.什么分辨率和格式最适合ios应用程序?主要标准是文件大小和加载时间.

ios avplayer avplayerviewcontroller

4
推荐指数
1
解决办法
6294
查看次数

如何在Swift中将cornerRadius添加到AVPlayerViewController?

我正在使用编写的视频播放器应用程序Swift

我的问题是我应该使AVPlayerViewController弯道弯曲。但我只想使用AVPlayerViewController任何其他类。

我现在做了什么:

fileprivate func setupPlayer() {
    let player = AVPlayer(url: videoURL)
    let playerViewController = AVPlayerViewController()
    playerViewController.view.frame = CGRect.init(x: xPosition,
                                                  y: yPosition,
                                                  width: 200,
                                                  height: 100)
    playerViewController.player = player
    self.addChild(playerViewController)
    self.view.addSubview(playerViewController.view)
    playerViewController.didMove(toParent: self)
    playerViewController.videoGravity = AVLayerVideoGravity.init(rawValue: "")
    playerViewController.view.backgroundColor = UIColor(displayP3Red: 0/255, green: 0/255, blue: 0/255, alpha: 0)
    playerViewController.view.layer.cornerRadius = 20
    playerViewController.contentOverlayView?.isHidden = true
    playerViewController.contentOverlayView?.alpha = 0
}
Run Code Online (Sandbox Code Playgroud)

问题:

我已经拥有的是: 在此处输入图片说明

解决方案示例:

但我想在Appstore中有一些曲线:

在此处输入图片说明

ios swift avplayerviewcontroller

4
推荐指数
1
解决办法
293
查看次数

在ios中为AV Player ViewController定义视图框架大小

如何在iOS中将视频作为背景播放?我关注了这个问题:如何使用Swift播放本地视频?,但AV Player ViewController是一个控制器,不能让我决定包含视频的视图的位置和大小。它始终采用一些预定义的值。

ios avplayer avplayerviewcontroller

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

无法实例化AVPlayerViewController错误

尝试创建一个简单的应用程序来在iPhone上播放视频(Xcode 7.3,swift iOS9),我只是想在添加代码加载内容之前让播放器出现.

使用storyboard,创建一个按钮并对AVViewController对象进行segue(show).当应用程序在设备上运行并按下按钮时,我得到:

"由于未捕获的异常'NSInvalidUnarchiveOperationException'终止应用程序,原因:'无法实例化名为AVPlayerViewController的类'"

在声明我的ViewContrller:UIViewController类之前,我有:import UIKit,导入AVKit导入AVFoundation.少了什么东西?我怀疑还需要输入其他东西,但我的研究只是根据需要调出了AVKit和AVFoundation.

swift ios9 avplayerviewcontroller

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

如何在tvOS远程中处理菜单按钮操作

我的申请面临着奇怪的问题.实际上,当我呈现视频控制器播放视频时.在视频加载时,用户按下菜单按钮,应用程序转到后台.虽然我已经覆盖菜单按钮操作.

这是我的代码.

override func viewWillAppear(animated: Bool) {
    let menuPressRecognizer = UITapGestureRecognizer()
    menuPressRecognizer.addTarget(self, action: #selector(VideoPlayerViewController.menuButtonAction(_:)))
    menuPressRecognizer.allowedPressTypes = [NSNumber(integer: UIPressType.Menu.hashValue)]
    self.playerController.view.addGestureRecognizer(menuPressRecognizer)
}

func menuButtonAction(ges:UITapGestureRecognizer) {
    self.dismissView()
 }
Run Code Online (Sandbox Code Playgroud)

focus presentviewcontroller swift avplayerviewcontroller tvos

3
推荐指数
2
解决办法
2649
查看次数

将AVPlayerViewController放在UIView中

目前我正在使用底部有四个控件的对话视图.每个控件都在对话框中加载不同的视图.其中一个控件是AVPlayer在对话视图中设置并正在播放它.不幸的是,AVPlayer它本身没有播放控件.

AVPlayerViewController怎么过确实有播放控制.是否有可能将一个 AVPlayerViewController 内部的 UIView ,这样它不会开始作为一个新的屏幕? 我想把它放在我的内部,UIView所以一切都发生在我的拨号内.

ios avplayer swift avplayerviewcontroller swift3

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

将 AVPlayer 子视图添加到 UIView

我正在使用以下代码创建一个启用分页的垂直滚动视图,该视图工作正常。现在我想将 AVPlayer (?) 类型的子视图添加到homeView, view2, view3。我也可以放入效果很好setupCustomPlayer()initiateScrollView()功能。然而,它不附属于任何先前提到的视图。如果我尝试使用该函数添加子视图,addSubview(anything)它会告诉我需要一个 UIView。我需要 UIViews,因为垂直滑动提要非常重要。有人知道如何将其添加为子视图吗?该视频将覆盖整个屏幕并作为一种背景视频可以说(如果您想知道)

代码:

func setupCustomPlayer() {

    print("check")

    AVPlayerVC.view.frame = self.view.frame
    AVPlayerVC.view.sizeToFit()
    AVPlayerVC.showsPlaybackControls = false
    self.view.addSubview(AVPlayerVC.view)

    let videoURL = NSURL(string: "http://URL")


    let player = AVPlayer(url: videoURL! as URL)
    AVPlayerVC.player = player
    AVPlayerVC.player?.play()
}

func initiateScrollView() {

    //create scrollView with paging enabled
    let scrollView = UIScrollView(frame: view.bounds)
    scrollView.isPagingEnabled = true
    view.addSubview(scrollView)

    //do not show vertical scroll indicator
    scrollView.showsVerticalScrollIndicator = false;

    //get page size
    let pageSize = …
Run Code Online (Sandbox Code Playgroud)

uiview ios avplayer avplayerviewcontroller

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

tvOS 中使用 AVPlayerViewController 的 Seekbar 可见性回调

我正在研究一种解决方案,在搜索栏可见时在屏幕上显示一些元素。

我有一个 AVPlayerViewController 和一个播放视频的 AVPlayer。我想在搜索栏可见时显示一些组件,并在隐藏搜索栏时隐藏它们。

当搜索栏可见/隐藏时,有没有办法得到通知?

提前致谢。

avplayer avplayerviewcontroller tvos

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

Swift AV 播放器视频应为 AspectFill 或全屏

在登录屏幕上,我必须以全分辨率显示背景视频。我可以通过在黑色区域双击下面的图像来做到这一点。

在此处输入图片说明

这是我需要的结果。但这不是通过编码完成的。我只是通过双击黑色区域来做到这一点。 在此处输入图片说明

这是我的这门课的代码。

class loginViewController: UIViewController {
@IBOutlet weak var videoView: UIView!
let player = AVPlayer()

override func viewDidLoad() {
    super.viewDidLoad()
    self.navigationController?.isNavigationBarHidden = true
    let myFileManager = FileManager.default
    let mainBundle = Bundle.main
    let resourcesPath = mainBundle.resourcePath!
    guard let allItemsInTheBundle = try? myFileManager.contentsOfDirectory(atPath: resourcesPath) else {
        return
        }

    let videoName = "login_video"
    let videoPath = Bundle.main.path(forResource: videoName, ofType: "mp4")
    let videoUrl = URL(fileURLWithPath: videoPath!)

        let player = AVPlayer(url: videoUrl)
        let controller=AVPlayerViewController()
        controller.player=player

        let playerLayer = AVPlayerLayer(player: self.player)        
        playerLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill;

        controller.showsPlaybackControls …
Run Code Online (Sandbox Code Playgroud)

iphone ios avplayer swift avplayerviewcontroller

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