stream switching latency problems
  • I've been playing with the 2.1.3 Airtime off and on for the past week or so.  Pretty slick.  Good job.

    Its taken me a while to sort through it since I'm not all that familiar with audio software in general, but I think I've got the basics sorted out.

    I've run Airtime (AT) both on an Amazon EC2 instance (ubuntu server 12.04) and locally on a virtualbox ubuntu 12.04 server.  They both show the same problem: when I inject a live stream into either the Show or Master streams I see a large latency; the AT output stream reliably lags Master input by about 10 seconds, and the Show stream can lag by as much as 40 or 50 seconds.  I see the same behavior using either mixxx or darkice as source to either the Show or Master streams.  I think the larger and longer Show latency reflects in part the problem of initiating the connection at 'exactly' the moment AT starts listening for the live incoming stream.  The actual stream handoffs themselves are reasonably quick, once AT gets around to doing it.

    I couldn't figure out where the latency was coming from until I happened to notice that the output latency nearly exactly matched the time it took for the source stream to get through the authentication/parameter-negotiation jiggery-pokery when the stream hooks into the AT server.  That is, when I click on the 'enable live broadcasting' option in mixxx there is approximately a 10 sec delay before I see the success notification, and 10 sec after that the delayed stream comes through the AT listener.   I'm guessing the source stream buffers output until the downstream connection is established and then starts dumping from t=0 instead of t=10s (connection time).

    Is there any way around this problem?  Can AT be made to skip ahead when it picks up a live stream somehow? 

    Its more annoying than anything else, but it is hard to adjust volume and such things on the origin streams when you have to wait 10-50s to hear the result of the adjustment.  Its also a bit awkward for the 'live' show to be almost a minute old when the listeners hear it.
  • 1 Comment sorted by
  • To get around the latency/buffering issue, you could simply connect to the master source ahead of time so that all authentication parameters are taken care of. Then simply "flick" the switch when it is time to go live.
    Airtime Pro Hosting: http://airtime.pro