【问题标题】:Python split video file into smaller partsPython将视频文件分割成更小的部分
【发布时间】:2018-02-01 12:07:21
【问题描述】:

我坚持使用我的项目(使用 Python-Django 的 Web 应用程序)使用 python 将大文件(比如 1GB)转换为小部分。我可以将大文件创建为更小的部分,但问题只是第 1 部分播放完毕,其余文件无法打开。

我知道我需要在视频数据之前指定视频信息,但我不知道如何。 下面是我的代码,有人帮助我如何将大文件拆分成更小的文件。

[N:B] 上传完成后,我需要从 django 视图中拆分视频

def video_segments(video):

    loc = settings.MEDIA_ROOT + '/' + format(video.video_file)
    filetype = format(video.video_file).split(".")
    data = None
    i = 0
    start_index = 0
    end_index = 1024000
    file = Path(loc)
    size = file.stat().st_size
    file = open(loc, "rb")
    while end_index < size:
        i=i+1
        file.seek(start_index)
        bytes = file.read(end_index-start_index)
        newfile = open(settings.MEDIA_ROOT+"/"+filetype[0]+format(i)+"."+filetype[1],"wb")
        newfile.write(bytes)
        start_index = end_index + 1
        end_index = end_index + 1024000
`   

【问题讨论】:

  • 所以你已经做到了,但你想知道怎么做?
  • @Goyo OP 声明“我知道我需要在视频数据之前指定视频信息,但我不知道如何。 ` 和 '其余文件将无法打开'。他们显然还没有解决他们的问题。
  • @AdiC 当然,否则他们不会问。我想说的是,这个问题根本不清楚。

标签: python django video split views


【解决方案1】:

我假设您正在为现代 www 浏览器提供诸如带有 MP4 标头的 H.264 之类的东西。

如果您将视频文件分成这样的部分,第二部分将没有任何标题,因此不会在任何浏览器中播放。

问题是你为什么要这样做。 通常,整个文件都提供给浏览器,浏览器通过 HTTP 部分文件检索获得所需的部分,现代浏览器足够智能,假设视频文件为此目的正确编码,则只获得所需的部分。

【讨论】:

  • 我需要文件的部分请求来寻找 django 不支持的视频,而且我的时间很紧。所以我认为将文件分成更小的部分并加载必要的部分可以解决我的问题暂时的问题@Jimmy Engelbrecht
猜你喜欢
  • 1970-01-01
  • 2020-12-25
  • 1970-01-01
  • 2022-01-12
  • 2021-01-16
  • 1970-01-01
  • 2013-07-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多