 blind

suckless command-line video editing utility
git clone git://git.suckless.org/blind
Log | Files | Refs | README | LICENSE

1 .TH BLIND-SPIRAL-GRADIENT 1 blind
2 .SH NAME
3 blind-spiral-gradient - Generate a video with a spiral gradient
4 .SH SYNOPSIS
6 [-s
7 .I spirals
8 | -t]
9 [-al]
10 -w
11 .I width
12 -h
13 .I height
14 .SH DESCRIPTION
16 prints a video with a spiral gradient to stdout,
17 parameters for each from is read from each frame
18 in stdin. The gradient is stored in all channels
19 of the video.
20 .P
21 The video in stdin must contain 2 to 5 pixels per
22 frame (inclusively). The first pixel shall point
23 to the beginning of the gradient (where the value
24 is 0) and the second pixel shall point to the end
25 of the gradient (where the value is 1). In these
26 pixels, the value of the first channel specifies
27 the X-position and the value of the second
28 channel specifies Y-position, the other channels
29 are ignored. The angle of the vector between these
30 two pixels determine the angle of the spiral.
31 .P
32 If there are four or five pixel in each frame in
33 stdin, the third and fourth pixels are used to
34 modify the shape of the spiral so that it is
35 based on a superellipse instead of a circle.
36 The first and second channel of third pixel creates
37 a vector that is normalised. This vector and its
38 normal creates the basis of an imaginary coordinate
39 system with its origo at the beginning of the spiral.
40 The superellipse defined by the equation
41 .RI | x |^ a +| y / m |^ b =1,
42 where
43 .I x
44 is the distance from origo along the vector,
45 .I y
46 is the distance from origo along the vector's normal,
47 .IR a ,
48 .IR b ,
49 and
50 .I m
51 are the values of the first, second, and third
52 channels, respectively, in the fourth pixel. and has
53 the distance 1 from origo at all points on it. If
54 .IR a ,
55 .IR b ,
56 and
57 .I m
58 have the values 2, 2, and 1, respectively, these
59 pixels have no effect on the spiral's shape.
60 The third and fourth channels in the third pixel
61 and the fourth channel in the fourth pixel are
62 ignored.
63 .P
64 If there are three or five pixels, the channels,
65 in order, in the last pixel, specifies the value
66 .IR a ,
67 .IR e ,
68 .IR p ,
69 and
70 .IR k ,
71 whose default values are 0, 1, 1, and 1, respectively.
72 .I k
73 is ignored unless
74 .B -l
75 is used. If
76 .B -l
77 is not used, the spiral is defined by the equation
78 .IR r = a +( b /( 2\fBpi\fP )^ e ) v ^( ep ).
79 If
80 .B -l
81 is used, the spiral is defined by the equation
82 .RI log( r / k )= a +(log( b )/( 2\fBpi\fP )^ e ) v ^( ep ).
83 .I r
84 is defined as the distance from the center of the
85 spiral,
86 .I b
87 is defined as the distance between the points
88 specified in the first and second pixel from stdin,
89 and
90 .I v
91 is defined as the angle.
92 .SH NOTES
93 Pixels after the end of the gradient have values
94 larger than 1.
95 .BR blind-*-wave (1)
96 commands can be used to put all values between
97 0 and 1.
98 .SH OPTIONS
99 .TP
100 .B -a
101 Create a spiral that gones anticlockwise.
102 .TP
103 .B -l
104 Create a logarithmic spiral.
105 .TP
106 .BR -s " "\fIspirals\fP
107 Draw
108 .I spirals
109 spirals
110 going out the specified centre instead of
111 just one spiral. The spirals are uniformly
112 distributed.
113 .I spirals
114 can be any non-zero real number.
115 .TP
116 .B -t
117 Base the resulting values only on the angle
118 in the spiral formula rather than then both
119 the angle and radius. This is useful for
120 creating transitions with spiral effects.
121 .TP
122 .BR -w " "\fIwidth\fP
123 The width of the video, in pixels.
124 .TP
125 .BR -h " "\fIheight\fP
126 The height of the video, in pixels.
127 .SH NOTES
128 Because
129 .B -s
130 has no affect when
131 .B -t
132 is applied,
133 .B -s
134 and
135 .B -t
136 cannot be combined unless
137 .I spirals
138 is 1. This will change in the future
139 if a way to meaningfully combined the
140 two flags is found.
142 .BR blind (7),
143 .BR blind-from-text (7),
144 .BR blind-cone-gradient (1),
145 .BR blind-linear-gradient (1),