moviepy
moviepy copied to clipboard
Stuck on audio writing with multiple videos
Hello, I am new user so this can be unaccurate, but I think it's a bug. When I was writing one video it seems ok. If I try to concatenate more than one videos, it stucks on audio writing and gives this error: Code Snippet
//reading video files in for loop
video = mp.VideoFileClip(videoPath)
video.audio.write_audiofile("test.wav", 8000, 2)
// getting silence parts of videos in test.wav
// i think this part irrelevant but i can share if needed
clips = []
nullList = []
//cutting videos silence parts
if silence == nullList:
clips.append(video)
else:
for start, stop in silence[::-1]:
clips.append(video.cutout(start, stop))
//trying to concatenate video clips
finalClip = mp.concatenate_videoclips(clips)
finalClip.write_videofile("mynewvideo.mp4")
finalClip.close()
Error
Moviepy - Building video mynewvideo.mp4.
MoviePy - Writing audio in mynewvideoTEMP_MPY_wvf_snd.mp3
chunk: 71%|█████████████████████████████████▍ | 3169/4458 [00:09<00:01, 710.54it/s, now=None]Traceback (most recent call last):
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/io/readers.py", line 193, in get_frame
result[in_time] = self.buffer[indices]
IndexError: index -581536 is out of bounds for axis 0 with size 200000
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/kali/Documents/Github/test/main.py", line 36, in <module>
finalClip.write_videofile("mynewvideo.mp4")
File "<decorator-gen-55>", line 2, in write_videofile
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "<decorator-gen-54>", line 2, in write_videofile
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 135, in use_clip_fps_by_default
return f(clip, *new_a, **new_kw)
File "<decorator-gen-53>", line 2, in write_videofile
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 22, in convert_masks_to_RGB
return f(clip, *a, **k)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/video/VideoClip.py", line 293, in write_videofile
self.audio.write_audiofile(audiofile, audio_fps,
File "<decorator-gen-45>", line 2, in write_audiofile
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/AudioClip.py", line 206, in write_audiofile
return ffmpeg_audiowrite(self, filename, fps, nbytes, buffersize,
File "<decorator-gen-9>", line 2, in ffmpeg_audiowrite
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/io/ffmpeg_audiowriter.py", line 166, in ffmpeg_audiowrite
for chunk in clip.iter_chunks(chunksize=buffersize,
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/AudioClip.py", line 85, in iter_chunks
yield self.to_soundarray(tt, nbytes=nbytes, quantize=quantize,
File "<decorator-gen-44>", line 2, in to_soundarray
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 54, in requires_duration
return f(clip, *a, **k)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/AudioClip.py", line 127, in to_soundarray
snd_array = self.get_frame(tt)
File "<decorator-gen-11>", line 2, in get_frame
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 89, in wrapper
return f(*new_a, **new_kw)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/Clip.py", line 93, in get_frame
return self.make_frame(t)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/AudioClip.py", line 296, in make_frame
sounds = [c.get_frame(t - c.start)*np.array([part]).T
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/AudioClip.py", line 296, in <listcomp>
sounds = [c.get_frame(t - c.start)*np.array([part]).T
File "<decorator-gen-11>", line 2, in get_frame
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 89, in wrapper
return f(*new_a, **new_kw)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/Clip.py", line 93, in get_frame
return self.make_frame(t)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/Clip.py", line 136, in <lambda>
newclip = self.set_make_frame(lambda t: fun(self.get_frame, t))
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/Clip.py", line 187, in <lambda>
return self.fl(lambda gf, t: gf(t_func(t)), apply_to,
File "<decorator-gen-11>", line 2, in get_frame
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/decorators.py", line 89, in wrapper
return f(*new_a, **new_kw)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/Clip.py", line 93, in get_frame
return self.make_frame(t)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/io/AudioFileClip.py", line 77, in <lambda>
self.make_frame = lambda t: self.reader.get_frame(t)
File "/home/kali/Documents/Github/test/.venv/lib/python3.9/site-packages/moviepy/audio/io/readers.py", line 205, in get_frame
result[in_time] = self.buffer[indices]
IndexError: index -581536 is out of bounds for axis 0 with size 200000
Specifications
- Python Version: Python 3.9.12
- Moviepy Version: 1.0.3
- Platform Name: vscode
- Platform Version: 1.67.1
I encountered the same problem, have you solved it?
@jaysonteng I found a temporary solution. I was using Kali linux. I used the code on my windows devices. Sorry for not helping!
I encountered the same problem