[Home]Other Audio Experiments

HomePage | RecentChanges | Preferences

Showing revision 6

Audio

We hear tones and music. The tone is a signal that changes with time.

We can generate a sequencies of values and play the sequence spaced by a time interval.

For Telephony, it was typically 8000 samples per second, so the samples would be spaced 125 micro-seconds apart.

Typically, the samples are supplied to a hardware audio card, that outputs the samples to the audio output and then onto an amplifier to a headphone or speaker.

Is it possible to generate the samples for a modem?

Yes -

http://www.dougrice.plus.com/dougnapTheory/index.htm has some notes of using a telphone circuit.

Other Experiments

Over the years experiments in generating audio have been tried.

At School we were told about this:

 X = X + Y*N
 Y = Y - X*N

Itterate them and you get nice Sine and Cosine waves. What is remarkable is the amplitude seems stable over a long time.

http://www.dougrice.plus.com/rt004/sr3/sine.htm and http://www.dougrice.plus.com/indexPics.html has links.

Using C to Write to a WAV file

https://mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html - Useful webpage that explains the format of WAV files.

http://www.dougrice.plus.com/dev/wav.c It is possible to use a C program to write a WAV file and play it with media player.

https://gasstationwithoutpumps.wordpress.com/2011/10/08/making-wav-files-from-c-programs/ may be clearer.

Up sampling - buy a sample when you can afford it

We had a need to convert between Telephony sample rate of 8000 samples per second to CD quality 44100 samples per second.

Pump the Telephony sample into a digital low pass anti-alias filter clocked at the CD sample rate.

CD Quality 44100 / Telephony 8000 is 5.5125

Use a bit of simple accountancy.

For each Telephony sample, time moves on by 1/8000 seconds. You get an "income" of 125us , buy CD qualty samples that cost "1/44100"

So for each Telephony sample you can buy 5.5125 CD samples. You can only buy an integer number of samples. Some times, you can buy 5 samples, sometimes 6 samples.

Going the other way:-

You buy at CD sample rate at 44100 samples per second. they cost 1/44100 so you need 5.5125 samples of income to before you can buy a Telephony sample.

This works. Do you need Anti-alias filters - Probably.

Simulations using SVG graphics.

http://www.dougrice.plus.com/dev/trySVG/g9_CDtoTelephony.svg

http://www.dougrice.plus.com/dev/trySVG/g10_CDtoTelephony.svg

So if you want to mix Telephony samples that are not synchronised to another stream of Telephony samples, upsample to a higher sample rate. Use anti-alias filters clocked at the Higher sample rate else at certain phases, you can hear it.

http://www.dougrice.plus.com/dev/wav8_updn.c - early try

http://www.dougrice.plus.com/dev/wav10_updn.c - early try.

DTMF expriment using SVG

http://www.dougrice.plus.com/dev/dtmfCode/dtmf1_g.svg

Using Caller Display for a short message service

At the early days of the dial up internet, before spammers, I had an idea to send the number of unread emails to a caller display device.

At the time, emails were available using dial-up internet. It would be nice to know if you had unread emails.

http://www.dougrice.plus.com/dev/modem.cpp - from 1997 when I could play out a file using my Sound Blaster with DOS utilities.

http://www.dougrice.plus.com/dev/modem_caller_display.cpp - Using this program and an additional circuit, it was possible to send text to a phone that supports CDS Caller Display. The additional did the line reversal. This damaged my PC's audio. Caller Display uses a signal bases on V.23 sending at 1200 baud.

It would have been possible send a short message to a caller display phone.

It needed:

Further information https://niccstandards.org.uk/publications/nd1001-1099/ on signalling standards

A Webpage to explore AutoCorellation used in eCall

We did AutoCorellation at college.

http://www.dougrice.plus.com/dev/auto5.html - eCall 3GPP TS 26.267 V13.0.0 (2015-12)

https://itecspec.com/archive/3gpp-specification-ts-26-268/ - This has a test harness that is worth a try.

The eCall spec and reference modem code is available on line.

https://www.etsi.org/deliver/etsi_ts/126200_126299/126267/16.00.00_60/ts_126267v160000p.pdf - Spec

https://www.etsi.org/deliver/etsi_ts/126200_126299/126268/08.00.00_60/ts_126268v080000p.pdf - C code for the modem and test harness. There is a zip file in the same folder.

The reference code has a test harness that is easy to build on a Raspberry Pi and PC using Tiny C.

What impressed me is that the zip file has Test harness.

It does not contain the executable.

There is a make file.

You build the code and then run the test harness.

If you can build the code, the test harness passes the tests supplied.

The code has beed delivered to you.


HomePage | RecentChanges | Preferences
This page is read-only | View other revisions | View current revision
Edited March 9, 2025 10:45 am by dougrice.plus.com
Search:
home page