我正在尝试通过谷歌应用引擎将一个大视频上传到谷歌云存储中。
我遵循了这篇文章中的原则,这篇文章提到了上传一个大的电子表格。在GCP应用引擎中无法将大文件上传到Python+Flask
这是我的后端代码
from flask import Flask, render_template, request, redirect, url_for from google.cloud import storage from flask_dropzone import Dropzone from werkzeug.utils import secure_filename import os import base64 app = Flask(__name__, template_folder='./templates', static_folder="./static") dropzone = Dropzone(app) app.config['UPLOAD_PATH'] = '/tmp' @app.route('/', methods=['GET', 'POST']) def index(): return render_template('index.html') @app.route('/upload', methods=['POST', 'GET']) def upload(): if request.method == 'POST': upload_file = request.files.get('file') tmp_file_path = '/tmp/' + upload_file.filename with open(tmp_file_path, 'a') as f: f.write(uploaded_file.read()) chunk_index = int(flask.request.form.get('dzchunkindex')) if (flask.request.form.get('dzchunkindex') is not None) else 0 chunk_count = int(flask.request.form.get('dztotalchunkcount')) if (flask.request.form.get('dztotalchunkcount') is not None) else 1 if (chunk_index == (chunk_count - 1)): print('Saving file to storage') print( chunk_count ) storage_client = storage.Client() storage_bucket = storage_client.get_bucket('percy-277618.appspot.com') blob = storage_bucket.blob(upload_file.filename) blob.upload_from_filename(tmp_file_path, client=storage_client) print('Saved to Storage') print('Deleting temp file') os.remove(tmp_file_path) if __name__ == '__main__': app.run(host='127.0.0.1', port=8080, debug=True)
这是我的前端代码。
Dropzone.options.uploadwidget = { paramName: 'file', forceChunking: true, timeout: 300000, chunking: true, url: '/upload', chunkSize: 10485760, maxFilesize: 1025, };
使用uploaded_file.read()
生成的是字节,而不是字符串。您应该以二进制模式打开文件:
with open(tmp_file_path, 'ab') as f:
对不起我的英语。我试着在服务器上上传大的视频文件,这个文件超过50 MB。当我上传小文件时,一切都很好。在清单中,我设置了和,这对我没有帮助。下面是我的代码: 接口 方法返回文件: 服务器上的方法上载 错误: 抛出OutOfMemoryError“分配100390006字节分配失败,16777216空闲字节和92MB直到OOM” 全stacktrace
我试图使用API接口将视频上传到S3存储桶,我遵循了预签名的URL过程,下面是我的lambda函数,它返回预签名的URL(它正确地返回了预签名的URL,看起来): 当我尝试上传一个像这样卷曲的mp4视频时,例如: curl-X PUT-F'data=@ch01_00000100055009702.mp4'https://redacted-bucket-instance.s3.amazonaws.c
我已经尝试上传大型视频到服务器使用Restful API的帮助下改型。但是每次我都无法通过这个场景上传它。这对100 MBs左右的小视频很好,但它不符合大于300 MBs的条件。 向服务器上传非常大的文件需要什么?Ans:我正在创建像(网飞,亚马逊Prime等)的网络系列播放应用程序,也有一个管理员的角色。管理员可以通过手机上传web系列,其大小可能非常大,大约在400 MB到1 GB之间。 请提
问题内容: 是的,这是一个冗长的问题,涉及很多细节… 所以,我的问题是:如何将分段上传到Vimeo? 对于想要在自己的计算机上进行复制和调试的任何人: 这是您需要的东西: 我的代码在这里。 包括在此处找到的抄写员库 拥有至少大于10 MB的有效视频文件(mp4),并将其放在目录中,或更改该代码以指向您所在的位置。 而已!谢谢你的协助! 重大更新: 我在此处的代码中为Vimeo保留了有效的API密钥
本文向大家介绍ASP.NET webUploader上传大视频文件相关web.config配置,包括了ASP.NET webUploader上传大视频文件相关web.config配置的使用技巧和注意事项,需要的朋友参考一下 在webuploader上传大文件时必须配置一下,不然请求后台处理程序时,会请求超时。出现404! 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,
接口说明 上传视频文件 API地址 POST /api/marker/1.0.0/uploadVideo 是否需要登录 是 请求字段说明 参数 类型 请求类型 是否必须 说明 dataGuid string form 是 场景GUID file string form 是 视频文件 响应字段说明 参数 类型 说明 mp4UploadPath String 视频文件上传地址 响应成功示例 { "