start page of documentation
Stefan Schuermans

Stefan Schuermans commited on 2011-11-19 17:19:15
Showing 1 changed files, with 132 additions and 0 deletions.

... ...
@@ -0,0 +1,132 @@
1
+<html>
2
+  <head>
3
+    <title>Blinker</title>
4
+  </head>
5
+  <body>
6
+    <h1>Blinker</h1>
7
+    <p>
8
+      Blinker is a server for LED projects and Blinken-houses that are driven
9
+      by Blinkenlights network streams.
10
+    </p>
11
+    <h2>Overview</h2>
12
+    <p>
13
+      Blinker is based on different modules, which can be connected via
14
+      streams.
15
+      Several types of modules are available, for example a movie player,
16
+      a network stream sender, modules to mix and separate streams.
17
+    </p>
18
+    <h2>Getting Started</h2>
19
+    <p>
20
+      As Blinker uses BlinkenLib to perform the low-level operations
21
+      on Blinken movies and Blinken streams, BlinkenLib has to be
22
+      installed first.
23
+    </p>
24
+    <p>
25
+      Go to the <code>src</code> directory and type <code>make</code>.
26
+      This should compile Blinker and produce a binary <code>Blinker</code>
27
+      in this directory.
28
+    </p>
29
+    <p>
30
+      Start Blinker using the example configuration directory using
31
+      <code>./Blinker ../example_cfg</code>.
32
+      You should see a small test movie appearing on standard output
33
+      (printed there by a printer module).
34
+      Other movies are sent as MCUF streams over UDPv4, one stream
35
+      is sent to <code>127.0.0.1:2323</code>.
36
+    </p>
37
+    <h2>Streams</h2>
38
+    <p>
39
+      Every stream is identified by a name and works like a TV program.
40
+      A source creates the content and uses the stream to distribute
41
+      it to its receivers.
42
+      A single stream can have any number of receivers, they all receive the
43
+      same content.
44
+      Usually, there should be only one provider of content for a single
45
+      stream.
46
+      If multiple parties send video frames to the stream, the frames
47
+      are mixed, which is most likely not what you want.
48
+    </p>
49
+    <h2>Configuration Directory</h2>
50
+    <p>
51
+      The configuration of blinker is not stored in a single file, but in a
52
+      directory structure, reflecting the inner structure of Blinker's
53
+      modules.
54
+      This way, every module has got its own configuration directory
55
+      containing single files each containing one simple setting.
56
+      It the module has some internel structure, those config setting
57
+      files are organized in a directory structure underneath the module's
58
+      configuration directory.
59
+    </p>
60
+    <p>
61
+      The main config directory contains a directory for each module
62
+      class, e.g. <code>players</code> for movie player modules.
63
+      Inside, there is an arbitrary number of subdirectories, one
64
+      for each instantance of the player module.
65
+      E.g. the <code>players/stereoscope</code> directory in the example
66
+      configuration (<code>example_cfg</code> directory in the top level)
67
+      contains the configuration of the movie player for Blinkenlights
68
+      stereoscope movies.
69
+    </p>
70
+    <p>
71
+      Reconfiguration can happen at runtime by just changing the configuration
72
+      directory.
73
+      Blinker will detect those changes and adapt its operation to the new
74
+      configuration without restart.
75
+      <br>
76
+      Sometimes, especially after an invalid configuration has been seen by
77
+      Blinker, changes are not automatically detected by Blinker.
78
+      In this case, it is neccessary to <code>touch</code> the parent
79
+      directory containing the setting file to make Blinker aware of
80
+      the reconfiguration.
81
+      (Solving this issue is planned.)
82
+    </p>
83
+    <h2>Modules</h2>
84
+    <p>
85
+      The following module types are available for instantiation:
86
+      <ul>
87
+        <li>TODO</li>
88
+      </ul>
89
+    </p>
90
+    <h2>Copyright / Copyleft</h2>
91
+    <p>
92
+      Blinker<br>
93
+      Copyright 2011 Stefan Schuermans &lt;stefan@blinkenarea.org&gt;<br>
94
+      Copyleft GNU public license - http://www.gnu.org/copyleft/gpl.html<br>
95
+      a blinkenarea.org project
96
+    </p>
97
+    <h2>Links</h2>
98
+    <ul>
99
+      <li>
100
+        <a href=https://git.blinkenarea.org/?p=Blinker">
101
+          Blinker GIT repository
102
+        </a>
103
+      </li>
104
+      <li>
105
+        <a href=https://git.blinkenarea.org/?p=BlinkenLib">
106
+          BlinkenLib GIT repository
107
+        </a>
108
+      </li>
109
+      <li>
110
+        <a href=https://wiki.blinkenarea.org/index.php/Protocols">
111
+          Information about Blinken protocols
112
+        </a>
113
+      </li>
114
+      <li>
115
+        <a href=https://wiki.blinkenarea.org/index.php/DateiformateEnglish">
116
+          Information about Blinken movie file formats
117
+        </a>
118
+      </li>
119
+      <li>
120
+        <a href=https://www.blinkenarea.org/">
121
+          BlinkenArea is a group of people building and operating Blinken stuff
122
+        </a>
123
+      </li>
124
+      <li>
125
+        <a href=http://www.blinkenlights.de/">
126
+          Project BlinkenLights kicked off the whole Blinken story
127
+        </a>
128
+      </li>
129
+    </ul>
130
+  </body>
131
+</html>
132
+
0 133