• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - AVPlayer 返回 nan 视频

[复制链接]
菜鸟教程小白 发表于 2022-12-11 19:50:11 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在尝试使用以下代码在 avplayer 上播放视频...但没有任何结果,因为它显示持续时间 nan。

func setUpPlayer(fileURL:URL){
        let playerItem:AVPlayerItem = AVPlayerItem(url: fileURL)
        player = AVPlayer(playerItem: playerItem)
        let playerLayer=AVPlayerLayer(player: player!)
        playerLayer.frame=CGRect(x:self.videoContainer.frame.origin.x, y:self.videoContainer.frame.origin.y+20, width:self.videoContainer.frame.size.width, height:self.videoContainer.frame.size.height-40)
        player?.addObserver(
            self, forKeyPath:"currentItem", options:.initial, context:nil)

        self.view.layer.addSublayer(playerLayer)


        rangeSlider.setVideoURL(videoURL:fileURL)
        rangeSlider.delegate = self

        self.endTime = CMTimeGetSeconds((player?.currentItem?.duration)!)


       let timeInterval: CMTime = CMTimeMakeWithSeconds(0.01, 100)

//        let asset:AVURLAsset = AVURLAsset.init(url:videoURL)
//        let videoDuration:CMTime = asset.duration;
//
//
//        let timeInterval: CMTime = CMTimeMakeWithSeconds(videoDuration,100)
            //CMTimeGetSeconds(videoDuration)

        timeObserver = player?.addPeriodicTimeObserver(forInterval: timeInterval,
                                                        queue: DispatchQueue.main) { (elapsedTime: CMTime) -> Void in

                                                            self.observeTime(elapsedTime: elapsedTime)

            } as AnyObject!

    }

我是第一次这样做。请提供一些解决方案来解决这个问题。在此先感谢!



Best Answer-推荐答案


你错过了在你的代码中写“player.play()”

let timeRange = self.avPlayer.currentItem.loadedTimeRanges[0].CMTimeRangeValue
let duration = CMTimeGetSeconds(timeRange.duration)

试试这个绝对有用

关于ios - AVPlayer 返回 nan 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49188454/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap