【问题标题】:videos uploaded to firebase are 0 seconds long?上传到 Firebase 的视频时长为 0 秒?
【发布时间】:2019-05-04 21:20:56
【问题描述】:

我有一个应用程序,您可以在其中将视频上传到 firebase。我最近遇到的问题是上传到firebase的所有视频都是0秒长(这是在数据库中,之前在应用程序中,它们的长度是正确的),这当然是错误的。

我尝试过的一些事情:

  • 我检查了我是如何上传的,我也包括在下面,它似乎是正确的。
  • 缩略图是 UIImage 类型
  • 在我发送之前的视频(在我的应用内预览中)视频看起来很完美。

我注意到的另一件事是,我与视频一起上传的缩略图是图像正在作为视频上传。

        } else if let vidData = media.videoURL {
        print("VIDEO")
        let autoIDSto = "media\(media.numMedia).mov"
        print(autoIDSto)
        let autoID = "media\(media.numMedia)"

        let storageRef = Storage.storage().reference().child((Auth.auth().currentUser?.uid)!).child("post:\(postID)").child(autoIDSto)
        let postRef = childRef.child("Media")
        let uploadData = media.videoURL

        let uploadTask = storageRef.putFile(from: vidData, metadata: nil) { (metadata, error) in
            print("\(vidData) : Video data")
            guard let metadata = metadata else { return }

            if let error = error {
                print(error)
            }

            storageRef.downloadURL(completion: { (url, error) in
            //a bunch of code to add to DB
                        if let thumbnailImageData = media.thumbnailImage!.jpegData(compressionQuality: 1.0) {
                            storageRef.putData(thumbnailImageData, metadata: nil) { (metadata, error) in
                                storageRef.downloadURL(completion: { (url, error) in
                                    if let thumbnail = url {
                                        mediaRef.updateChildValues(["thumbnail" : "\(thumbnail)"])

出了什么问题,我该如何解决?

【问题讨论】:

    标签: ios swift firebase firebase-storage


    【解决方案1】:

    您使用相同的路径( 1 带有 mov 扩展名)

    let storageRef = Storage.storage().reference().child((Auth.auth().currentUser?.uid)!).child("post:\(postID)").child(autoIDSto)
    

    在此处存储视频/图像缩略图

    let uploadTask = storageRef.putFile(from: vidData, metadata: nil) { (metadata, error) in
    

    storageRef.putData(thumbnailImageData, metadata: nil) { (metadata, error) in
    

    应该有 2 条不同的路径 1 带有 mov 扩展名和另一个带有 jpg 扩展名的路径,您最终将两者的引用存储在数据库表中的 1 条记录中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-19
      • 2016-08-11
      • 2018-01-17
      • 1970-01-01
      • 2020-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多