Idea for VoIP program
My idea of a dream VoIP program would have a lot in common with popular VoIP programs. Server-side presence information, firewall transversal, video, etc. I’d like a program that degrades gracefully. Popular programs try, but it seems that transmitting video can interfere with graceful degradation. Also, the lower limit on bandwidth and jitter is too high for my preference with many of these programs. I’d like a program that could transmit video and audio in conditions as low as dial-up. I’d like it to have an auto-reconnect preference to resist connection drops. I’d like a quality setting to allow the user to throttle their bandwidth usage. Maybe I’ll start a project like this someday. One can dream, eh?
Recap of my dream VoIP program:
- Text chat
- Low-latency audio
- Video
- Group chat, group audio, and group video calls
- Free internet-to-internet calls
- Robust back-end network
- Peer-to-peer for most operations (increases efficiency)
- Firewall transversal, when necessary
- File transfers
- Username-based identification. No confusing IPs or ports to work with
- Optional offline LAN-only mode
- Graceful quality degradation
- Audio and video usable in dial-up or GPRS conditions
- User-configurable quality setting
- Optional auto-reconnection for dropped calls
- Silent reconnection. The program stays hidden when it’s not called by the user. No pop-ups saying “THE NETWORK CONNECTION WAS LOST”.
- Extreme resilience to packet loss and jitter. I’d like audio to work in 50-80% packet loss. Maybe some extreme forward error correction would do the job.