I have had several people suggest improvements to me for making Speak Freely better than it already is. If you have any ideas, please contact me. As I said in an earlier email to the Speak Freely mailing list, this program won't get any better if people don't "speak" up. This is always a work in progress.
Before I get into what other people have suggested, let me state the ideas I would like to see featured and where they fall into the grand scheme of things. I will also tell when I plan to include them. After all, if I implemented all of these ideas by myself in version 7.0, it would delay its release further than I would like.
- Video Conferencing
This is personally my most desired feature. But, in order for that to happen I need a very fast video compressor/decompressor (codec). I have only seen 1 public domain codec so far, Telenor's TMN and TMNDEC H.263 Software. I will admit, however, that my search was brief, and there may very well be others out there. The problem with TMN (the encoder part) is that it is too slow for real-time compression of video. Unmodified, it would only yield 1 frame every 2 or 3 seconds on a Pentium 166. My goal is to either optimize TMN or find another freely available codec that would perform as good or better than, say, Intel's Video Phone. I would like to see this in the 7.0 release, but I think 8.0 is more realistic.
- Multiparty Conferencing
There is a simple conference mode in version 7.0 starting with Beta 1, but it is very rudimentary at this point. My goal (before the release of 7.0) is to implement audio blending where 2 people can talk to you at the same time, and you can hear them like you would on a 3-way conference call.
- Outgoing Answering Machine Message
This has been implemented in 7.0 starting with Beta 1.
- Echo Mode
This is another feature since 7.0 Beta 1, but it is very simple as well. I just adapted the local loopback to loopback to other callers as well.
- LWL Server for Win32
I would like to see this and other functionality remain cross-platform. I'd also like to add syncronization between multiple servers, as well as support for larger numbers of users. This is definitely for the 7.0 release. I just haven't done too much with it yet. I could use people with dedicated Internet connections to test this, especially with replication. I want to use Berkeley DB for it to make sure it handles multiple simultaneous requests.
- Merge source to one common tree
This is something that will take a lot of time and effort to make sure we don't break any platform in the process. I think this should be done because I don't want to have to maintain two completely separate programs. If a program is coded properly, it can support multiple platforms and be extended to support new ones easily. This will be after 7.0, probably 7.1 or 8.0 (whatever the versions happen to be then).