sminterpolate icon indicating copy to clipboard operation
sminterpolate copied to clipboard

Error: 'NoneType' object has no attribute 'data'

Open hengyu95 opened this issue 4 years ago • 4 comments

I get this error when trying to interpolate a video I've got. Weirdly it works when I tried it on a 10 second slice of the video.

I also tried copying the video to another .mkv container to no avail.

[butterflow:INFO]: <Rendering progress: 9.98%>
[butterflow:INFO]: <Rendering progress: 19.97%>
[butterflow:INFO]: <Rendering progress: 29.96%>
[butterflow:INFO]: <Rendering progress: 39.94%>
[butterflow:INFO]: <Rendering progress: 49.92%>
[butterflow:INFO]: <Rendering progress: 59.91%>
[butterflow:INFO]: <Rendering progress: 69.90%>
[butterflow:INFO]: <Rendering progress: 79.88%>
[butterflow:INFO]: <Rendering progress: 89.86%>
[butterflow:INFO]: <Rendering progress: 99.85%>
[butterflow:ERROR]: Couldn't read 23193 (will abort runs)
[butterflow:WARNING]: Setting B to None
[butterflow:WARNING]: B is None
[butterflow:INFO]: To write: S23192
[butterflow:WARNING]: Dropping S23192
[butterflow:INFO]: Run 23193 (this is the final run):
[butterflow:ERROR]: A is None
[butterflow:INFO]: To write: S23193
Traceback (most recent call last):
  File "C:/msys64/mingw64/lib/python2.7/site-packages/cx_Freeze/initscripts/Console.py", line 27, in <module>
  File "butterflow/__main__.py", line 12, in <module>
  File "butterflow/cli.py", line 441, in main
  File "C:/msys64/mingw64/lib/python2.7/timeit.py", line 237, in timeit
  File "C:/msys64/mingw64/lib/python2.7/timeit.py", line 202, in timeit
  File "C:/msys64/mingw64/lib/python2.7/timeit.py", line 100, in inner
  File "butterflow/render.py", line 467, in render
  File "butterflow/render.py", line 435, in render_subregion
AttributeError: 'NoneType' object has no attribute 'data'
[butterflow:INFO]: [Subprocess] Closing pipe to the video writer

hengyu95 avatar Feb 24 '20 06:02 hengyu95

I snipped the last few seconds off the clip and it now works. Maybe it was a problem with the video shrugs

hengyu95 avatar Feb 24 '20 07:02 hengyu95

I am also having this issue for videos that have been trimmed using ffmpeg fast seek methods. (AKA putting -ss / -to before the video input instead of after.)

cdgriffith avatar Oct 04 '20 14:10 cdgriffith

I noticed a similar issue (using "butterflow-0.2.4a4-win64"):

Traceback (most recent call last):
  File "C:/msys64/mingw64/lib/python2.7/site-packages/cx_Freeze/initscripts/__startup__.py", line 14
, in run
  File "C:/msys64/mingw64/lib/python2.7/site-packages/cx_Freeze/initscripts/Console.py", line 26, in
 run
  File "butterflow/__main__.py", line 34, in <module>
  File "butterflow/cli.py", line 442, in main
  File "C:/msys64/mingw64/lib/python2.7/timeit.py", line 237, in timeit
  File "C:/msys64/mingw64/lib/python2.7/timeit.py", line 202, in timeit
  File "C:/msys64/mingw64/lib/python2.7/timeit.py", line 100, in inner
  File "butterflow/render.py", line 467, in render
  File "butterflow/render.py", line 417, in render_subregion
AttributeError: 'NoneType' object has no attribute 'copy'
[butterflow:INFO]: [Subprocess] Closing pipe to the video writer

and I also used an input video that was trimmed using ffmpeg like this:

>ffmpeg -i "Clouds Loop Moving Background Animation Video Effects ~ #kZ12kRS1Dao{Channel Art Background_20180613}[22_720p30].mp4" -ss 20 -t 10 -c copy clouds_720p_10s.mp4
ffmpeg version 4.3.1-2020-11-19-full_build-www.gyan.dev

This command worked:

butterflow.exe -device 1 -v -r 2x -s a=5,b=5.5,spd=0.5:a=5.5,b=6,spd=0.1 -e -o out1.mp4 clouds_720p_10s.mp4

Yet this gave the error (with option -k):

butterflow.exe -device 1 -v -k -r 2x -s a=5,b=5.5,spd=0.5:a=5.5,b=6,spd=0.1 -e -o out2.mp4 clouds_720p_10s.mp4

I could pull the rendered video with 821 frames (0-820) from the cache though.

e-d-n-a avatar Mar 06 '21 06:03 e-d-n-a

Same. Input is an mp4 container from ffmpeg -ss -to.

butterflow.exe --subregions a=0,b=6,spd=1:a=6,b=8,spd=0.1:a=8,b=end,spd=1 in.mp4

or using the -k flag

butterflow.exe --keep-subregions --subregions a=6,b=8,spd=0.1 in.mp4

gives the OP error and no output. While simply leaving a few bits off the end (in.mp4 is 14.5 seconds long) works just fine

butterflow.exe --subregions a=0,b=6,spd=1:a=6,b=8,spd=0.1:a=8,b=14.4,spd=1 in.mp4

butterflow-0.2.4a4-win64

Kaarel avatar Feb 16 '22 22:02 Kaarel