Я частично создал функцию aws лямбда, которая использует видеоролик для конкатенации изображений и видео в одном видеофайле.Невозможно изменить размер видео с помощью moviepy на aws lambda
Например, у меня есть «img1.jpeg», «img2.jpeg», «video1.mp4» и «video2.mp4». После обработки вышеуказанных файлов конечный клип (файл mp4) будет представлять собой один файл mp4: «img1.jpeg + video1.mp4 + img2.jpeg + video2.mp4». Разрешение резкого разрешения 640x480.
Таким образом, я изменяю размер видео и изображений (moviepy.video.fx.all.resize - изменяет размер изображений после преобразования в видео) в случае, если они больше, чем вышеупомянутое разрешение. Если медиафайлы находятся в указанном выше размере, я перехожу к процессу конкатенации.
Когда медиафайлы имеют размер 640x480, весь процесс идет нормально. Вопрос в том, когда средства массовой информации больше, чем 640х480 я получаю сообщение об ошибке:
[Errno 32] Broken pipe
MoviePy error: FFMPEG encountered the following error while writing file 1_img_transTEMP_MPY_wvf_snd.mp3:
1_img_transTEMP_MPY_wvf_snd.mp3: Permission denied
The audio export failed, possily because the bitrate you specified was two high or too low for the video codec.: IOError
Traceback (most recent call last):
File "/var/task/media_merge.py", line 70, in handler
s.do_merge()
File "/var/task/mediamerge/stitch_video_and_images.py", line 320, in do_merge
self.convert_crop_media()
File "/var/task/mediamerge/stitch_video_and_images.py", line 310, in convert_crop_media
res_path = resize.resize_media()
File "/var/task/mediamerge/stitch_video_and_images.py", line 229, in resize_media
self.final_media_file, verbose=False)
File "<decorator-gen-51>", line 2, in write_videofile
File "/var/task/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "<decorator-gen-50>", line 2, in write_videofile
File "/var/task/moviepy/decorators.py", line 137, in use_clip_fps_by_default
return f(clip, *new_a, **new_kw)
File "<decorator-gen-49>", line 2, in write_videofile
File "/var/task/moviepy/decorators.py", line 22, in convert_masks_to_RGB
return f(clip, *a, **k)
File "/var/task/moviepy/video/VideoClip.py", line 331, in write_videofile
verbose=verbose)
File "<decorator-gen-73>", line 2, in write_audiofile
File "/var/task/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "/var/task/moviepy/audio/AudioClip.py", line 204, in write_audiofile
verbose=verbose, ffmpeg_params=ffmpeg_params)
File "<decorator-gen-70>", line 2, in ffmpeg_audiowrite
File "/var/task/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "/var/task/moviepy/audio/io/ffmpeg_audiowriter.py", line 162, in ffmpeg_audiowrite
writer.write_frames(chunk)
File "/var/task/moviepy/audio/io/ffmpeg_audiowriter.py", line 122, in write_frames
raise IOError(error)
IOError: [Errno 32] Broken pipe
MoviePy error: FFMPEG encountered the following error while writing file 1_img_transTEMP_MPY_wvf_snd.mp3:
1_img_transTEMP_MPY_wvf_snd.mp3: Permission denied
The audio export failed, possily because the bitrate you specified was two high or too low for the video codec.
выше составляет от бревен AWS лямбда. Самое смешное, что, когда я запускал его локально, он работает.
Неужели кто-нибудь сталкивался с подобной проблемой или кто-нибудь может дать мне несколько указаний о том, как решить эту проблему?
Кстати, игнорировать последнюю строку о битрейт аудио. Это всего лишь общий комментарий. – tburrows13