Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FileNotFoundError: [Errno 2] No such file or directory: 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.bin' #38

Closed
Kendrick-Stein opened this issue Sep 22, 2023 · 9 comments

Comments

@Kendrick-Stein
Copy link

Thanks for publishing your great work. I would highly appreciate it if you could help me with the following problem.

I was trying to run the example code and ran into this werid problem. The first two steps went perfectly fine, but the third command line 'python rerender.py --cfg config/van_gogh_man.json -nr' simply won't work. I figured out it was trying to read the image in path "videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.jpg" and similarly in 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_31/0032.jpg'. but the file simply doesn't exist there.
I wonder what went wrong? Could it be in the first two steps?

terminal output
No module 'xformers'. Proceeding without it.
python video_blend.py videos/pexels-antoni-shkraba-8048492-540x960-25fps --beg 1 --end 101 --itv 10 --key keys --output videos/pexels-antoni-shkraba-8048492-540x960-25fps/blend.mp4 --fps 25.0 --n_proc 4 -ps
/home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.)
return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined]
/home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.)
return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined]
/home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.)
return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined]
/home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:478: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at /opt/conda/conda-bld/pytorch_1659484810403/work/aten/src/ATen/native/TensorShape.cpp:2894.)
return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined]
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_31/0031.jpg
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_81/0081.jpg
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0001.jpg
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_31/0032.jpg
Process Process-2:
Traceback (most recent call last):
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences
process_one_sequence(i, video_sequence)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence
cmd += ' ' + g.get_cmd(j, w)
File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd
warped_img = flow_calc.warp(prev_img, self.flows[i - 1],
File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp
if len(img.shape) == 2:
AttributeError: 'NoneType' object has no attribute 'shape'
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_81/0082.jpg
Process Process-4:
Traceback (most recent call last):
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences
process_one_sequence(i, video_sequence)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence
cmd += ' ' + g.get_cmd(j, w)
File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd
warped_img = flow_calc.warp(prev_img, self.flows[i - 1],
File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp
if len(img.shape) == 2:
AttributeError: 'NoneType' object has no attribute 'shape'
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_61/0061.jpg
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.jpg
Process Process-1:
Traceback (most recent call last):
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences
process_one_sequence(i, video_sequence)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence
cmd += ' ' + g.get_cmd(j, w)
File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd
warped_img = flow_calc.warp(prev_img, self.flows[i - 1],
File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp
if len(img.shape) == 2:
AttributeError: 'NoneType' object has no attribute 'shape'
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_61/0062.jpg
Process Process-3:
Traceback (most recent call last):
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences
process_one_sequence(i, video_sequence)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence
cmd += ' ' + g.get_cmd(j, w)
File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd
warped_img = flow_calc.warp(prev_img, self.flows[i - 1],
File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp
if len(img.shape) == 2:
AttributeError: 'NoneType' object has no attribute 'shape'
ebsynth: 3.1687724590301514
Traceback (most recent call last):
File "video_blend.py", line 319, in
main(args)
File "video_blend.py", line 268, in main
process_seq(video_sequence, i, blend_histogram, blend_gradient)
File "video_blend.py", line 199, in process_seq
dist1s.append(load_error(bin_a, img_shape))
File "video_blend.py", line 160, in load_error
with open(bin_path, 'rb') as fp:
FileNotFoundError: [Errno 2] No such file or directory: 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.bin'

@Kendrick-Stein
Copy link
Author

The first key frame and the following key frames look fine to me? I guess it went wrong from rendering the following frames from the first one. E.g. rendering the second frame based the first key frame does not save any pic, and when it wanted to continual the rendering process, it found out that there are no generated frames from the previous steps?
image

@williamyang1991
Copy link
Owner

In your case, some images are generated but somes are not, rather than missing all images. So the Ebsynth is installed correctly but fails on some sub Processes.
I'm not sure the exact reason. But when the workload is heavy or GPU is nearly out of usage, we observed similar cases occasionally. Since we are not the developer of Ebsynth, we don't know how to fix Ebsynth.

  • I think one solution is to use less multiprogress, like setting --n_proc 2 or --n_proc 1
  • Another naive solution is to manually run Ebsynth on the interval where images are missing. For example, if you find 0002 missing, you can run:
python video_blend.py videos/pexels-antoni-shkraba-8048492-540x960-25fps --beg 1 --end 11 --itv 10 --key keys --output videos/pexels-antoni-shkraba-8048492-540x960-25fps/blend.mp4 --fps 25.0 --n_proc 1 -ps

likewise, if you find 0012 missing, you can run:

python video_blend.py videos/pexels-antoni-shkraba-8048492-540x960-25fps --beg 11 --end 21 --itv 10 --key keys --output videos/pexels-antoni-shkraba-8048492-540x960-25fps/blend.mp4 --fps 25.0 --n_proc 1 -ps

And finally merge all results together into a single video.

@Kendrick-Stein
Copy link
Author

I was not able to run the Ebsynth on the interval using the command you suggest. It still encountered the same problem.

Based on the output, I guess it successfully read the pic 0001, but already failed to generate 0002? Is it a correct guess?

python video_blend.py videos/pexels-antoni-shkraba-8048492-540x960-25fps --beg 1 --end 11 --itv 10 --key keys --output videos/pexels-antoni-shkraba-8048492-540x960-25fps/blend.mp4 --fps 25.0 --n_proc 1 -ps
/home/smbu/anaconda3/envs/rerender/lib/python3.8/site-packages/torch/functional.py:504: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at ../aten/src/ATen/native/TensorShape.cpp:3190.)
return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined]
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0001.jpg
videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.jpg
Process Process-1:
Traceback (most recent call last):
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/home/smbu/anaconda3/envs/rerender/lib/python3.8/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 110, in process_sequences
process_one_sequence(i, video_sequence)
File "/home/smbu/mediadisk/Rerender_A_Video/video_blend.py", line 97, in process_one_sequence
cmd += ' ' + g.get_cmd(j, w)
File "/home/smbu/mediadisk/Rerender_A_Video/blender/guide.py", line 101, in get_cmd
warped_img = flow_calc.warp(prev_img, self.flows[i - 1],
File "/home/smbu/mediadisk/Rerender_A_Video/flow/flow_utils.py", line 188, in warp
if len(img.shape) == 2:
AttributeError: 'NoneType' object has no attribute 'shape'
ebsynth: 2.488335132598877
Traceback (most recent call last):
File "video_blend.py", line 319, in
main(args)
File "video_blend.py", line 268, in main
process_seq(video_sequence, i, blend_histogram, blend_gradient)
File "video_blend.py", line 199, in process_seq
dist1s.append(load_error(bin_a, img_shape))
File "video_blend.py", line 160, in load_error
with open(bin_path, 'rb') as fp:
FileNotFoundError: [Errno 2] No such file or directory: 'videos/pexels-antoni-shkraba-8048492-540x960-25fps/out_1/0002.bin'

@williamyang1991
Copy link
Owner

You can set OPEN_EBSYNTH_LOG = True to print more info

OPEN_EBSYNTH_LOG = False

@Kendrick-Stein
Copy link
Author

I was able to solve the problem by reinstalling the ebsynth!
Thanks for your timely reply.

@FeiiYin
Copy link

FeiiYin commented Jan 3, 2024

Hi, my ebsynth report that

./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version CXXABI_1.3.8' not found (required by ./deps/ebsynth/bin/ebsynth) 
./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.21' not found (required by ./deps/ebsynth/bin/ebsynth)

But I have CXXABI_1.3.7 and GLIBCXX_3.4.19 under /usr/lib64/libstdc++.so.6. Can someone hints me on how to set the parameters during installing? Thanks in advance!

@FeiiYin
Copy link

FeiiYin commented Jan 4, 2024

Hi, my ebsynth report that

./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version CXXABI_1.3.8' not found (required by ./deps/ebsynth/bin/ebsynth) 
./deps/ebsynth/bin/ebsynth: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.21' not found (required by ./deps/ebsynth/bin/ebsynth)

But I have CXXABI_1.3.7 and GLIBCXX_3.4.19 under /usr/lib64/libstdc++.so.6. Can someone hints me on how to set the parameters during installing? Thanks in advance!

Solved! I found that the gcc of installing environment is different from that in the running environment(in Docker). Reinstalling will solve the problem.

@VH12138
Copy link

VH12138 commented Jan 10, 2024

I was able to solve the problem by reinstalling the ebsynth! Thanks for your timely reply.

Hi how did you reinstall?

@343195246
Copy link

Please move the ebsynth.exe file and the ebsynth.dll file to . \\deps\\\ebsynth\\bin\\ path.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants