home *** CD-ROM | disk | FTP | other *** search
- __ _____ ____ ____ ____ _ ___
- \ \ / / _ \ / ___| _ \| _ \ / | / _ \
- \ V / |_| | | | | | | |_) | | || | | |
- | || _ | |___| |_| | __/ | || |_| |
- |_||_| |_|\____|____/|_| |_(_)___/
-
- Yet Another CD Player
-
- © 1994 by Frank Würkner
- All Rights Reserved
-
-
- COPYRIGHT NOTE
- ¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- The program YACDP is copyrighted © 1994 by Frank Würkner.
- All rights reserved.
-
- YACDP is FREEWARE. This program may be freely distributed as long as
- - the executable and documentation remain unchanged and
- are included in the distribution
- - No other charge is made than to cover time and copying costs
-
-
- DISCLAIMER
- ¯¯¯¯¯¯¯¯¯¯
- No warranties of any kind are made as to the functionality of this
- program. You are using it ENTIRE at your own risk.
-
-
- SYSTEM REQUIREMENTS
- ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- o OS2.0 or higher
- o reqtools.library © 1991-1994 by Nico François (thanks Nico!)
- o a SCSI bus adapter capable of sending SCSI direct commands
- o a CD-ROM which can read CD-DA ("Red Book") encoded discs
- (i.e. you should see a headphone jack on the front panel)
- o optionally your CD-ROM should be capable of sending the audio as
- 16-bit digital data over the SCSI bus
-
-
- FEATURES
- ¯¯¯¯¯¯¯¯
- o GUI that let's you access all basic functions of a normal CD-Player
- o is a Commodity
- o can display songnames and CD title (of course you once have to enter
- the names)
- o doesn't wastes memory
- o SCSI errors are displayed as text (190 known)
- o realtime playback of audio on your Amiga, even on 68000 machines (*)
- (achieved by highly optimised assembler routines)
- o ability to save (parts of) songs as IFF (8SVX) (*)
-
- (*) CD-ROM must be able to send audio over SCSI bus (see SYSTEM REQUIREMENTS)
-
-
- GETTING STARTED
- ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- If you often use audio CD's you might like to put the program into the
- WBStartup drawer. But any other place is fine too. But before the first
- use you MUST edit the tooltypes:
-
- CX_PRIORITY [0]
- The priority for the commodity (must be a number from -128 to 127)
-
- CX_POPUP [YES]
- YES = show GUI when started
- NO = don't show GUI
-
- CX_POPKEY [CTRL SHIFT ALT C]
- Hotkey to bring up the GUI
-
- DEVICE [scsi.device]
- Your SCSI device (caution: the devicename is casesensitive)
-
- BOARD [0]
- Controller board number (0 to 7), normally 0
-
- UNIT [1]
- SCSI target ID (0 to 7)
-
- LUN [0]
- SCSI logical unit (0 to 7), normally 0
-
- SONGDIR [PROGDIR:Songs/]
- Valid directory where to store the songfiles
-
- EDITOR [C:Ed %s]
- Your favorite texteditor which will be used if you edit the songnames
-
- IFFDIR [RAM:]
- Default directory where the IFF files are saved
-
- WINDOWX [0]
- Windows x position
-
- WINDOWY [11]
- Windows y position
-
- ZIPWINDOWX [0]
- x position of the zipped window
-
- ZIPWINDOWY [11]
- y position of the zipped window
-
- CHIPMEM | FASTMEM | 24BITDMAMEM [any]
- If any of the keywords is given the buffer for audio playback will
- be either chipmemory, fastmemory or 24Bit-DMA-memory
-
-
- THE GUI
- ¯¯¯¯¯¯¯
- For most funktions you will obviously have to put a audio CD into your
- CD-ROM or the gadgets will stay ghosted.
-
- BUTTONS
- ¯¯¯¯¯¯¯
- 1-39 Clicking on one of them will start the audio replay at this
- track (song). If your CD has more than 39 tracks you can
- use the "> " button on lower right of the window, which will
- bring up a requester where you can enter your desired track.
- > If no playback is in progress it will start at track 1.
- If the playback is paused it will start again.
- If the CD is currently playing, it will restart the playback
- at the begin of the current track.
- || (Un)pause playback
- [ ] stop playback
- |< Start playback of previous track, not possible for 1st track :-)
- >| Start playback of next track, not possible if you are already at
- the last track
- >> Skip n seconds back \ qualifier | n
- << Skip n seconds forward / -------------------
- SHIFT | 10 secs
- none | 20 secs
- ALT | 40 secs
- CTRL | 60 secs
- «« Skip to previous index
- »» Skip to next index («« and »» only work if not in "via SCSI" mode)
- ^ Ejact the CD
-
- If the "via SCSI" is checked the audio data will be send over the SCSI bus,
- converted and played by the audio device. This will result in a heavy CPU
- load, so you might not be able to "multitask" much or the playback is
- not continous anymore.
- If not checked the playback is done by the CD-ROM. Only the GUI is updated
- every second.
-
- MENU
- ¯¯¯¯
- "About Program" Display a requester about the program (what surprise)
- "About CD-ROM" Display a requester about the CD-ROM including
- vendor, the productname and the revision
- "About CD" Display a requester with the songnames (if present)
- and the playing time of each song
- "Edit Songs" Start the texteditor so you can enter the songnames.
- The filname is either the Universal-Product-Code (bar code)
- of the CD or if not available an identifier built with
- the number of tracks, the total playing time and the
- playing time of the first track.
- "Update" You may need this if you change something in the
- corresponding songfile of the CD or the data displayed
- about the CD isn't correct.
- "Hide" Hide the GUI
- "Quit" Quit the program
- "Release Device" If you first play back audio data, some additional buffers
- and soundchannels of the sound device are allocated.
- Use this if you want the program to give them back.
- "Save Audio" Show a window where you can enter the parameters which
- part of the CD you want to save as IFF. (see below)
-
-
- SAVE AUDIO AS IFF
- ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- BACKGROUND
- ¯¯¯¯¯¯¯¯¯¯
- CD-DA discs have their audio data stored in blocks of 2352 bytes plus
- additional information each containing 588 signed 16-bit numbers for
- the left and the right channel. The samplingrate of an audio CD is 44100,
- which means 44100 signed 16-bit numbers for each channel reconstruct the
- original waveform for one second. So 75 (=44100/588) blocks on a CD-DA discs
- make one second. For example 1 minute in CD quality has a total size of
- 75*2352*60 = 10584000 (about 10MB).
- The Amiga hardware (currently ???) can play back signed 8-bit numbers in
- a maximum samplingrate of 28867.
-
- CONVERTING AUDIO
- ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- So the audio data send by the CD-ROM has to be reduced, but how?
- The program let's you controll the conversion by the
- o Samplingrate: 22050 ==> 1/2 original samplingrate
- 14700 ==> 1/3 " "
- 11025 ==> 1/4 " "
- 8820 ==> 1/5 " "
- ...
- Reducing the samplingrate beyond 11025 will result in very pure quality.
- o Channels: Left & Right ==> the data for the left and the right
- channel is combined.
- Right ==> only the audio data for the right channel
- is taken into account
- Left ==> only the audio data for the left channel
- is taken into account
- o Scale samples: Sometimes the audio data will sound rather low, so you
- can scale them by any amount, especialy by a power of 2.
- Try 2, 4, 8, 16.
-
- Example: Let's say you have choosen a samplingrate of 14700 and
- "Left & Right" and scale the samples by 2, how would
- this input be reduced:
- L R L R L R
- -9785, 456, -23764, 135, -32768, -343
-
- o First all samples will be summed up: -66069
- o The divisor is (256*2*3) / 2 = 768
- ^ ^ ^ ^
- 16-bit to 8-bit | | scale samples with 2
- left & right channel |
- 14700, i.e. 1/3
- o The final output would be -66069 / 768 = -86
- Note: If you had choosen to scale with 4 the result
- would have been -172, which doesn't fit in 8-bit
- and therefore would have been reduced to -128
- (As well as numbers greater than 127 will be reduced
- to 127).
- If this case happens too often your audio data
- will sound pretty ugly.
- o The scrollers on the left side represent the start track the relative
- time in this track and finally the absolute blocks (remember 1 second
- makes 75 blocks?). The scrollers on the right side represent the same
- for the end position.
- o "PLAY START" plays 10 seconds from your current start position
- "PLAY END" plays 10 seconds before your current end position
- "PLAY ALL" plays all of your selected audio data
- "STOP" stop any audio playback
- Hit "OK" to proceed and a filerequster let's you select the filename.
- "CANCEL" brings you back to the main window.
- If all goes fine you should see a little window showing the success
- of the conversion. Press ESC or CTRL-C in the window if you want to
- abort the conversion.
-
-
- HOW TO SUPPORT YACDP
- ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- o It would be nice if you could write me about your success/problems
- with the program. Please include information about your Amiga model,
- SCSI device, which CD-ROM you are using and version of YACDP.
- o If you know your CD-ROM to be capable of sending audio data over
- the SCSI bus, but YACDP doesn't yet support your CD-ROM you might ask
- the vendor about how to access audio data and send the information to me.
- I will try to suport your CD-ROM at the next release.
- o If you entered the songnames of some CD's you should send the files to me
- (best would be compressed with lha and uuencoded to my email address) so
- I can include them with the next release.
- o Tell me what features you would like to see in YACDP. I thought of adding
- an AREXX-port, other playback modes (such as random or program), ...
-
-
-
- Send mail to
-
- Frank Würkner
- Georgenschwaigstr. 22
- D-80807 München
- Germany
-
- or
-
- E-Mail: wuerkner@informatik.tu-muenchen.de
-