Since I have also been thinking along these lines information here would be appreciated. I suspect that you would not want the overhead of NetMeeting in a game. What you would mostlikly want to do is allow the voice to be captured and transmitted to the other player as a packet of data to be decrypted and played back.

In your case streaming the data might be more efficient. If you send it as just another type of data through your game server then you can perform actions on the player object to determine where the voice is coming from and encode it properly. The big thing in games these days is 3D sound. In your scenario this theoretically could be solved by using the vectors that the players are currently on.

Look forward to more response here, though you will probably get a better response in the general programming section.

Consider using a good 8bps voice codec. Something like TrueSpeech which I believe is free(someone correct me here if I'm wrong)

As to packaging the data transmission in your existing transport structure.. As long as your transport is of a broadcast type and not using somthing like TCP then I think it would be ok. Otherwise I would recommend sending it in its own broadcast transport layer.

Thanks for your replies guys. I'll check out the truespeech codec, as suggeested.

It is an interesting project indeed! It's a language learning tool I'm developing for a client. They want to be able to hook up 2 systems equipped with VR headsets. The idea being to get say, a French student linked up to an English student and get them to interact within a virtual village environment.

At the moment it's only a prototype that I'm developing. However, I have a very tight deadline! Looks like I'll be working over Christmas!!!

I suppose the truespeech should be easy enough to find. But just in case, if you have a url, i'll check it out. I'll have a search now anyway.

Coo - Something that I have done as well (hoping to release it free on the net soon - SquawkBox)

I found sending voice data pretty easy - the amount of data is not that large if you stick to the low frequency stuff (as you say, around 8Mhz). I just send the data in packets using TCP as I do normal game data - a header at the start of every packet to distinguish and send the data off to a DirectSound handler class - just play it as you receive it.

If you do write your own don't forget (as you probably realise but I missed it first time round) to dump 'silence' packets - ie dont send all those silences as this chews up the bandwidth.