On Fri, 10 Dec 2010 05:51:17 -0500, David Baelde <david.bae...@ens-lyon.org> wrote:
> Hi, > > On Mon, Dec 6, 2010 at 3:06 PM, <kro...@aolohr.com> wrote: >> a = audio_to_stereo(a) >> Starting liquidsoap. >> At line 30, char 22: unbound symbol audio_to_stereo. > > It means that your liquidsoap doesn't have any operator of that name. > Are you not using liquidsoap SVN or 1.0 beta? No, I'm using FreeBSD's liquidsoap 0.9.2.6 -- only one available for me. > >> [Btw, I did not use the 'a = mean(audio_to_stereo)request.queue(...)))' >> first, beacuse it barfed, and second, since absolutely none of my files >> are in stereo, nor will they ever be. I took your phrase 'unless all >> your input files are mono' as meaning I wouldn't need this. ] > > To clarify: if all your files are mono, you don't need anything (no > audio_to_stereo) if you also want a mono output, and audio_to_stereo > alone is needed if you want a stereo output. > > It's all written in the types of those operators: A mono output wants > 1 mono channel, a stereo wants 2. A request source that must play mono > and stereo files must have type *+1 (meaning at least one channel, but > variable). To go from variable to fixed number of channels you have > audio_to_stereo which has takes *+1 and yields 2. > > Now of course there's another ingredient that is hard to understand: > liquidsoap has some flexibility in assigning types, and it guesses for > you. But already having a rough idea of what channel types you want is > useful. Here are some examples illustrating what I said: > > $ liquidsoap --no-pervasives -c -i 'r = request.queue() > output.icecast(%mp3(mono),mount="foo",fallible=true,r)' > r : source(audio=1,video=0,midi=0) > > Here the source r must produce 1 channel. > > $ liquidsoap --no-pervasives -c -i 'r = request.queue() > output.icecast(%mp3(mono),mount="foo",fallible=true,mean(r))' > r : source(audio=?#A,video=0,midi=0) > > Now, it's okay if the source produces any number of channels, but > fixed. The precise number is unknown at the time of printing the type, > but will be forced to 2 by default. > > $ liquidsoap --no-pervasives -c -i 'r = request.queue() > output.icecast(%mp3(mono),mount="foo",fallible=true,mean(audio_to_stereo(r)))' > r : source(audio=*+1,video=0,midi=0) > > By inserting the audio_to_stereo, we've fixed the number of channels > in input of the mean() operator: two. More importantly, our source can > now produce a variable number of channels, but at least one (*+1). > > Cheers, -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/ ------------------------------------------------------------------------------ _______________________________________________ Savonet-users mailing list Savonet-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/savonet-users