1 / 17

Voice Over IP

Voice Over IP Developing IPHONE Jeremy Stanley CS 460 section 1 VoIP Advantages No long distance fees No dedicated circuit More efficient use of networks 64 Kbps raw audio vs. 13 Kbps compressed Data need not be transmitted during silence VoIP Issues Latency Packetization

paul2
Download Presentation

Voice Over IP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Voice Over IP Developing IPHONE Jeremy Stanley CS 460 section 1

  2. VoIP Advantages • No long distance fees • No dedicated circuit • More efficient use of networks • 64 Kbps raw audio vs. 13 Kbps compressed • Data need not be transmitted during silence

  3. VoIP Issues • Latency • Packetization • Network jitter • Quality of Service • Real-time requirements • Addressing Issues • IPv6 is a pratical necessity

  4. Voice Encoding • PCM (pulse code modulation) • ADPCM - adaptive delta PCM • Fast 4:1 Compression, Good quality • Vocoders (LPC, CELP, GSM) • Slower, 12-30x compression common • Voice only - Music does not work well

  5. Introduction to IPHONE • Win32 application • Uses Windows Multimedia and Sockets APIs for audio and communication • Two-way, full duplex voice channel (PC to PC) • Runs over UDP or TCP, supports data compression and silence detection

  6. IPHONE Design

  7. Screen Shot

  8. The Naïve Algorithm • Receive thread • Receive a packet • Decode and play audio • Return to step 1 • Send thread • Record audio • Encode, packetize, and send • Return to step 1

  9. Problems • Sounds like talking into a fan • Latency quickly rises to intolerable levels

  10. Timing Issues

  11. Solutions • Asynchronous sound processing • Encode and send previous packet while recording current packet • Receive and decode next packet while playing current packet • At least two send and receive buffers required

  12. Revised Algorithm

  13. Network Jitter • The double-buffered solution last described works well on a LAN • Delay still accumulates when receive buffer empties due to delayed packets • Increasing receive buffer only does so much - it will eventually be exhausted

  14. Jitter Solutions • Drop late packets • Imperceptibly increase playback speed • Shorten delays between words • Use silence detection • IPHONE does this

  15. Silence Detection • Do not send audio chunks whose maximum amplitude is below a silence threshold • Phone conversations are 60% silence • Turns voice into bursty data

  16. Comfort Noise • Total silence construed as dead line • Substitute pre-recorded "open mic" • Play low-volume white noise • Record and repeat periods of silence during conversation

  17. Demonstration/Questions

More Related