Sponsored Content
Operating Systems OS X (Apple) A simple variable frequency sinewave audio generator. Post 303035893 by wisecracker on Friday 7th of June 2019 05:24:13 AM
Old 06-07-2019
Thanks MadeInGermany, I will try this out on my main code.

I limited the DEMO to 6000Hz because it kept the BYTE manipulation easy to understand using only one little endian word per sample and byterate instead of the two little endian words for both. Also 8 bits unsigned per sample, and mono eliminates the need for other sections to be altered.

As an addendum the WAV file format:

Microsoft WAVE soundfile format
 

8 More Discussions You Might Find Interesting

1. Programming

Python, Platform Independent, Pure Audio Sinewave Generator...

IKHz_SW_OSX.py A DEMO mono _pure_ sinewave generator using standard text mode Python 2.6.7 to at least 2.7.3. This code is EASILY modifyable to Python version 3.x.x... This DEMO kids level 1KHz generator is mainly for a MacBook Pro, (13 inch in my case), OSX 10.7.5 and above. See below...... (0 Replies)
Discussion started by: wisecracker
0 Replies

2. Shell Programming and Scripting

A Crude 1KHz Audio Sinewave Generator Demo...

A very simple crude sinewave generator. The file required is generated inside the code, is linear interpolated and requires /dev/audio to work. Ensure you have this device, if not the download oss-compat from your OS's repository... It lasts for about 8 seconds before exiting and saves a... (5 Replies)
Discussion started by: wisecracker
5 Replies

3. Windows & DOS: Issues & Discussions

A SOX 1KHz Sinewave Generator Using A Batch File...

Hi all... I don't think this has been done before but I am open to being corrected... This batch file generates a 65536 byte binary file to give 8 seconds of pure sinewave at the earphone/speaker output(s)... It uses ONLY a default Windows 32 bit installation, to Windows 7, except for the... (0 Replies)
Discussion started by: wisecracker
0 Replies

4. OS X (Apple)

A Bash Audio Sweep Generator...

This is a small program as a tester for a basic sweep generator for bandwidth testing of AudioScope.sh. This DEMO is only capable of 4KHz down to about 85Hz and back due to the low bit rate, but it is proof of concept for a much wider variant using a much higher bit rate. The file generated... (4 Replies)
Discussion started by: wisecracker
4 Replies

5. OS X (Apple)

Python script to do simple audio capture...

This site is the first to get this snippet. It will capture an audio recording of any time length within the limits of OSX's QuickTime Player's capablility... A shell script derivative of this will be used as a further capture for CygWin's AudioScope.sh. Thoroughly read ALL the comments in... (0 Replies)
Discussion started by: wisecracker
0 Replies

6. OS X (Apple)

An Audio Function Generator...

Ok guys, gals and geeks... As from today I am starting to learn awk in earnest doing something totally different. I am going to create a pseudo-Audio_Function Generator centred around OSX 10.11.x minimum. The code below is a tester to see what the possibilities are. All waveforms will be... (11 Replies)
Discussion started by: wisecracker
11 Replies

7. OS X (Apple)

Variable frequency audio generator...

Hi all... I intend to do an Audio Function Generator using Awk, (already started thanks to Don), but the biggest thing I have struggled with was variable frequency. I was going to generate differing sized waveforms on the fly but that would that would mean the frequencies are dependent on any... (2 Replies)
Discussion started by: wisecracker
2 Replies

8. Shell Programming and Scripting

The Start Of A Simple Audio Scope Shell Script...

This is a DEMO shell script to generate a simple graticule and plot inside it... Apologies for any typos... it is another building block along with my other two shell uploads recently to start a semi_serious project of an Terminal_AudioScope... The fist upload I posted recently was to show... (83 Replies)
Discussion started by: wisecracker
83 Replies
DNOISE(1)						  The Canonical Csound Reference						 DNOISE(1)

NAME
dnoise - Reduces noise in a file. . DESCRIPTION
This is a noise reduction scheme using frequency-domain noise-gating. SYNTAX
dnoise [flags] -i noise_ref_file -o output_soundfile input_soundfile INITIALIZATION
Dnoise specific flags: o (no flag) input soundfile to be denoised o -i fname input reference noise soundfile o -o fname output soundfile o -N fnum # of bandpass filters (default: 1024) o -w fovlp filter overlap factor: {0,1,(2),3} DON'T USE -w AND -M o -M awlen analysis window length (default: N-1 unless -w is specified) o -L swlen synthesis window length (default: M) o -D dfac decimation factor (default: M/8) o -b btim begin time in noise reference soundfile (default: 0) o -B smpst starting sample in noise reference soundfile (default: 0) o -e etim end time in noise reference soundfile (default: end of file) o -E smpend final sample in noise reference soundfile (default: end of file) o -t thr threshold above noise reference in dB (default: 30) o -S gfact sharpness of noise-gate turnoff, range: 1 to 5 (default: 1) o -n numfrm number of FFT frames to average over (default: 5) o -m mingain minimum gain of noise-gate when off in dB (default: -40) Soundfile format options: o -A AIFF format output o -W WAV format output o -J IRCAM format output o -h skip soundfile header (not valid for AIFF/WAV output) o -8 8-bit unsigned char sound samples o -c 8-bit signed_char sound samples o -a alaw sound samples o -u ulaw sound samples o -s short_int sound samples o -l long_int sound samples o -f float sound samples. Floats also supported for WAV files. (New in Csound 3.47.) Additional options: o -R verbose - print status info o -H [N] print a heartbeat character at each soundfile write. o -- fname output to log file fname o -V verbose - print status info Note DNOISE also looks at the environment variable SFOUTYP to determine soundfile output format. The -i flag is used for a reference noise file (normally created from a short section of the denoised file, where only noise is audible). The input soundfile to be denoised can be given anywhere on the command line, without a flag. PERFORMANCE
This is a noise reduction scheme using frequency-domain noise-gating. This should work best in the case of high signal-to-noise with hiss-type noise. The algorithm is that suggested by Moorer & Berger in "Linear-Phase Bandsplitting: Theory and Applications" presented at the 76th Convention 1984 October 8-11 New York of the Audio Engineering Society (preprint #2132) except that it uses the Weighted Overlap-Add formulation for short-time Fourier analysis-synthesis in place of the recursive formulation suggested by Moorer & Berger. The gain in each frequency bin is computed independently according to gain = g0 + (1-g0) * [avg / (avg + th*th*nref)] ^ sh where avg and nref are the mean squared signal and noise respectively for the bin in question. (This is slightly different than in Moorer & Berger.) The critical parameters th and g0 are specified in dB and internally converted to decimal values. The nref values are computed at the start of the program on the basis of a noise_soundfile (specified in the command line) which contains noise without signal. The avg values are computed over a rectangular window of m FFT frames looking both ahead and behind the current time. This corresponds to a temporal extent of m*D/R (which is typically (m*N/8)/R). The default settings of N, M, and D should be appropriate for most uses. A higher sample rate than 16 Khz might indicate a higher N. CREDITS
Author: Mark Dolson August 26, 1989 Author: John ffitch December 30, 2000 Updated by Rasmus Ekman on March 11, 2002. AUTHORS
Barry Vercoe MIT Media Lab Author. Dan Ellis MIT Media Lab, Cambridge Massachussetts Author. COPYRIGHT
5.07 06/23/2009 DNOISE(1)
All times are GMT -4. The time now is 03:56 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy