从视频文件中提取块

时间:2012-01-10 12:55:55

标签: python video extraction

是否可以编写获取视频文件(mpg,avi,wmv,mov等)的Python代码和时间间隔(例如从5_min-10_secs-11_ms到10-min_15-secs-40_ms)并创建一个这个间隔的小视频?

我知道这可以用ffmpeg,mencoder和其他程序,但我想在Python代码中这样做。

1 个答案:

答案 0 :(得分:1)

使用“python库编辑视频文件”的Google搜索引导我回到SO:

除了从库中获取此类功能外,我还经常使用系统调用(os.system或subprocess)来调用mencoder或ffmpeg。您可以使用pythonesque伪代码编写一个函数来执行此操作:

def getVideoChunk(filepath, timerange, outputfile):
    retcode = systemcall("ffmpeg %s %s", filepath, timerange, outputfile)
    return retcode

当然,你需要选择一种运行tge systemcall的方法,你需要学习一些ffmpeg语法。

编辑(基于评论)假设mmpeg的语法如下:

ffmpeg -i input.mpg -sameq -ss 00:02:00 -t 00:02:00 output.mpg

电话会是:

getVideoChunk("input.mpg", "00:02:00", "output.mpg")

并且系统调用位看起来像(注意我使用os.system):

os.system("ffmpeg -i %s -sameq -ss %s -t %s %s" % (filepath, timerange, timerange, outputfile))

请注意,这段代码也是pseuodo python代码,我还没有测试过......代码纯粹是教学代码。

相关问题