summaryrefslogtreecommitdiffstats
path: root/README
blob: 4ef5a6c28040bfee28c901f8abb704801284ff81 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115

	ooooooooooo oooooooooo	ooooooooooo
	88  888	 88  888    888 88  888	 88
	    888	     888oooo88	    888
	    888	     888    888	    888
	   o888o    o888ooo888	   o888o

		Time Based Text    v1.1

               http://tbt.dyne.org


Our objective here is to carry more information in written text.

The solution proposed: record performance  time in text and vehicle it
as additional information.

Saving and reproducing every single action during the composition of a
text let us vehicle emphasis in written communication.

As  this  simple  concept,   our  implementation  is  also  kept  very
minimalistic while we welcome programmers to embed it in communication
applications.

The basic implementation  is written in thread-safe POSIX  C++ and can
be  ported  to  most  platforms.   It is  also  included  a  graphical
implementation  in python-GTK.  Please refer  to the  manual  for more
information.



::::: COMPILE THE SOURCE

If  you  have  a  sane  GNU/GCC compile  environment[*]  cd  into  the
sourcecode directory and type:

$ make

requirements are:

- C++ compiler (g++)
- S-Lang libraries (text console handling) (libslang2-dev or so)

[*] GNU/Linux, BSD, Apple/OSX with XCode, CygWin with GCC




::::: VISIONS (so far)

- Mail client plugin (editor and viewer)
- ASCII Art, Poetry, Empathy
- TeleText (the next generation)
- Educational purposes
- Multipurpose granular time based protocol

TBT is used in an on-site interactive art installation
If interested, please don't hesitate to contact us.

::::: PROTOCOL

In the .tbt format, text is saved with a timestamp for each letter:

     _________ ___________ 
    |  u-int  |   u-int   |
    |  64bit  |   64bit   |    m-seconds = 1/1000 of a second
     --------- -----------
    |  char   | m-seconds |    char = ASCII or higher bit char code
     --------- -----------
    |    Total: 128bit    |
     ---------------------

Input is captured  from the console, but can  be extended to intercept
any application using some h4x0r keylogging technique on different OS.

Export  functionality  to  different  formats is  provided,  including
generation of web-ready code in HTML and Javascript.


:::: TODO

In case  of a multipurpose protocol  for tagging time  based events of
variable size and type, we should introduce the use of a header.  This
might also  help distinguishing among  different key code  maps.  With
0.7 development reached a sufficiently advanced status, following some
more debugging it  will be tagged as 1.0 - so  basically the change of
the protocol will be an aim for the development of TBT 2.0 .



::::: DISCLAIMER

TBT - Time Based Text is Copyright (C) 2006 - 2012 by Jaromil


This  source code  is free  software; you  can redistribute  it and/or
modify it  under the terms of  the GNU Public License  as published by
the Free Software Foundation; either  version 3 of the License, or (at
your option) any later version.

This source  code is distributed in  the hope that it  will be useful,
but  WITHOUT  ANY  WARRANTY;  without  even the  implied  warranty  of
MERCHANTABILITY or FITNESS FOR  A PARTICULAR PURPOSE.  Please refer to
the GNU Public License for more details.

You should have  received a copy of the GNU  Public License along with
this source  code; if not,  write to: Free Software  Foundation, Inc.,
675 Mass Ave, Cambridge, MA 02139, USA.

Distributed code includes contributions by:
 JoDi, Angelo Failla, Pablo Martines, Robin Gareus and Meinhard Benn
please refer to the included AUTHORS file for complete information.

Artwork commissioned by the Impakt.nl festival.