我熟悉从UIImage
生成一个字节数组。但是我如何从视频中做到这一点?这就是我在imagePickerController
委托方法didFinishPickingMediaWithInfo
中的内容。
if let media = info[UIImagePickerControllerOriginalImage] as? UIImage {
let byteArray = UIImageJPEGRepresentation(media, 1.0)
print("hi")
} else {
//stuck here
}
FIRDatabase.database().reference().child("dataUploaded").setValue("uploaded")
uploaded = true
dismissViewControllerAnimated(true, completion: nil)
答案 0 :(得分:2)
视频与UIImagePickerController中的图像略有不同。 UIImagePickerController
不是提供原始视频数据,而是返回视频文件的URL。
使用info[UIImagePickerControllerMediaURL]
获取视频文件的网址。您可以使用NSData(contentsOfURL:)
初始化程序加载文件的字节。
E.g。
if let fileURL = info[UIImagePickerControllerMediaURL] as? NSURL {
let bytes = try? NSData(contentsOfURL: fileURL)
}
注意:bytes
是可选的,因为加载视频可能会失败。
通常视频将是MOV或MP4视频文件,其内容使用.H264编解码器编码,但其他格式确实存在。