Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.programming > #3239 > unrolled thread
| Started by | bob <bob@coolfone.comze.com> |
|---|---|
| First post | 2013-04-10 11:52 -0700 |
| Last post | 2013-04-11 02:10 +0000 |
| Articles | 11 — 6 participants |
Back to article view | Back to comp.programming
binary to audio? bob <bob@coolfone.comze.com> - 2013-04-10 11:52 -0700
Re: binary to audio? Ian Collins <ian-news@hotmail.com> - 2013-04-11 07:50 +1200
Re: binary to audio? Mark Storkamp <mstorkamp@yahoo.com> - 2013-04-10 14:54 -0500
Re: binary to audio? bob <bob@coolfone.comze.com> - 2013-04-12 06:59 -0700
Re: binary to audio? Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2013-04-12 10:02 -0700
Re: binary to audio? malcolm.mclean5@btinternet.com - 2013-04-16 07:31 -0700
Re: binary to audio? bob <bob@coolfone.comze.com> - 2013-04-16 11:31 -0700
Re: binary to audio? Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2013-04-16 11:45 -0700
Re: binary to audio? malcolm.mclean5@btinternet.com - 2013-04-16 16:43 -0700
Re: binary to audio? Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2013-04-10 15:29 -0700
Re: binary to audio? Sjouke Burry <s@b> - 2013-04-11 02:10 +0000
| From | bob <bob@coolfone.comze.com> |
|---|---|
| Date | 2013-04-10 11:52 -0700 |
| Subject | binary to audio? |
| Message-ID | <cc773d77-afb1-48a4-bc6a-e79b4e50bd46@googlegroups.com> |
What is a good way to have a small amount of data (maybe 100 bytes) audio-encoded and sent to another computer by sound? The other computer would read it into its microphone jack. Thanks.
[toc] | [next] | [standalone]
| From | Ian Collins <ian-news@hotmail.com> |
|---|---|
| Date | 2013-04-11 07:50 +1200 |
| Message-ID | <aslu3eFkshpU2@mid.individual.net> |
| In reply to | #3239 |
bob wrote: > What is a good way to have a small amount of data (maybe 100 bytes) > audio-encoded and sent to another computer by sound? The other > computer would read it into its microphone jack. Google "acoustic modem". -- Ian Collins
[toc] | [prev] | [next] | [standalone]
| From | Mark Storkamp <mstorkamp@yahoo.com> |
|---|---|
| Date | 2013-04-10 14:54 -0500 |
| Message-ID | <mstorkamp-ED45E1.14541510042013@news.eternal-september.org> |
| In reply to | #3239 |
In article <cc773d77-afb1-48a4-bc6a-e79b4e50bd46@googlegroups.com>, bob <bob@coolfone.comze.com> wrote: > What is a good way to have a small amount of data (maybe 100 bytes) > audio-encoded and sent to another computer by sound? The other computer > would read it into its microphone jack. > > Thanks. http://en.wikipedia.org/wiki/Frequency_shift_keying
[toc] | [prev] | [next] | [standalone]
| From | bob <bob@coolfone.comze.com> |
|---|---|
| Date | 2013-04-12 06:59 -0700 |
| Message-ID | <b5831df1-404b-498e-bd0f-050119dabf21@googlegroups.com> |
| In reply to | #3241 |
On Wednesday, April 10, 2013 2:54:16 PM UTC-5, Mark Storkamp wrote: > In article <cc773d77-afb1-48a4-bc6a-e79b4e50bd46@googlegroups.com>, > > bob <bob@coolfone.comze.com> wrote: > > > > > What is a good way to have a small amount of data (maybe 100 bytes) > > > audio-encoded and sent to another computer by sound? The other computer > > > would read it into its microphone jack. > > > > > > Thanks. > > > > http://en.wikipedia.org/wiki/Frequency_shift_keying Thanks. Encoding this is trivial. I could just have a WAV file for the "one" and a WAV file for the "zero". Then I could choose which one to play based on the data. However, I'm pretty sure decoding is non-trivial especially considering noise (which hopefully can be minimized with a direct wire from audio output to microphone input). Any tips regarding the decoding? I have read of something called the Goertzel algorithm, but it seems rather complicated and possibly over my head. Thanks.
[toc] | [prev] | [next] | [standalone]
| From | Daniel Pitts <newsgroup.nospam@virtualinfinity.net> |
|---|---|
| Date | 2013-04-12 10:02 -0700 |
| Message-ID | <M6X9t.5070$iT2.2026@newsfe01.iad> |
| In reply to | #3251 |
On 4/12/13 6:59 AM, bob wrote: > On Wednesday, April 10, 2013 2:54:16 PM UTC-5, Mark Storkamp wrote: >> In article <cc773d77-afb1-48a4-bc6a-e79b4e50bd46@googlegroups.com>, >> >> bob <bob@coolfone.comze.com> wrote: >> >> >> >>> What is a good way to have a small amount of data (maybe 100 bytes) >> >>> audio-encoded and sent to another computer by sound? The other computer >> >>> would read it into its microphone jack. >> >>> >> >>> Thanks. >> >> >> >> http://en.wikipedia.org/wiki/Frequency_shift_keying > > Thanks. > > Encoding this is trivial. > > I could just have a WAV file for the "one" and a WAV file for the "zero". > > Then I could choose which one to play based on the data. > > However, I'm pretty sure decoding is non-trivial especially considering noise (which hopefully can be minimized with a direct wire from audio output to microphone input). > > Any tips regarding the decoding? > > I have read of something called the Goertzel algorithm, but it seems rather complicated and possibly over my head. > > Thanks. > If you are thinking that "encoding" is as simple as having wave files for one and zero, then I think this whole exercise may be over your head. There are many different modulation schemes. FSK was suggested up thread, and may be the easiest to implement. What is your real goal? Is this just a "Hey, I bet this could be done and I want to try", or is it a real need you have? If it is a real need, then why audio? Why not infrared? Why not a real wire? Why not ethernet, wifi, or bluetooth?
[toc] | [prev] | [next] | [standalone]
| From | malcolm.mclean5@btinternet.com |
|---|---|
| Date | 2013-04-16 07:31 -0700 |
| Message-ID | <867d2360-5096-4160-9b09-3e36daeb3460@googlegroups.com> |
| In reply to | #3251 |
On Friday, April 12, 2013 2:59:55 PM UTC+1, bob wrote: > On Wednesday, April 10, 2013 2:54:16 PM UTC-5, Mark Storkamp wrote: > > > In article <cc773d77-afb1-48a4-bc6a-e79b4e50bd46@googlegroups.com>, > > > Encoding this is trivial. > > I could just have a WAV file for the "one" and a WAV file for the "zero". > > Then I could choose which one to play based on the data. > > However, I'm pretty sure decoding is non-trivial especially considering > noise (which hopefully can be minimized with a direct wire from audio output > to microphone input). > The snag is that you get what we call aliasing, or extra frequencies, at the joins between your two wav files. Which makes it hard for the decoder to know what it is playing. Look up Fourier transforms first. Sounds are essentially waves, which the computer handles as samples. So the central idea is to encode the data in the frequency domain, as waves, convert it to samples, send it to the other computer (which means a loss of data), convert back to waves, and retrieve the data. Since noise shows itself as small waves superimposed on the big ones, you ignore these, and the system is robust.
[toc] | [prev] | [next] | [standalone]
| From | bob <bob@coolfone.comze.com> |
|---|---|
| Date | 2013-04-16 11:31 -0700 |
| Message-ID | <c2634d1e-05d6-4401-8494-a22ad49d8543@googlegroups.com> |
| In reply to | #3255 |
On Tuesday, April 16, 2013 9:31:28 AM UTC-5, malcolm...@btinternet.com wrote: > On Friday, April 12, 2013 2:59:55 PM UTC+1, bob wrote: > > > On Wednesday, April 10, 2013 2:54:16 PM UTC-5, Mark Storkamp wrote: > > > > > > > In article <cc773d77-afb1-48a4-bc6a-e79b4e50bd46@googlegroups.com>, > > > > > > > > > Encoding this is trivial. > > > > > > I could just have a WAV file for the "one" and a WAV file for the "zero". > > > > > > Then I could choose which one to play based on the data. > > > > > > However, I'm pretty sure decoding is non-trivial especially considering > > > noise (which hopefully can be minimized with a direct wire from audio output > to microphone input). > > > > > The snag is that you get what we call aliasing, or extra frequencies, at > > the joins between your two wav files. Which makes it hard for the decoder > > to know what it is playing. > > Look up Fourier transforms first. Sounds are essentially waves, which the > > computer handles as samples. So the central idea is to encode the data in > > the frequency domain, as waves, convert it to samples, send it to the other > > computer (which means a loss of data), convert back to waves, and retrieve > > the data. Since noise shows itself as small waves superimposed on the big > > ones, you ignore these, and the system is robust. It sounds like FSK is hard to decode, and encoding is of unclear difficulty. I'm thinking a more appropriate solution may be morse code. There will be two sounds - one short in length and one long in length - 'zero' and 'one' respectively. Then the WAV files will be as such: zero.wav - short silence, a short sound, short silence one.wav - short silence, a long sound, short silence If anyone has anything simpler, please let me know. Thanks.
[toc] | [prev] | [next] | [standalone]
| From | Daniel Pitts <newsgroup.nospam@virtualinfinity.net> |
|---|---|
| Date | 2013-04-16 11:45 -0700 |
| Message-ID | <Y_gbt.285124$%_6.159947@newsfe22.iad> |
| In reply to | #3256 |
On 4/16/13 11:31 AM, bob wrote: > It sounds like FSK is hard to decode, and encoding is of unclear difficulty. > > I'm thinking a more appropriate solution may be morse code. There will be two sounds - one short in length and one long in length - 'zero' and 'one' respectively. Then the WAV files will be as such: > > zero.wav - short silence, a short sound, short silence > > one.wav - short silence, a long sound, short silence > > If anyone has anything simpler, please let me know. How do you plan on decoding that? Why are you even talking about "wav" files. Also, why didn't you answer my earlier questions about what your real goal is?
[toc] | [prev] | [next] | [standalone]
| From | malcolm.mclean5@btinternet.com |
|---|---|
| Date | 2013-04-16 16:43 -0700 |
| Message-ID | <c12835bd-b95d-4f0d-b78a-6b6b2e93e7c9@googlegroups.com> |
| In reply to | #3256 |
On Tuesday, April 16, 2013 7:31:15 PM UTC+1, bob wrote: > > > I'm thinking a more appropriate solution may be morse code. There will > be two sounds - one short in length and one long in length - 'zero' and > 'one' respectively. Then the WAV files will be as such: > > zero.wav - short silence, a short sound, short silence > > one.wav - short silence, a long sound, short silence > > If anyone has anything simpler, please let me know. > That scheme might work. You've got two problems, the first of which is that your "silence" will consist of a region of low-valued samples, not zero-valued samples, unless the audio really is very good. The second rather more difficult problem is that the "sound" regions consist of high valued and low-valued samples, in correlated waves. However neither of those should be insurmountable. You've also got to consider how to code message start and message end. Often this is non-trivial.
[toc] | [prev] | [next] | [standalone]
| From | Daniel Pitts <newsgroup.nospam@virtualinfinity.net> |
|---|---|
| Date | 2013-04-10 15:29 -0700 |
| Message-ID | <2Jl9t.528235$Q91.501442@newsfe26.iad> |
| In reply to | #3239 |
On 4/10/13 11:52 AM, bob wrote: > What is a good way to have a small amount of data (maybe 100 bytes) audio-encoded and sent to another computer by sound? The other computer would read it into its microphone jack. > > Thanks. > That's what a modem does, basically ;-)
[toc] | [prev] | [next] | [standalone]
| From | Sjouke Burry <s@b> |
|---|---|
| Date | 2013-04-11 02:10 +0000 |
| Message-ID | <XnsA19F2AF71E0C2sjoukeburrysoesterbe@213.75.12.10> |
| In reply to | #3239 |
bob <bob@coolfone.comze.com> wrote in news:cc773d77-afb1-48a4-bc6a-e79b4e50bd46@googlegroups.com: > What is a good way to have a small amount of data (maybe 100 bytes) > audio-encoded and sent to another computer by sound? The other > computer would read it into its microphone jack. > > Thanks. > A phone modem, encoding and decoding done automatically.
[toc] | [prev] | [standalone]
Back to top | Article view | comp.programming
csiph-web