首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将视频保存到分析和播放中

将视频保存到分析和播放中
EN

Stack Overflow用户
提问于 2016-04-10 12:28:37
回答 1查看 791关注 0票数 2

所以我用这个定制的类来录制我的视频-- https://github.com/piemonte/PBJVision。我试图在我的iOS应用程序中录制视频,但我似乎无法正确地将文件上传到我的解析服务器。有几件事:

  • 在PBJVision类中,它允许您在视频录制之后使用NSURL(fileWithPath: video )访问资产。
  • 要访问资产中的数据并将其保存到Parse,我使用以下函数: 功能视觉(vision: PBJVision,capturedVideo videoDict: NSObject : AnyObject?,error: NSError?) { if error != nil {print(“遇到视频错误”) isVideo = false }NSObject currentVideo = videoDict let videoPath = currentVideo as!字符串打印(“视频路径是:(videoPath)") self.player = Player() self.player.delegate = self self.player.view.frame = CGRect(x: cameraView.framework.原.x,y: cameraView.framework.原.y,宽度: cameraView.frame.width,身高: cameraView.frame.height) self.player.playbackLoops = true videoUrl = NSURL(fileURLWithPath: videoPath) self.player.setUrl(videoUrl) self.cameraView.addSubview(self.player.view) self.player.playFromBeginning() nextButton.hidden = false isVideo = true let contents: NSData?{ contents = try NSData(contentsOfFile: videoPath,options: NSDataReadingOptions.DataReadingMappedAlways) } catch _{ contents = nil } print(contents)是否让videoObject = PFObject(className:"EventChatroomMessages") videoObject.setValue(user,forKey:"user") videoObject.setValue("uG7v2KWBQm",forKey:"eventId") videoObject.setValue(NSDate(),forKey:"timestamp") --让videoObject.setValue:forKey:?do { videoFile =PFFile(名称: randomAlphaNumericString(26) + ".mp4",data: contents!,contentType:“视频/MP4”)打印(“videoFile:(videoFile)") } catch _{print(”错误“)} print(videoFile) videoObject.setValue(videoFile,forKey:"image") videoObject.saveInBackgroundWithBlock {(成功: Bool,错误: NSError?) -> == true {ProgressHUD.showSuccess(“视频保存”,交互: false) dispatch_async(dispatch_get_main_queue()) { ProgressHUD.dismiss() }=={ProgressHUD.showError(“错误保存视频”),交互作用: false) dispatch_async(dispatch_get_main_queue()) { ProgressHUD.dismiss() } }

然后,我使用一个UITableView来显示来自Parse的数据。下面是我如何从Parse检索我的资产并返回到我的AVPlayer():// Create for Reaction让player = Player = Player() player.delegate = self player.view.frame = CGRectMake(0.0,nameLabel.framework.y+ nameLabel.frame.size.height + 0.0,self.view.frame.width,150) player.view.backgroundColor = UIColor.whiteColor()

代码语言:javascript
复制
    let video = message.objectForKey("image") as! PFFile
    let urlFromParse = video.url!
    print(urlFromParse)

    let url = NSURL(fileURLWithPath: video.url!)
    print(url)

    let playerNew = AVPlayer(URL: url!)
    let playerLayer = AVPlayerLayer(player: playerNew)
    playerLayer.frame = CGRectMake(0.0, nameLabel.frame.origin.y + nameLabel.frame.size.height + 0.0, self.view.frame.width, 150)
    cell.layer.addSublayer(playerLayer)
    playerLayer.backgroundColor = UIColor.whiteColor().CGColor
    playerNew.play()

我复制从urlFromParse (file.mp4)返回的值,并将其粘贴到浏览器和浏览器中播放的视频中。我是否正确地假定文件已被正确保存?

当我去运行我的应用程序时,视频没有play.Any建议我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2016-06-11 22:33:43

我发现使用pfFile.url播放视频不起作用。您必须使用正确的扩展名(mov)将NSData从PFFIle写入本地文件,然后使用本地文件作为源播放视频。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36529724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档