Hi, I am not so confident about hardware details, sorry. There are ways to improve the situation but I don't think that it is physically possible to keep to clocks in sync. I came up with another solution. The idea is to modify the buffer operator so that if the source is late some samples are duplicated and if the source is ahead we drop some samples. If the drift is small we should not have an audible effect. You can try it by compiling the resampled-buffer branch (see https://github.com/savonet/liquidsoap/pull/131 ) and replace your "buffer" operator by "buffer.adaptative". How does that sound to you?
Cheers, Samuel. On Thu, Nov 14, 2013 at 12:13 PM, Matt Camp <[email protected]> wrote: > One other thing... > > This system has no onboard RTC, though I can add one via a uart module. Would > that help at all? > > Also is there a way to show how full the liquidsoap buffer currently is? I'd > like to be able to monitor it without having to wait 46 minutes to see if any > changes have an effect. > > Sent from my iPad > > On 14 Nov 2013, at 08:08, Samuel Mimram <[email protected]> wrote: > >> Hi, >> >> You needed to play with clocks in your scripts for a good reason: the >> clock from alsa is not the same as the one for icecast. Even though >> you expect everything to run at 44100 hz, in practice the clock on >> your soundcard is a piece of hardware which unfortunately drifts a >> tiny bit, and this drift cumulates on the long run. In summary I think >> that your soundcard is producing data slower than your icecast needs >> and after some time, the buffer is empty and has to be refilled >> (during which there should be blank). If my analysis is right, here is >> what you can do: >> >> - buffer more, i.e. change last line to "buffer(buffer=5.,radio)" >> (with 5 you should experience the problem every 5*46min) >> >> - change your soundcard (1 sec every 46min does not seem very good, >> what hardware do you have?) >> >> Cheers, >> >> Samuel. >> >> On Wed, Nov 13, 2013 at 10:49 PM, Matt Camp <[email protected]> wrote: >>> Here's an odd one... for some reason Liquidsoap appears to run out of buffer >>> every 46 minutes (give or take about a minute), causing a brief blip in the >>> audio. >>> >>> I'm doing live input and streaming to icecast2 in he_aac_v2 via fdkaac. >>> >>> I've included the full log file and also the .liq file here: >>> http://pastebin.com/xuurQxbt >>> >>> Any ideas? >>> >>> 2013/11/13 18:14:38 [mksafe:3] Switch to warp_prod_4886 with transition. >>> 2013/11/13 19:01:31 [warp_prod_4886:3] Buffer emptied, start buffering... >>> 2013/11/13 19:01:31 [mksafe:3] Switch to safe_blank with transition. >>> 2013/11/13 19:01:32 [mksafe:3] Switch to warp_prod_4886 with transition. >>> 2013/11/13 19:49:19 [warp_prod_4886:3] Buffer emptied, start buffering... >>> 2013/11/13 19:49:19 [mksafe:3] Switch to safe_blank with transition. >>> 2013/11/13 19:49:20 [mksafe:3] Switch to warp_prod_4886 with transition. >>> 2013/11/13 20:36:10 [warp_prod_4886:3] Buffer emptied, start buffering... >>> 2013/11/13 20:36:10 [mksafe:3] Switch to safe_blank with transition. >>> 2013/11/13 20:36:11 [mksafe:3] Switch to warp_prod_4886 with transition. >>> 2013/11/13 21:22:41 [warp_prod_4886:3] Buffer emptied, start buffering... >>> 2013/11/13 21:22:41 [mksafe:3] Switch to safe_blank with transition. >>> 2013/11/13 21:22:42 [mksafe:3] Switch to warp_prod_4886 with transition. >>> >>> >>> ------------------------------------------------------------------------------ >>> DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps >>> OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access >>> Free app hosting. Or install the open source package on any LAMP server. >>> Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! >>> http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> Savonet-users mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/savonet-users >>> >> >> ------------------------------------------------------------------------------ >> DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps >> OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access >> Free app hosting. Or install the open source package on any LAMP server. >> Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! >> http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk >> _______________________________________________ >> Savonet-users mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/savonet-users > > ------------------------------------------------------------------------------ > DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access > Free app hosting. Or install the open source package on any LAMP server. > Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > _______________________________________________ > Savonet-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/savonet-users ------------------------------------------------------------------------------ DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access Free app hosting. Or install the open source package on any LAMP server. Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk _______________________________________________ Savonet-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/savonet-users
