rezoo / movis

Python library for video editing, presentation video generation, motion graphics, shader art coding, and other video production tasks
https://rezoo.github.io/movis/
MIT License
319 stars 17 forks source link

scene.write_video Error #38

Closed lsdlh closed 7 months ago

lsdlh commented 7 months ago

layer = mv.layer.Video(r'D:\video\2\07.mp4') scene = mv.trim(layer, start_times=[0.0, 2.0], end_times=[1.0, 3.0]) scene.write_video('06.mp4')

C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\movis\layer\media.py:358: FutureWarning: PySoundFile failed. Trying audioread instead. Audioread support is deprecated in librosa 0.10.0 and will be removed in version 1.0. duration = librosa.get_duration(path=str(self._audiofile)) C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\movis\layer\media.py:336: UserWarning: PySoundFile failed. Trying audioread instead. audio, = librosa.load(str(self._audio_file), sr=AUDIO_SAMPLING_RATE, mono=False) C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\librosa\core\audio.py:183: FutureWarning: librosa.core.audio.audioread_load Deprecated as of librosa version 0.10.0. It will be removed in librosa version 1.0. y, sr_native = audioread_load(path, offset, duration, dtype) 0%| | 0/60 [00:00<?, ?it/s]C:\Users\17632\AppData\Local\Temp\tmpy2kbmd1a.wav: Permission denied 2%|▏ | 1/60 [00:00<00:07, 7.83it/s] Traceback (most recent call last): File "C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\imageio_ffmpeg_io.py", line 630, in write_frames p.stdin.write(bb) OSError: [Errno 22] Invalid argument

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "D:\ttdxg\Python\editvideo\test.py", line 61, in scene.write_video('06.mp4') File "C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\movis\layer\composition.py", line 479, in write_video self._write_video(start_time, end_time, fps, writer) File "C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\movis\layer\composition.py", line 410, in _write_video writer.append_data(frame) File "C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\imageio\core\format.py", line 590, in append_data return self._append_data(im, total_meta) File "C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\imageio\plugins\ffmpeg.py", line 600, in _append_data self._write_gen.send(im) File "C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\imageio_ffmpeg_io.py", line 637, in write_frames raise IOError(msg) OSError: [Errno 22] Invalid argument

FFMPEG COMMAND: C:\Users\17632\AppData\Roaming\Python\Python310\site-packages\imageio_ffmpeg\binaries\ffmpeg-win64-v4.2.2.exe -y -f rawvideo -vcodec rawvideo -s 1920x1080 -pix_fmt rgba -r 30.00 -i - -i C:\Users\17632\AppData\Local\Temp\tmpy2kbmd1a.wav -vcodec libx264 -pix_fmt yuv420p -v error -map 0:v:0 -map 1:a:0 D:\ttdxg\Python\editvideo\06.mp4

FFMPEG STDERR OUTPUT:

rezoo commented 7 months ago

I am concerned about C:\Users\17632\AppData\Local\Temp\tmpy2kbmd1a.wav: Permission denied. Can you try scene.write_video('06.mp4', audio=False) and see if that works?

lsdlh commented 7 months ago

I am concerned about C:\Users\17632\AppData\Local\Temp\tmpy2kbmd1a.wav: Permission denied. Can you try scene.write_video('06.mp4', audio=False) and see if that works?

audio=False will not report wrong

rezoo commented 7 months ago

I understand. This is probably due to differences in the tempfile module on Windows. I currently don't have Windows so I might be wrong, but I would like to address it.

rezoo commented 7 months ago

https://github.com/rezoo/movis/pull/39 I merged this PR. Can you try it in the recent repository?

lsdlh commented 7 months ago

39 我合并了这个PR。您可以在最近的存储库中尝试一下吗?

No problem, it's working normally.