Grundlegender Python-Code zum Verketten eines einfachen Filmclips und eines aus Bildern bestehenden Clips und zum anschließenden Versuch, das Ergebnis zu schreiben:
clip_group = []
bumper_clip = VideoFileClip(base_dir + 'resources/bumper.mp4')
bumper_clip = bumper_clip.with_effects([vfx.FadeIn(0.5), vfx.FadeOut(0.25)])
bumper_clip = bumper_clip.with_duration(bumper_clip.duration)
bumper_clip = bumper_clip.with_fps(24)
clip_group.append(bumper_clip)
title_blank = ImageClip(base_dir + 'resources/project_info.png').resized(width=bumper_clip.w, height=bumper_clip.h)
title_blank = title_blank.with_duration(4)
title_blank = title_blank.with_effects([vfx.FadeIn(0.25), vfx.FadeOut(0.25)])
main_title = ImageClip(base_dir + 'resources/title.png').resized(width=bumper_clip.w, height=bumper_clip.h)
main_title = main_title.with_duration(4)
main_title = main_title.with_effects([vfx.FadeIn(0.25), vfx.FadeOut(0.25)])
title_clip = CompositeVideoClip([title_blank, main_title], use_bgclip=True, size=[bumper_clip.w,bumper_clip.h])
title_clip = title_clip.with_fps(24)
title_clip = title_clip.with_duration(4)
title_clip = title_clip.with_audio(AudioFileClip(title_audio))
clip_group.append(title_clip)
final_title_clip = concatenate_videoclips(clip_group)
final_title_clip.write_videofile(output_clip, fps=24, logger=None)
Die Fehlermeldung ist etwas kryptisch. Die Dauern scheinen alle festgelegt zu sein (Audio?). Ich bin mir nicht sicher, auf welche „Eingabearray-Dimensionen“ Bezug genommen wird. Liegt ein offensichtliches Versehen vor?
Traceback (most recent call last):
File "F:\Temp\Python Projects\MovieEditor\main.py", line 59, in
final_title_clip.write_videofile(output_clip, fps=24, logger=None)
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\moviepy\decorators.py", line 53, in requires_duration
return func(clip, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\moviepy\decorators.py", line 143, in use_clip_fps_by_default
return func(clip, *new_args, **new_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\moviepy\decorators.py", line 24, in convert_masks_to_RGB
return func(clip, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\moviepy\decorators.py", line 94, in wrapper
return func(*new_args, **new_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\moviepy\video\VideoClip.py", line 391, in write_videofile
ffmpeg_write_video(
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\moviepy\video\io\ffmpeg_writer.py", line 263, in ffmpeg_write_video
frame = np.dstack([frame, mask])
^^^^^^^^^^^^^^^^^^^^^^^^
File "f:\Temp\Python Projects\MovieEditor\.venv\Lib\site-packages\numpy\lib\_shape_base_impl.py", line 726, in dstack
return _nx.concatenate(arrs, 2)
^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 0, the array at index 0 has size 1080 and the array at index 1 has size 1
Moviepy kann keine Verkettung eines einfachen Clips und eines zusammengesetzten Clips schreiben ⇐ Python
-
- Similar Topics
- Replies
- Views
- Last post