home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 13
/
mediashare_13.zip
/
mediashare_13
/
ZIPPED
/
MMEDIA
/
PMSNDX3D.ZIP
/
readme
< prev
Wrap
Text File
|
1994-04-04
|
10KB
|
220 lines
PMsndX version 0.2
by
William Scott Hiles
This is the fourth release of PMsndX. Push the HELP button
to get a short introduction to the purpose of this program.
Basically, this program is intended to eventually provide
all of the features of the SOX program and a bit more.
Sorry guys, but this is version 0.3 and with the addition of
the MMPM stuff, the format of the .ini file has changed. I
was thinking of giving you a program to convert your old
.ini to the new format, but then I figured that there are
not that many windows to worry about. Maybe in the next
release?
Of all the potential things that PMsndX could do, the one
that people seem to want the most is to be able to play a
sample of any format without having to save it to disk in
the native .WAV format and then start the digital audio
player. Well, here it is. The only difference between
version 0.2 and 0.3 is the additions to the Settings box and
the new MMPM button (with corresponding playback functions
too). I have not implemented recording yet and a couple of
the options for the settings have not been implemented
either.
Programming for the MMPM was definitely not a breeze. It
took me a week to figure out how to use the Playlists.
Frankly, since there is almost no documentation out there on
accessing the MMPM device, I am amazed that I got this much
working. In any case, you will find buttons that look very
much like the buttons on the digital audio device provided
by IBM. As you will find, I have not fully mastered
programming under MMPM so there will probably be a number of
quirky things that pop up. Just have patience and point
them out to me and I will fix them as best I can.
As always, all comments are welcomed as well as bug
reports.
What is in the future? Well, I am planning on adding other
sound formats. Feedback has indiacated that .VOC, and .SND
are the most important ones, so I will start on them first.
Revision history:
Version 0.0 (initial release)
1. 6 buttons and associated dialog boxes created
1. Ability to load and save .au files
2. Ability to load and save .wav files
3. Tool for changing the sampling rate (0.0a)
4. Display of information about the current sample
0.0a - SOX appears to use linear approximation to create the
new sample. PMsndX provides for quality which allows the
approximation to be adjusted.
Version 0.1
1. Added Channel Averaging (0.1a)
2. Added Vibro effect
3. The .ini file are automatically located in the same directory
as the executable.
4. Individual tool pages no longer have separate HELP buttons
5. A HELP button has been added to the tool box for all pages.
When pressed, the help page for the page shown in the tools
dialog box will be displayed.
6. A DISMISS button has been added to the tools dialog box for
a more consistent approach to dismissing. The user can still
depress the tools button on the main control panel to dismiss
any tool dialog.
7. Rearranged the buttons on the main control panel and added
two new buttons for Playing and Recording samples (not implemented
in this release...just placeholders)
8. Changed the memory storage requirements so that data takes
half as much memory. Each sample is stored as a signed SHORT
regardless of the sound type.
9. Corrected major memory bug which resulted in a memory leak.
10. The echo effect presents an interesting challenge to the
user interface. How do you provide the user with an
intuitive method to set the echo locations and the
strength of the echo from a dialog box? My first
attempt was to try to display the waveform in a window
and then to let the user set the echo points, but the
problem of setting the echo strength is still difficult.
This operation may have to wait for another revision
after I have had some time to "sleep" on it. The effect
itself is very simple, but the interface is much more
difficult.
0.1a - SOX can averages 4 channels to 1 by putting all four
channels into 1. 4 channels to 2 is done by
averaging the left channels and the right channels
together. PMsndX allows the user to select any
combination of the source channels.
Version 0.2
1. Fixed error with memory settings. In version 0.1 if you
opened the Settings box and then applied it by pressing
the DOIT button it sould clear the data samples even if
the memory configuration had not changed.
2. Fixed bug in version 0 in which the data was cleared
when the memory configuration was changed, but the
sample header was not cleared. This led to th dialogs
trying to access data that had been released causing a
protection violation.
3. Added the Bandpass notebook page. This is probably one
of the most complex user interfaces in the notebook.
4. Added the Echo effect. This is the most complex
programming challenge for a useable user interface.
(Note, the echo only works for single channel samples).
5. Fixed bug. In version 0.1, the lowpass function did not
take into account the number of channels. This has a
significant impact on the FFT operation. This is fixed
in 0.2.
6. Fixed bug. In version 0.1, the Vibro effect did not
take into account multiple channels in a sample. As a
result, the vibro was not continuous on individual
channels.
Version 0.3
1. Removed the RECORD button (now just a blank button until
I can think of something)
2. Changed PLAY button to MMPM and added basic play
capabilities (i.e. Play, Stop, Rewind, Pause).
3. Updated Settings dialog to reflect options for the MMPM
stuff.
Version 0.3a
1. Fixed the Play button so that it is animated when the
sample is played as it is loaded. (What is the longest
record for staring at a code before you realize that it
is so late that you have been staring at the bug all
night and just did not recognize it?...What a dumb error
on my part!!!)
2. Fixed the dynamic linking so that DosLoadModule is used
rather than linking with the dynamic libraries. Version
0.3 would refuse to run on machines without MMPM
installed because the libraries were loaded even if the
MMPM support was not enabled.
3. Changed to using SW.DLL for the buttons of the MMPM
dialog box. This guarantees that the program will use
the latest formats for the buttons.
4. Added command line playing. I the PLAY_ON_LOAD option
is selected, any filenames which appear on the command
line will be played. If a file is not found, the
program will signal an error and continue to the next
command line file. If EXIT_AFTER_PLAY is not selected,
the last file that was successfully loaded will be
the current file in memory.
5. Enabled the EXIT_AFTER_PLAY feature and modified the
behaviour such that the MMPM dialog is not displayed
during the playback.
Version 0.3b
1. Fixed a big bug in the Bandpass filter. If a sample
had multiple channels, it would only bandpass on the
first channel.
2. Fixed a big bug in the Lowpass filter. If a sample
had multiple channels, it would only lowpass on the
first channel.
3. Added the little clock pointer to indicate how much
work has been completed.
4. Removed the requirement for the audio device to be a
form of WaveAudio??. Any string will work as long as
the device really exists.
5. Multi-threaded all of the effects so that the program
is not a system hog. The file read/write functions
are not multi-threaded. Should they be?
Verstion 0.3c
1. Added Speed Effect
2. Reorganized the Tools notebook. There were too many
tools to display the tabs on the notebook so major and
minor pages were created to group the tools.
3. Modified the MMPM support to use a separate region of
memory than the samples are stored in. Previously, the
memory for storing the playlist was taken out of the
pool for storing the samples for the effects. As a
result, if you started the MMPM box an performed a
effect that took up more memory, a hole would be left
such that another block of memory could not be
allocated. This method prevents creating the holes.
4. Added Reverse Effect.
Version 0.3d
1. Added use of the second mouse button (usually the right
mouse button) for the reverse effect and removed the
dynamic sorting of the start and end so that the numbers
don't jump back and forth when the user is entering
the endpoints.
2. Added support for .VOC file formats.
Note: I don't know what the hell SOX is doing, but it does
not seem to produce a useable file.
I always add an Extended data block to the file. I don't
know if this will cause problems, but the extended part
contains the number of channels.
I don't know what to do with Repeat/End Repeat information
so I am currently ignoring it. Any ideas?
I currently dump (on the floor) any ASCII text. Anyone want
me to keep the stuff in the info field?
I currently only load 8 bit data. I cannot deal with packed
data right now. It is 1:00am and I am tired.
Some programs seem to expect the first block to be the
DATA block so I write this first always.
For now, just play with it and let me know what you think.
You should have three files from the compressed .zip file.
README This file
pmsndx.exe Executable PMsndX
pmsndx.hlp Help file
I can be contacted using email at whiles@relay.nswc.navy.mil.
Thanks for your time.
Scott