• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

sounds/H03-May-2022-

LICENSEH A D18-Jun-200817.6 KiB341281

READMEH A D18-Jun-20086.4 KiB189126

enscribe.cH A D18-Jun-200832 KiB1,4411,128

makefileH A D18-Jun-2008304 115

README

1Welcome to the wonderful world of Enscribe 0.1.0!
2
3Enscribe is free software, released under the General Public License. Make sure
4you read the file LICENSE which was included with this file. You should know
5that there is no warranty on theis software for any reason whatsoever. If it
6eats your dog, you're just out of luck.
7
8
9What does Enscribe do?
10
11Enscribe creates digital audio watermark images from photgraphic images.
12
13These images can only be seen using a third party frequency vs time display,
14such as my favorite, Baudline (http://www.baudline.com).
15
16Images are still visible even after such audio mangling techniques as MP3/Ogg
17compression, reverb, chorus, etc. Heavy EQ and flange can stripe out vertical
18sections, but they can also ruin an otherwise good song too.
19
20
21How does it work?
22
23You give it an image file (JPG, PNG, WBMP) and it outputs an audio file.
24
25The scanlines of the input image are converted into frequency components and
26then using an inverse Fast Fourier Transform, are converted into sound. The
27left side of the image is the low frequency end, and the right is the high end,
28up to just under the Nyquist limit if you want it to.
29
30Supported audio formats include Microsoft WAV, Apple AIFF, Sun Microsystems AU,
31and raw output. Raw output can also be sent to stdout.
32
33The audio images sound like high pitch buzzing or hissing.
34
35
36Colors!
37
38Because Baudline can display stereo images in two tone color (one for right,
39the other for left), color can be encoded into the audio file. It's not
40perfect, since there are only two color axes, and it is dependent upon your
41viewer, but it's still pretty cool. Baudline's default axes are green and
42purple, but I like red and cyan on my display.
43
44Erik Olson, the author of Baudline, had an interesting idea about encoding a
45third color channel using phase lag between the left and right channels. Using
46the "-monet" switch in Baudline activates a psuedo-third color channel based on
47the differences in those signals. While I'm still having trouble with getting
48the hues right, it still looks dang cool.
49
50Here are the relevent switches:
51
52	enscribe -color=monet
53	baudline -monet
54
55
56Okay, what can I do with this software?
57
58You can use software such as Ardour or Audacity to blend this audio file in
59with another, thereby marking the audio with secret messages or pictures of
60your dog.
61
62You can put copyright information in also, but it probably wouldn't be long
63before someone figures out how to erase those (C) watermarks.
64
65
66Compiling
67
68Enscribe is distributed as source. To compile it, you need gcc and the
69following software libraries installed:
70
71	gd
72	gd-devel
73	libsndfile
74
75All are available through http://freshmeat.net
76
77When ready, type
78
79	make
80
81And if you want it available system wide, as root type
82
83	make install
84
85
86Usage and Options
87
88Enscribe has quite a few options, to see them all, type "enscribe -help"
89
90Here's a sample:
91
92
93Enscribe 0.1.0      (c) 2004-2008 Jason Downer
94Homepage: http://jbd.zayda.net/enscribe/
95
96This is ALPHA software.
97
98Enscribe is free software, distributed under the General Public License.
99
100There is NO warranty; not even for MERCHANTABILITY or FITNESS
101FOR A PARTICULAR PURPOSE.
102
103Usage:  enscribe [switches] input_image output_audio
104Valid image formats: Jpeg, Png, WBMP, Xbm, GD, GD2
105
106Switches:
107  -inverse, -i           Inverse (negative) input image
108
109  -color=[mode]          Sets color conversion method for the input file:
110         g                 greyscale
111         m                 monochrome, ugly
112         rc                red and cyan (default)
113         oa                orange and aqua
114         yb                yellow and blue
115         gp                green and purple (for Baudline(TM) )
116         wb                reyscale on left, inverse on right. Weird.
117         monet             pseudo 3-color for "baudline -monet" display.
118
119  -transform-size=[size] iFFT blocksize:
120  -ts=[size]               0 = 512
121                           1 = 1024 (default)
122                           2 = 2048
123                           3 = 4096
124                           4 = 8192
125
126  -lf=[start]            Set low frequency start of image (default=0%)
127  -hf=[stop]             Set high frequency stop of image (default=100%)
128  -hiss, -h              Uses hissing rather than buzzing
129  -oversample, -o        4X oversample audio (adds hiss)
130
131  -mono, -m              Produce mono ouput audio file.
132  -stereo, -s            Produce stereo ouput audio file (default).
133  -rate=[rate]           Set audio sample rate (44100 default).
134
135  -wav                   Output wav audio (default)
136  -aiff                  Output aiff audio data
137  -au                    Output au audio data
138  -raw                   Output raw audio data
139  -stdout                Output raw audio data to <stdout>
140
141Subformats
142  -de                    File format default endian-ness (default)
143  -le                    Little Endian
144  -be                    Big Endian
145  -ce                    Your CPU's endian-ness
146
147  -pcm8                  Signed 8-bit data
148  -pcm16                 Signed 16-bit data (default)
149  -pcm24                 Signed 24-bit data
150  -pcm32                 Signed 32-bit data
151  -float                 32-bit floating point
152  -double                64-bit floating point
153  -ulaw                  U-Law
154  -alaw                  A-Law
155
156  -mask filename         Use sound "filename" as FFT mask
157  -length=[seconds]      Specify a length in seconds (may lose some detail!)
158
159
160A typical use of this command would look like:
161
162	enscribe -oversample -lf=5 -hf=70 -color=yb -wav north.jpg output.wav -length=20.0 -mask pianosound.wav
163	lame output.wav north.mp3
164
165
166MISC
167
168Note that only greyscale and monochrome are supported in monoaural mode.
169
170To reduced buzzing, I recommend always using the -hiss or -oversample switches.
171They do reduce image quality, but they sound better, and are more impervious to
172digital mangling.
173
174MP3 and Ogg encoders are LOSSY encoders, and what they like to lose most are
175the upper harmonics of a file. If you are going to compress your output audio,
176I suggest you bring down your high frequency stop to around 65 or 70 like this
177"-hf=70".
178
179If you are using your file in a lossless way, feel free to place your images
180anywhere in the spectrum, they should survive just fine.
181
182
183I hope you enjoy playing around with this software. Feel free to send me
184suggestions, bugs, or links to cool files you've made.
185
186Jason Downer
187jbd@cableone.net
188http://jbd.zayda.net/enscribe/
189