(AWS SDKを使用せずに)s3サービスへの投稿リクエストを介してS3バケットにビデオと画像をアップロードしています。画像と動画が正常にアップロードされました。しかし、ビデオはそのURLから再生されていません。
以下は、コンソールに出力されるエラーです。
エラードメイン= NSURLErrorDomainコード= -999 "キャンセル" UserInfo = {NSErrorFailingURLStringKey = https:// s3url }
以下は、私が使用しているマルチパートリクエストのコードです。
Alamofire.upload(multipartFormData: { (multiPart) in
if parameters != nil {
for (key, value) in parameters! {
multiPart.append((value as AnyObject).data(using: String.Encoding.utf8.rawValue)!, withName: key)
}
}
print("mime type ==================>\(mimeType)")
//mime type for video: "video/mp4"
multiPart.append(file, withName: key, fileName: fileName, mimeType: mimeType)
}, usingThreshold: 10000, to: url, method: .post, headers: headers) { (encodingResult) in
switch encodingResult {
case .success(let upload, _, _):
upload.responseString(completionHandler: { (response) in
print("response string")
print(response)
})
upload.responseJSON { response in
print(response)
print(response.result.isSuccess)
}
case .failure(let error):
failure(self.parseError(error: error))
break
}
}
ビデオファイルは公開されていますか?あなたがブラウザにURLを入れるとそれは開きますか?
—
スクリプト対応
@Scriptableはい、すべてのファイルにパブリックアクセスがあります。ブラウザでURLを開くと、ファイルがダウンロードされ、ファイルに.mov拡張子を追加すると、Quick timeプレーヤーで再生されます。
—
SV
プレイしようとした場所にコードを表示できますか?
—
スクリプト対応
サードパーティのライブラリVGPlayerで再生しています。しかし、AVPlayerControllerでも試してみましたが、機能しません。let player = AVPlayer(url:videoURL)let playerViewController = AVPlayerViewController()playerViewController.player = player self.present(playerViewController、animated:true){playerViewController.player!.play()}
—
SV