cutcutcodec.core.filter.video.add.FilterVideoAdd
- class cutcutcodec.core.filter.video.add.FilterVideoAdd(in_streams: Iterable[Stream])[source]
Combine the stream in once by additing the overlapping slices.
Examples
>>> from cutcutcodec.core.filter.video.add import FilterVideoAdd >>> from cutcutcodec.core.filter.video.delay import FilterVideoDelay >>> from cutcutcodec.core.generation.video.equation import GeneratorVideoEquation >>> >>> (s_video_0,) = GeneratorVideoEquation("(i+1)/2", "1/2").out_streams >>> (s_video_1,) = FilterVideoDelay( ... GeneratorVideoEquation("(j+1)/2", "1/2").out_streams, 10 ... ).out_streams >>> (s_add_video,) = FilterVideoAdd([s_video_0, s_video_1]).out_streams >>> >>> s_video_0.snapshot(10, (2, 2)) FrameVideo(10, [[[ 0, 128], [ 0, 128]], [[255, 128], [255, 128]]]) >>> s_video_1.snapshot(10, (2, 2)) FrameVideo(10, [[[ 0, 128], [255, 128]], [[ 0, 128], [255, 128]]]) >>> s_add_video.snapshot(10, (2, 2)) FrameVideo(10, [[[ 0, 191], [ 85, 191]], [[170, 191], [255, 191]]]) >>>
Initialise and create the class.
Parameters
- in_streamstyping.Iterable[Stream]
Transmitted to
cutcutcodec.core.classes.filter.Filter. About the overlaping portions, if the stream is an audio stream, a simple addition is performed but if the stream is a video stream, the frames are combined like a superposition of semi-transparent windows.