Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
|
|
Thread Tools | Search this Thread | Display Modes |
![]() |
#1 | Link |
Chiptuner & VapourSynther
Join Date: Mar 2019
Location: Scarlet Devil Mansion, Gensōkyō
Posts: 52
|
vapoursynth.VideoNode object does not support item assignment
Three years ago (or maybe more), HolyWu had written some helper function for looping still images with RGB & alpha layers:
Code:
# HolyWu's helper function for looping an RGB+alpha still image def loop_vfx(c, times): c[0] = c[0] * times c[1] = c[1] * times return c Code:
2022-08-16 20:45:59.749 setVideoInfo: Video filter Source has more than one output node but only the first one will be returned setVideoInfo: Video filter Source has more than one output node but only the first one will be returned 2022-08-16 20:45:59.797 Failed to evaluate the script: Python exception: 'vapoursynth.VideoNode' object does not support item assignment Traceback (most recent call last): File "src\cython\vapoursynth.pyx", line 2890, in vapoursynth._vpy_evaluate File "src\cython\vapoursynth.pyx", line 2891, in vapoursynth._vpy_evaluate File "D:\fakepath\TH09_07.VPY", line 54, in ChanLabelLoop = loop_vfx(ChannelLabels,9156) File "D:\fakepath\TH09_07.VPY", line 12, in loop_vfx c[0] = c[0] * times TypeError: 'vapoursynth.VideoNode' object does not support item assignment 2022-08-16 20:45:59.888 Core freed but 1 filter instance(s) still exist Core freed but 1 filter instance(s) still exist Code:
import vapoursynth as vs from vapoursynth import core import vsutils as vsu import havsfunc as haf import functools import sys import math vsufuncs = vsu.vsutils() # HolyWu's helper function for looping an RGB+alpha still image def loop_vfx(c, times): c[0] = c[0] * times c[1] = c[1] * times return c # corrscope oscilloscope video Corrscope = core.ffms2.Source(r'E:\corrscope\TH09_07.MKV') # 60 fps, RGB CorrscopeCrop = Corrscope[8626:17782] # total 9156 frames # corrscope channel-label overlay (RGB+alpha) ChannelLabels = core.ffms2.Source(r'E:\corrscope\5FM+3SSG+ADPCM+RHY.png',alpha=True) ChanLabelLoop = loop_vfx(ChannelLabels,9156) #invoking here HolyWu’s function ChanLabelRGB = ChanLabelLoop[0].std.AssumeFPS(fpsnum=60,fpsden=1) ChanLabelMask = ChanLabelLoop[1].std.AssumeFPS(fpsnum=60,fpsden=1) # match frame rate to corrscope video # Overlay channel labels onto corrscope segment Loop2 = haf.Overlay(CorrscopeCrop,ChanLabelRGB,mask=ChanLabelMask) Loop2.set_output()
__________________
SilSinn9801 a.k.a. Silent Sinner in Scarlet Discord: silsinn9801 Matrix: silsinn9821:matrix.org YouTube: https://youtube.com/SilentSinnerInScarlet ニコニコ動画: https://nicovideo.jp/user/68029427 Last edited by SilSinn9801; 17th August 2022 at 09:38. Reason: linking back to the only surviving quote of HolyWu’s loop_vfx function (after he deleted all of his posts on this forum) |
![]() |
![]() |
Tags |
holywu, item assignment, loop_vfx, vapoursynth r59, videonode |
Thread Tools | Search this Thread |
Display Modes | |
|
|