Python 视频文件的分割和合并

2023-01-31 02:01:45 合并 分割 视频文件

import os;

import time;

os.system('start "wmplayer.exe", "F:\\abc.mp4"');


--分割代码 start----

import sys,os;

kilobytes = 1024;

megabytes = kilobytes*1024;

chunksize = int(10*megabytes);


def split(fromfile,todir,chunksize=chunksize):

if not os.path.exists(todir):

os.mkdir(todir) 

else:

for fname in os.listdir(todir):

os.remove(os.path.join(todir,fname))


partnum = 0

inputfile = open(fromfile,"rb")

while True:

chunk = inputfile.read(chunksize)

if not chunk:

inputfile.close()

break

partnum += 1

filename = os.path.join(todir, ("abc%04d"%partnum))

print("我要显示的文件名称:"+filename)

fileobj = open(filename, "wb")

fileobj.write(chunk)

fileobj.close()

return partnum



if __name__=="__main__":

fromfile = "F:\\abc.mp4"

todir = "F:\\split_parts\\"

#chunksize = int(5000000)

absfrom,absto = map(os.path.abspath,[fromfile,todir])

print('分割:',absfrom,'to',absto,'by',chunksize)


try:

parts = split(fromfile,todir,chunksize)

except:

print('Error during split:')

print(sys.exc_info()[0],sys.exc_info()[1])

else:

print('分割完成:',parts,'parts are in',absto)


--合并代码 start----

import sys,os

def joinfile(fromdir,filename,todir):

if not os.path.exists(todir):

os.mkdir(todir)

if not os.path.exists(fromdir):

print("合拼文件路径错误!")


outfile = open(os.path.join(todir,filename),"wb")

files = os.listdir(fromdir)

files.sort()

for file in files:

filepath = os.path.join(fromdir,file)

infile = open(filepath,"rb")

data = infile.read()

outfile.write(data)

infile.close()


outfile.close()



if __name__=="__main__":

fromdir = "F:\\split_parts\\"

todir = "F:\\split_parts\\"

filename = "abc.mp4"


try:

joinfile(fromdir,filename,todir)

except:

print("错误的连接文件:")

print(sys.exc_info()[0],sys.exc_info()[1])


相关文章