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