Thursday, January 17, 2008

[asterisk-users] buffer-issue when piping live-streams into musiconhold

Hi Folks,

I'm currently trying to configure musiconhold (on a asterisk-1.4.17) for replaying a live mp3-stream (Icecast2). after reading the related material on voip-info and several other pages, I've successfully tried out mpg132, madplay and mplayer to pipe a stream into moh.

however, there is one major problem involving some kind of buffer-issue. let me try to explain this problem using a timeline:

10:00 I'm calling the pbx, musiconhold starts correctly to play the live-stream (almost live, with very small delay) - that's OK.
10:01 I hangup.

-- than I pause for 20 min --

10:20 I'm calling a second time. However moh now doesn't stream live, but starts to continue playing the stream from 10:01. This goes on for about 30secs, then the replay stops for a second and continues at the correct position (once again, rather "live"). along I get this message at the console:

[Jan 17 20:37:15] NOTICE[6220]: res_musiconhold.c:544 monmp3thread: Request to schedule in the past?!?!
[Jan 17 20:37:15] NOTICE[6220]: res_musiconhold.c:544 monmp3thread: Request to schedule in the past?!?!

I've installed the ztdummy-module as I've read that the message "Request to schedule in the past?!?!" might have something to do with that, however this didn't help.

It looks like there's some kind of buffering going on...

Thanks a lot for any suggestions, at this point I'm rather clueless ;)

regards,
michael




musiconhold.conf:

[default]
mode=custom
application=/etc/asterisk/mohstream.sh

mohstream.sh

#!/bin/bash
/usr/bin/wget -q -O - http://my.stream.com:8000 | /usr/bin/madplay -Q -z -o raw:- --mono -R 8000 -a -12 -


No comments: