将下面python3代码合并后的文件名修改为大写并输出完整代码import osimport globfrom natsort import natsorted# 当前文件夹下的所有mp4路径L = dir_path = home115upfor root dirs files in oswalkdir_path files = natsortedfiles for file in f
IMPORT OS IMPORT GLOB FROM NATSORT IMPORT NATSORTED
当前文件夹下的所有mp4路径
L = [] DIR_PATH = '/HOME/115/UP' FOR ROOT, DIRS, FILES IN OS.WALK(DIR_PATH): FILES = NATSORTED(FILES) FOR FILE IN FILES: IF OS.PATH.SPLITEXT(FILE)[1] == '.MP4': FILE_PATH = OS.PATH.JOIN(ROOT, FILE) L.APPEND(FILE_PATH)
生成ffmpeg命令
COMMANDS = [] FOR L IN L: TS_FILE = OS.PATH.JOIN(OS.PATH.DIRNAME(L), OS.PATH.BASENAME(L).REPLACE('.MP4', '.TS')) COMMANDS.APPEND(F"FFMPEG -I "{L}" -VCODEC COPY -ACODEC COPY -BSF:V H264_MP4TOANNEXB "{TS_FILE}"")
CONCAT_COMMAND = F'FFMPEG -I "CONCAT:{"|".JOIN([OS.PATH.JOIN(OS.PATH.DIRNAME(L), OS.PATH.BASENAME(L).REPLACE(".MP4", ".TS")) FOR L IN L])}" -ACODEC COPY -VCODEC COPY -BSF:A AAC_ADTS2ASC "{OS.PATH.JOIN(DIR_PATH, OS.PATH.SPLITEXT(OS.PATH.BASENAME(L[0]))[0][:-1] + ".MP4")}"'
执行ffmpeg命令
FOR COMMAND IN COMMANDS: OS.SYSTEM(COMMAND)
OS.SYSTEM(CONCAT_COMMAND)
删除ts文件
FOR TS_FILE IN GLOB.GLOB(OS.PATH.JOIN(DIR_PATH, '*.TS')): OS.REMOVE(TS_FILE
原文地址: https://www.cveoy.top/t/topic/cOjs 著作权归作者所有。请勿转载和采集!