close menu
Bookswagon-24x7 online bookstore
close menu
My Account
A Programmer's Guide to Sound

A Programmer's Guide to Sound

          
5
4
3
2
1

Out of Stock


Premium quality
Premium quality
Bookswagon upholds the quality by delivering untarnished books. Quality, services and satisfaction are everything for us!
Easy Return
Easy return
Not satisfied with this product! Keep it in original condition and packaging to avail easy return policy.
Certified product
Certified product
First impression is the last impression! Address the book’s certification page, ISBN, publisher’s name, copyright page and print quality.
Secure Checkout
Secure checkout
Security at its finest! Login, browse, purchase and pay, every step is safe and secured.
Money back guarantee
Money-back guarantee:
It’s all about customers! For any kind of bad experience with the product, get your actual amount back after returning the product.
On time delivery
On-time delivery
At your doorstep on time! Get this book delivered without any delay.
Notify me when this book is in stock
Add to Wishlist

About the Book

Author appearance "I just wish this book had been available years ago." -Bobby Prince, composer and sound designer for computer games including Doom and Duke Nukem 3D "This is the kind of book that will stand as one of the defining works in the specialization of audio programming." -Gene Turnbow, senior programmer and game designer for Sound Source Interactive, Inc. "I'm amazed at the breadth and depth of Tim's coverage." -George Wright Information Systems, Loyola College, Maryland A Programmer's Guide To Sound provides detailed technical information about audio storage, processing, and compression, and includes tested C++ source code. Developers who want to add sound technology to their applications will find all the details they need to: *access low-level sound services on Win32, Mac OS, and UNIX *decompress MPEG, IMA ADPCM, and -Law data *read from WAVE, VOC, AIFF, and AU file formats *play MIDI and MOD music files. This book also includes accessible introductions to related topics, such as instrument synthesis, musical tuning, human sound perception, digital filtering, and Fourier Transforms. Developers will especially appreciate the emphasis placed on practical details. For every topic, the author provides complete source code to demonstrate the principles involved. The source code from the book compiles into a sample program that reads and plays a wide variety of different sound files on Win32, Mac OS, and UNIX. The CD-ROM includes all 40, 000 lines of source code from the book, in addition to project files for popular compilers, sample sound files, and contributed software and related information. Whether you are an audio professional who wants to learn more about programming or a computer programmer who wants to know more about implementing audio, this comprehensive resource will be an invaluable reference for years to come. 0201419726B04062001

