Simple PC to PC audio intercom

I’m wanting to create a very simple audio intercom to work between 2 PCs on a LAN. I’ve tried downloading a few trials of commercially available products but they are more geared toward SIP telephony over the internet and haven’t been able to configure them to work as a simple LAN intercom.
All I want is the have a microphone and speaker connected to both PCs and when one user clicks the “Push to talk” button on one PC, their voice sounds from the speaker on the other. I don’t want to rely on a service in the cloud for this. I need to treat these PCs as though they are air-gapped from the internet.
I know I have to be able to create this in Delphi but don’t know where to start.
Has anyone done anything like this that might be able to give me a starting point?

1 Like

Regarding looking down the route of a possible existing solution …

I first thought of Discord … lots of people use it while gaming, or co-watching movies, etc.
And maybe you can host your own server.

Also : “Chat system like Discord on a private network?”
https://www.reddit.com/r/selfhosted/comments/pdc0my/chat_system_like_discord_on_a_private_network/

On the other hand … ex Turbo Power AsyncPro is on GetIt and says it handles VOIP.

TMS webcore has a WebRtc example…not sure if it is peer to peer.

Does it need to be real time or could it simply record the message then send to the other pc where it’s played?

It does need to be real time. On one end there won’t be someone working at the computer all of the time. This one will have an amplified load speaker (think PA) connected to it so that the people working in that area can hear it and then come to the computer and make a reply.

Maybe check out the Bass library? BASS

Pretty sure they have streaming stuff.

Also if the recorded message was short, that’s pretty much real time anyway. It’s just delayed by the length of the message.

I made a simple intercom system years ago based on Microsoft’s ACM (Audio Compression Manager) which allows you to dramatically reduce the required bandwidth. There are some delphi components out there based around this technology.

Regards

Paul

1 Like

Interesting thought.

I’ve used BASS to create audio players before so I will have a further look at this.

John Van De Giessen

1 Like

I found an old intercom program that uses the ICS socket and deAudio libraries. If you want a copy let us know an email address I can send it to.

This was written in Delphi 7 but I have managed to compile it in XE.

Sounds interesting to me too!
Could you send a copy to ledmonds99@gmail.com please?
Or maybe put it on Github or Dropbox.

Cheers,
Lex

I copied it to my github repo https://github.com/pjde/intercom

I also zipped up my deAudio folder as it may be hard to find these days.

Enjoy

Paul

1 Like

Hi Paul,

Yes, I would appreciate that very much. Thankyou.

I’m not sure if putting my email address in the forum is breaching forum regulations of not. Could we have a comment from a moderator on this please?

I don’t think it is breaching forum regulations if you put your own email address in.

As I understand it, the logic behind not using email addresses is to protect privacy, and to comply with GDPR regulations. The forum gives you the option to contact people directly using DM by clicking on the name or icon for a user. That way you can share email addresses without publishing them to the outside world and to any spammers that may get access to the posts.

HTH

2 Likes

Hi Paul,

Thankyou, I’ve downloaded it.

Let us know if you get it working. It was actually written for an ADUG talk ages ago (Delphi was still Borland back then)

1 Like

Hi Paul,

Yes, will do. :blush:

1 Like