SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

wavedit v0.1
by Aaron Goldstein

Well, I haven't seen any other waveform editors that work under Linux, so I decided to write one. This program is presently very simple - it supports loading/saving waveforms (not very well), and a few basic clipboard operations (cut, copy, paste, trim to selection). It's presently written entirely in C++. There's no particularly good reason for this, except that I need to learn C++ a bit better for my CS classes. I'm releasing this copy (instead of a good one), because I want help/suggestions/random comments/etc. for this program.

About the program:
wavedit recognizes the following commands: (all of these are lower-case ONLY)

clipboard operations

        x - cut the selection and place it in the clipboard
        c - copy the selection to the clipboard
        v - paste the clipboard to the current mouse location
        z - trim waveform to the current selection
        space - clear current selection

other stuff

        p - play waveform
                Plays either the entire waveform (if there is no
                current selection), or the selection (highlighted
                area) if there is a selection.
                This is one of my first targets for improvement, since
                the program doesn't do anything else while playing a
                wave (including updating the mouse pointer).
        s - save waveform to disk
                Watch out - my line editor really needs work
        q - quit program
                Be careful - it assumes you know what you're doing.
                If you just spent 2 hours trimming your waveform to
                be just exactly how you like it, and then quit
                without saving, wavedit will not complain

mouse interface

        left-click / drag
                This will select a portion of the wave, and high-light
                that piece of the waveform.  Clipboard operations will
                affect this highlighted portion of the wave (except
                paste, which pastes the clipboard at the current
                x-location of the mouse, and sets the selection to the
                newly inserted section of waveform).

        middle/right buttons do nothing, as of now

About me:
I'm presently a sophomore in computer science at Carnegie Mellon University in Pittsburgh, Pennsylvania. I'm originally from a tiny little town called Valley Cottage, in the suburbs of New York City. I can be reached at any of the following three e-mail addresses.

ag4z@andrew.cmu.edu (most likely to reach me) breadmold@breadmold.pc.cc.cmu.edu (preferred, but not always online) breadmold1@aol.com (if you feel like waiting)

Credits
I lifted code from a couple of different places, and just generally feel like giving credit where credit is due.

Thanks to -

        Linus Torvalds for Linux!
        Hannu Savolainen for the voxware sound drivers
        Brad Pitzel - I've stolen a little code from his soundIt
                library and demos (get it...it's really cool), and
                plan on stealing more, once I've properly dissected
                soundIt.c!
        Michael Beck - format.h is an abbreviated version of
                'fmtheaders.h', which is part of the source code for
                vplay (a very happy little program).  Thanks much.

        All my friends who listened to me babbling about this thing
                while I was writing (and who will have to continue to
                listen to me, while I improve it).  Especially thanks
                to Noah, who I've babbled at the most (and who has, on
                occasion, given me some useful tips).

Random/Important stuff:
I'm distributing this program completely free of charge. Give it to anyone and everyone you want to. Give it to people you don't want to. Threaten your neighbors with my source code. Whatever you like. However, I'd really appreciate it if you'd credit me when using my source code in one of your programs (I'd be even happier if you'd send me a copy).

The current version of wavedit can always be found (using anonymous ftp) at 'breadmold.pc.cc.cmu.edu' as the file '/pub/software/waveditvX.X.tgz', where X.X is the version number (v0.1 is current as of this moment).

wavedit was compiled using voxware v2.9-2 (if anyone asks, I'll compile it under v2.5...I was just too lazy to actually go and recompile something else in order to distribute this), and svgalib v1.11. I used g++ v2.5.8, and libc v4.5.26 to compile it.

Hope you enjoy this program.
-Aaron


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.