A WORKABLE GRAPHICAL WAVE EDITOR FOR LINUX X11?????????????

date 5th febuary 1996

I THOUGHT I WOULD START THIS PROJECT TO LEARN THE XAW API AND PRODUCE SOMETHING USEFUL
FOR AUDIO AND SAMPLING ENTHUSIASTS  


xwave version 0.01

after using Linux since 94 I have decided it's time to add my effort
to this excellent OS. Well as i've been looking for a usable wave editor 
and havent found one I decided that this could be the project for me??
So using the code available i've hacked together xwave, the code is pretty
bad but the program works reasonably well but still has a lot of bug's. I've 
only been working on the program since just after christmas and been putting 
in about four hours of work on it a week so it should be finished in a couple of years.
The original plan was to produce an X11 wave editing app that has the capability
to interface with other programs to allow the complex editing of audio files from a
simple GUI frontend. Hopefully I will get round to interfacing a patchfile loader
or midi sample dump program for using the finished sounds. The program can be setup 
to execute other sound editing programs from the interface menu by setting up the 
command line in the .xwave_exec file. also included are some audio morphing progs 
that are updated to compile with linux and are setup to run with Xwave interfaces.

Well here it is an update of a couple of old programs which I have
found on the net. The turp program is part of a large suit of audio 
morphing prog's from some american college ( i can't remember which 
check the turp doc's for more info ). The powerpv stuff comes from the
same place they needed a little hacking to get them to complile and are
not at all tested as I dont have any conversion software at the moment due
to the fact that my system has totally crashed and i'm using a 386 with 4Mb 
(anyone with a spare VLB 486 mother board with 72pin SIMM sckts could do 
worse than send it to me FOC to help the development of this project). Any 
way the main program Xwave is an X11 wave editor program based on xplay by 
Andre fuechsel and recplay. The main aim of my updating the program was to 
produce a program similar to another program I wrote called wave2mid a 
windows wave editor( a more monolithic type of approach). Xwave sort of allows 
the unix philosophy of small pipeable 
programs to be implemented as it has an interfacing capability to enable piping 
output to other audio editing programs ( such as turp ). The program 
has a fairly large portion of new code in it compared with xplay
so I considered it resonable to rename it and give it a new version
number. The original version of xplay that xwave is based on did not
have a copy right notice included and I could not get in touch with
Andre fuechsel so just used his code if anyone has problems with this
please get in touch with me. most of the new code is directly ported 
from my wav2mid program and is copy right by me Will Fish 1995. The software 
works but is extreamly bug'ed and a number of the functions are not implemented 
properly  but I thought I would make the code available so others could use the
software and patch the code if nessesary. Please if you add any new code or fix 
anything e-mail me a patch.



INSTALLING XWAVE

Xwave includes a large number of other command line programs ( in the hope that people
will setup the interfaces for them and send me any patches). These other programs must
be compiled separately read the documentation it the directories for info. To compile
Xwave just type xmkmf in the xwave directory and then make install. This should copy
all the man pages and app defaults to the required paths( most of this is the same as
xplay comilation so also read the README.old file). once the compilation is compete
you need to copy the xwave_exec.ad file to the /root directory as .xwave_exec (this
has some basic interface setups). and also the xwave_convert.ad file to /root/.xwave_convert
these two files allow program execution and autoconverting of files.


the format of the .Xwave_exec file is:

the menu name of the command
the full path and name of command
any arguments the program may require

each interface setup must be on it's own line with colon ':' separators


the program now includes

proper editing e.g. cuting, copying, pasting(some times crashes)

effects implemented:  reverse, echo, high, low, band, filters (parameters unalterable)
			and some are not selectable from the menus

program interface : you can setup pipes and command lines to 
		    other programs to be executed from the menu (the envelope
		    creation fot Turp is not working yet )

auto convertion using sox: This is now working properly 

copies of : Lsox (this is old and needed hacking to compile 
	   there may be a more recent version available????
		
	 POWERPV a suite of sound synth programs(xwave needs more interface stuff
	implemented for it to work correctly???)

	Turp suite of sound synth programs (same as POWERPV)



the program will include 

most of what was available on wave2mid for windows

i.e. filter, amplitude enveloping, wave synthesis, fft analysis

some more command line sound processors ported from NeXt 
		(once I install the GNU objective c libs)

????????? (I might possibly get the wave to midi conversion to work
          (this will be very hard)?????)


TODO (stuff that aint workin properly yet??)

The main thing that i'm concerned with at the moment if the editing as my usual
system has crashed ( due to a AMD 486DX4 upgrade and a supplier who talks shit) I
am unable to listen to playback and I am not sure whether the cut,copy paste
function correctly (alocating memory from the heap rather than the stack means
things are reversed????) so the addressing may need to be altered???. 
Play position pointer and ffwd rwnd selective play record etc need to be implemented. 
the effects are preset and dialog's need to be implemented to change the 
parameters ( scroll bars for feedback, decay, etc.). The scroll bars are sort of implemented
on the main window (currently hidden behind the graphs) i have lost my copy of the Xaw API 
defs so have not  been able to sort out the positioning!!
 a song pointer could be implemented that moves 
when the file is playing. Stereo wave display and multiple wave edit windows next
 to be implemented for mixing display etc.. . Lots and lots of other stuff which I
have in mind but probably won't get around to doing.


Remember
that this is just beta software and I have released it I order to get feedback
and help with it's implementation so if it doesnt work please try to fix it and 
send me a patch or send me a description of the problem and i'll try and sort it
out. I am not a good programmer so thing's may take a while to get done and most 
of the code in this software is in no way supposed to be a good or elegant 
solution to the problem ( all of it is just a HACK!!! ). 


also REMEMBER

if you fix anything, add any code, or find any bug's e-mail me the info
(you will get a mention in the future release doc's)



OTHER VERSIONS

*** if you are looking for wav2mid for win it's also available on my 
*** ftp site although i'm not sure what condition it's in last time
*** i recompiled it ( before loosing interest ) it was wallowing in the 
*** hell that microsoft call mdi although there are probably some older
*** non mdi versions available that function resonably well the current
*** mdi version is not in a useable state.



copyright type stuff

	All code is the copyright of it's respective authors( Andre fuechsel,
 Will Fish, Liam Corner, others??? ) all code writen by myself is freely 
redistributable provided it is not used commercially or without registration.
Any code in this program may not be copied for use in other programs unless
permission is given by the authors of the respective code.


To register this program you must send a nice picture postcard of your home
town with your name, address, and e-mail address to: 

W Fish
electrical engineering dept.
portsmouth university
anglesea road
portsmouth 
United Kingdom

or alternatively upload some useful sound software (that I have not already got)
 to my ftp site ftp.ee.port.ac.uk in the directory
/pub/linux/Incoming


REMEMBER 

using this software without registration is software theft! which is O.K.
so long as you don't get caught???




FINDING THIS SOFTWARE

the most recent version of the program and a large amount of other sound and music
info and software will be available until september 97 (when I leave college) at

ftp.ee.port.ac.uk/pub/linux
or check out my web page at www.ee.port.ac.uk/~fishwj ( strange sad stuff )
or preferably don't e-mail me at fishwj@ee.port.ac.uk (unless you want to actively help
develope the program)

last updated 25 th febuary 1996