Table of Contents:
Introduction. Source Code. About This Book. Acknowledgements. I. BASICS. 1. From Hollow Logs to Cyberspace. What is Sound? Natural Sounds. Electronic Sounds. Sounds We Hear. Digital Sounds. Other Resources. 2. Human Sound Perception. Frequency and Pitch. Musical Pitch. Pitch and Frequency Aren’t the Same. Noise. Loudness, Amplitude, and Power. Overall Quality. 3. Storing Sound Digitally. Sampled Sound Formats. Pulse Amplitude Modulation (PAM). Pulse Width Modulation (PWM). Pulse Code Modulation (PCM). Side Effects of Sampling. Aliasing. Output Aliasing. Resampling. Quantization Error. Dithering. Clipping. Floating-Point Samples. 4. A C++ Sound Framework. The AudioAbstract Class. Stereo. Negotiation. Reading and Writing Integers. A SineWave Class. II. SYSTEM SPECIFICS. 5. Player Objects. Player Basics. Implementing the Queue. Opening an Unknown Sound File. 6. Playing Audio on Windows. Play. The Callback. Selecting an Audio Device. A Sample Windows Application. 7. Playing Audio on Mac OS. Callback. Double Buffered Sound Under Mac OS. A Sample Mac OS Program. Playing a Mac File. 8. UNIX and the Network Audio System. Servers and Flows. Callbacks and Events. Configuring a Flow and Attaching to the Server. A Sample UNIX Application. III. COMPRESSION. 9. Audio Compression. Lossless Compression. Non-Linear PCM. Differential PCM. Adaptive Differential PCM. Predictor-Based Compression. Subband Coding. Human Speech Compression. Checkpointing. Progressive Compression. 10. Decompression Classes. 8-Bit PCM. Signed 8-Bit PCM. Unsigned 8-Bit PCM. 16-Bit PCM. MSB 16-Bit PCM. LSB 16-Bit PCM. 11. Nonlinear Sound Formats. Logarithmic Compression. mu-Law Compression. A-Law. Properties of Logarithmic Encodings. 12. Differential PCM. Two DPCM Encodings. 13. IMA ADPCM Compression. General Operation. Decompression. Compression. Practical IMA ADPCM Decompression. Microsoft’s IMA ADPCM Variant. Apple’s IMA ADPCM Variant. Comparing Microsoft’s and Apple’s IMA ADPCM Codecs Notes on IMA ADPCM. Unraveling ADPCM Formats. Credits. 14. MPEG Audio. A Survey of the MPEG Standards. MPEG-1. MPEG-2. MPEG-3. MPEG-4. MPEG Audio. General Structure. Managing the Byte Stream. MPE’s Frame Header. Slots and Frames. Layer 1/Layer 2 Subband Synthesis. Matrixing. Slow Matrixing. Fast Matrixing. Synthesis Window Coefficients. MPEG Stereo Encoding. Layer 1. Layer 1 Allocation Storage. Layer 1 Scale Factors. Layer 1 Sample Storage. Layer 1 Requantization and Scaling. Layer 2. Layer 2 Allocation Storage. Layer 2 Scale Factors. Reading Layer 2 Samples. Layer 2 Requantization. Layer 3. A Reader for MPEG Files. More Information. IV. GENERAL FILE FORMATS. 15. AU File Format. Identifying AU Files. Reading AU Files. Writing AU Files. A Simple AU Filter. 16. VOC File Format. Identifying VOC Files. VOC Header. Data Blocks. Terminator Block (Type 0). Sound Data Block (Type 1). Sound Continuation Block (Type 2). Silence Block (Type 3). Marker Block (Type 4). Text Block (Type 5). Repeat Loops (Types 6 and 7). Extension Block (Type 8). Extension Block (Type 9). Other Blocks. Reading VOC Files. 17. WAVE File Format. Identifying WAVE Files. About RIFF and other IFF Files. An Overview of WAVE. The WaveRead Class. Reading WAVE Files. Containers. The RIFF WAVE Container. The fmt Chunk. Creating a Decompression Object. PCM Data. IMA ADPCM Data. mu-Law and A-Law. Other Compression Methods. The data Chunk. Text chunks. 18. AIFF and AIFF-C File Formats. Identifying AIFF Files. The AiffRead Class. Reading AIFF Files. Containers. The FORM AIFF Container. The FVER Chunk. The COMM Chunk. PCM Data. mu-Law Data. IMA ADPCM Data. The SSND Chunk. 19. IFF/8SVX File Format. Identifying IFF/8SVX Files. An Overview of IFF/8SVX. Reading IFF/8SVX Files. Overview. Containers. The FORM 8SVX Container. The VHDR Chunk. PCM Data. Fibonacci DPCM Encoding. Exponential DPCM Encoding. The BODY Chunk. IFF/8SVX Errata. Text Chunks. V. MUSIC FILE FORMATS. 20. Programming Music. Instruments. Notes. 21. Synthesizing Instruments. Sampled Instruments. A Sine Wave Generator. Amplitude Control. Envelope Control with Sampled Instruments. Other Types of Envelope Control. FM and Wavetable Synthesis. Plucked Strings. Implementing the Plucked-String Algorithm. Testing Notes. 22. MIDI. Standard MIDI Files. Identifying MIDI Files. MIDI Header Chunk. MIDI Tracks. Variable-Length Integers. Delta Times. Reading MIDI Tracks. MIDI Events. Numbering Conventions. Running Status. Managing MIDI Events. Reading MIDI Events. Sysex Events. Meta Events. Track Sequence Number Meta Event (Type 0). Text Meta Events (Types 1 through 15). End of Track Meta Event (Type 47). Tempo Meta Event (Type 81). Time Signature (Type 88). Key Signature Meta Event (Type 89). Sequencer-Specific Meta Events (Type 127). MIDI Timing. SMPTE-Based Timing. Tempo-Based Timing. General MIDI. Downloadable Samples. A MIDI Player. Post-Processing the MIDI Event Stream. Base and Extended MIDI. Playing a MIDI Event Stream. MIDI Channels. Aftertouch and Pitch Wheel. Controllers and Modes. 7-Bit Controllers. 14-Bit Controllers. Parameters. Channel Modes. Implementation. MIDI Tuning. MIDI Instruments. Caveats. MIDI Wire Protocol. Real-Time Commands. Other MIDI File Formats. 23. MOD. Identifying MOD Files. Amiga Sound Hardware. MOD Format Overview. Instruments. Timing. Notes. Beats. Patterns. Play list. Format Details. Instruments. Notes. Song Storage. Overall File Structure. Playing MOD Files. The PlayBeat Method. Playing Notes with Effects. Effect 0: Arpeggio. Effect 1: Slide Up. Effect 2: Slide Down. Effect 3: Pitch Slide. Effect 4: Vibrato. Effect 5: Pitch Slide plus Volume Slide. Effect 6: Vibrato plus Volume Slide. Effect 7: Tremolo. Effect 8: Unused. Effect 9: Set Sample Offset. Effect 10: Volume Slide. Effect 11: Far Jump. Effect 12: Set Volume. Effect 13: Pattern Break (Small Jump). Effect 14/0: Set Filter. Effect 14/1: Fine Slide Up. Effect 14/2: Fine Slide Down. Effect 14/3: Set Glissando. Effect 14/4: Set Vibrato Waveform. Effect 14/5: Set Finetune. Effect 14/6: Pattern Loop. Effect 14/7: Set Tremolo Waveform. Effect 14/8: Unused. Effect 14/9: Retrigger. Effect 14/10: Volume Up. Effect 14/11: Volume Down. Effect 14/12: Cut Note. Effect 14/13: Delay Note. Effect 14/14: Delay Pattern. Effect 14/15: Invert Loop. Effect 15: Set Speed. VI. AUDIO PROCESSING. 24. Fourier Transforms. Fourier Transform Basics. Sine Waves. Measuring One Frequency at a Time. Accounting for Phase. Implementing the DFT. Scaling. Measuring the Entire Spectrum at Once. Small FFTs. Decomposing Long FFTs. 2-Point FFT. Four-Point FFTs. Formal Derivation of the FFT. Programming the FFT. Speed. Playing with FFTs. Using FFTs. Windowing. Observations. 25. Filtering. Adding Sine Waves. FIR Filters. Designing Simple FIR Filters. Implementing FIR Filters. Phase Shift. IIR Filters. Music Synthesis with Filters. II. APPENDICES. A. About the CD-ROM. Source Code. Project Files. Windows. Mac OS. UNIX. Others. Sample Files. Contributed Materials. Sound Forge. Cool Edit 96. Articles on Music Production by Donald Griffin. SoundApp. WHAM. XAudio. B. A Brief Introduction to C++. Improving C: A Better struct. Toward Object-Oriented Programming. Real OOP: Classes and Inheritance. Inheritance. Virtual Functions. Real-World Considerations. Constructor Initializations. Double-Colon Notation. Defining Methods in Separate Files. C++ I/O. Operator Overloading. I/O. Miscellany. C++ Casts. References. this. Friends. C. Coding Style. D. Systems Used. E. Reusing My Source Code. Index. 0201419726T04062001


Best Sellers



Product Details
  • ISBN-13: 9780201419726
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison Wesley
  • Height: 187 mm
  • No of Pages: 464
  • Spine Width: 21 mm
  • Width: 232 mm
  • ISBN-10: 0201419726
  • Publisher Date: 02 Jan 1998
  • Binding: SA
  • Language: English
  • Returnable: Y
  • Weight: 762 gr


Similar Products

How would you rate your experience shopping for books on Bookswagon?

Add Photo
Add Photo

Customer Reviews

REVIEWS           
Click Here To Be The First to Review this Product
A Programmer's Guide to Sound
Pearson Education (US) -
A Programmer's Guide to Sound
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

A Programmer's Guide to Sound

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book
    Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals



    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!
    ASK VIDYA