I am trying to make a Voice Chat program in Visual Basic, using the Fmod Sound System.
I tryed to use the FSOUND_Record_StartSample with loop, but i’me having a problem with the sample data recorded. I mean, i have to get the sample data buffer , and then send it to the remote computer… in real time.
My ideea was to send a buffer to the remote computer every 2 secs.
But when i start recording to a sample with loop , when the recording has hit the end of sample it goes from the start again, and i don’t know how to get the recorded buffer.
Any ideas? Please reply. :-?
- Phlonta asked 14 years ago
Thanx verry much guys. 😀
I already made a sample (Test) of the project, but on LAN, because i used Wave compression ( or better said: No compression) . The bad thing is that the program sends data about 1.5 MB in 20 - 25 secs... i don't know for sure the exact secs... :-? But.. this is only the first test. In the future i will use a compression, but i'me not sure witch it will be. As soon as the program will be ready, i will launch it on net... (free) or.. open source :wink:
I also wanna know:
– if i want to make a voice chat through internet (IP), how can i make a Sample (or stream) compression . I mean , when i start recording from microphone, it records a wave stream. How can i make a mp3 compression, or something like this, because if the data transfer through Internet is 10 – 15 Kbs, it wont work with wave compression…
P.S.: PLS excuse my spelling (and my english) 😆
I would suggest using a compressed wave format, like PCM. I’m not too sure as to how you would compress it, you would have to do some research. Or maybe Brett knows! 😀 But, you shouldn’t use a format like MP3 because it’s really lossy.
My advice is to use a more compressed format, [url=http://www.speex.org/:3mwz38vr]Speex[/url:3mwz38vr] is a sound library for voip (voice over ip) : it is fast, efficient and easy to use.
You will certainly have to convert exported function to _stdcall to make them usuable within VB.
Then, just compress the data sent by FMOD ( from a dspcallback ), then you get a chunk of compressed data, ready to be sent.
Btw, as voip use low samplerate, don’t init fmod up to what you initialized with speex.
Paranoid_Android>i don’t think that using a losy compressed format like mp3 is really a problem when coding a voip tool.
Paranoid_Android>i don’t think that using a losy compressed format like mp3 is really a problem when coding a voip tool.[/quote:2ytnmlzy]
I have to disagree, using a format like MP3, which is not really intended for voice chat, wouldn’t make sense, and MP3 being very lossy it wouldn’t provide very good quality, as I assume you would be compressing it at low bitrates. But maybe I’m wrong 😕
yes you are wrong, sound quality is not usefull when using voice chat, the human voice go from [url=http://www.mp3-converter.com/mp3codec/waveforms.htm:135j39zy]500 hz to 2 khz[/url:135j39zy] (when talking, not crying or anything else).
But as i said, speex is what Phlonta should use.
[quote="KarLKoX":1o93dtpd]yes you are wrong, sound quality is not usefull when using voice chat, the human voice go from [url=http://www.mp3-converter.com/mp3codec/waveforms.htm:1o93dtpd]500 hz to 2 khz[/url:1o93dtpd] (when talking, not crying or anything else).
But as i said, speex is what Phlonta should use.[/quote:1o93dtpd]
hehe, ok, no big deal.
Please login first to submit.