TypeError: объект 'функция' не подлежит подписке python. Я пытаюсь объединить каждый файл .mp4 в одно видео - PullRequest
2 голосов
/ 29 мая 2020

Я пытаюсь объединить каждый файл .mp4 в папке certin в один файл .mp4

video_files = glob.glob("*.mp4")
print(video_files)


final = concatenate_videoclips[video_files]
final.write_videofile("new.mp4", codec="libx264") 

Я получаю ошибку

final = concatenate_videoclips[video_files];
TypeError: 'function' object is not subscriptable

, если бы кто-нибудь мог объясните, что я делаю не так, я был бы признателен

1 Ответ

2 голосов
/ 29 мая 2020

Во-первых, индексируемая часть означает, что вы должны использовать ( и ) вместо [ и ]. Во-вторых, вы не можете просто поместить имена файлов в функцию, вам нужно сначала преобразовать их в VideoFileClip:

# from moviepy.editor import VideoFileClip,concatenate_videoclips
# import glob

video_files = glob.glob("*.mp4")

clips = []

for clip in video_files: # For each mp4 file name
    clips.append(VideoFileClip(clip)) # Store them as a VideoFileClip and add to the clips list


final = concatenate_videoclips(clips) # Concatenate the VideoFileClips
final.write_videofile("new.mp4", codec="libx264") 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...