python - 使用python在django中将任何格式(flv、3gp、MXF等)的视频转换为MP4

标签 python html django video mp4

我正在使用 django 并且是新手。目前正在构建一个基本的上传页面,将视频上传到硬盘(基本上是 django 项目中的 media 文件夹)

所以我的代码工作正常,视频已成功上传到媒体文件夹。

我在一个单独的 html 页面上显示所有这些上传的视频,使用 html video 标签, 所以实际上问题是 MP4 格式的视频正在播放,而其余的则没有。

下面是我的部分html代码和 View 函数

uploads_list.html

<div style="padding-top:90px;">
  <video id="vid" width="350" height="250" controls="controls">
           <source src="{{MEDIA_URL}}videos/django_cms-_frontend_editing_1280x720.mp4" type="video/mp4" />       
   </video>
  <video id="vid_2" width="350" height="223" controls="controls">
           <source src="{{MEDIA_URL}}videos/1100000.flv" type="video/ogg" />       
   </video>
</div>

所以最后我的意图是,将所有上传的视频转换为MP4格式并在上传过程中存储在media文件夹中,以便我们可以显示所有这些视频使用 html video 标签。

views.py

def upload_file(request):
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid() and form.is_multipart():
            handle_uploaded_file(request.FILES['file'])
            return HttpResponseRedirect('/uploads_list')  # which renders `uploads_list.html` page
    else:
        form = UploadFileForm()
    return render_to_response('uploads_form.html', {'form': form,'total_files':os.listdir(settings.MEDIA_ROOT),'path':settings.MEDIA_ROOT},context_instance=RequestContext(request))

def handle_uploaded_file(file,path=''):
    filename = file._get_name()
    destination_file = open('%s/%s' % (settings.MEDIA_ROOT, str(path) + str(filename)), 'wb+')
    for chunk in file.chunks():
        destination_file.write(chunk)
    destination_file.close()

所以谁能告诉我,如何转换任何类型的上传视频(格式如 flv3gpMXF 等) 到 MP4 格式,然后存储到 django 中的 media 文件夹中?

最佳答案

import subprocess
subprocess.call('ffmpeg -i video.flv video.mp4') 

关于python - 使用python在django中将任何格式(flv、3gp、MXF等)的视频转换为MP4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15264508/

相关文章:

python - 如何在一个 Django HttpResponse 中返回两个变量?

python - 从 Python 脚本运行 .sh 文件?

python - 删除 Numpy 数组中的 NaN 和 Infs

PHP fatal error : Call to undefined function test_input() in C:\wamp\www\web\new9. php 第 11 行

html - 当我在 Sharepoint Webpart 页面设计中编写相同的 Aspx 代码时,为什么会有轻微的变化?

python - HTML 没有应用 CSS

python - View 如何调用 django 中的函数(不是 View )?

python - 如何在 Python 中进行 Obj-C 分类?

python - 通过tor发出请求,requests.exceptions.ConnectionError Errno 61 : Connection Refused

php - 只有 txt 文件的最后一部分是 if 语句可读的