From: Romain B. <to...@ra...> - 2010-01-28 22:19:37
|
Le jeudi 28 janvier 2010 13:59:17, Jean-Francois Mauguit a écrit : > hello, Hello Jeff ! > I did > > def livefade(previous,next) > add([fade.in(duration=2.,next),fade.final(duration=2.,previous)]) > end > > def backlivefade(previous,next) > source.skip(next) > sequence([previous,next]) > end > > live = fallback (track_sensitive=false,transitions=[livefade,backlivefade], > [live, input2]) > > It kills the source but it still play 2 seconds of the input2 old file > before playing the new one (as there is a buffer to empty somewhere). > > So it's close to the trick but not yes, Yes, indeed, you're very close to a possible solution ! When I try it here with 0.9.2, it works very well, though. I am using a playlist for the input, perhaps it depends on the source.. Anyway, you may want to use a fade.in on the next source (or perhaps better a fade.initial, since this operator does not care about track limits). If you use an exponential shape, the begining of the source will be almost zero and it will quickly increase. Something on these lines: def livefade(previous,next) add([fade.in(duration=2.,next), fade.final(duration=2.,previous)]) end def backlivefade(previous,next) source.skip(next) add([fade.in(duration=2.,type="exp",next), previous]) end Also, I can confirm that the fade.out transition does not work on harbor. I suspect this comes from the fact that the fallback does no see enough in advance to be able to trigger the transition on time.. Raising the buffer of the harbor input does not help apparently... Romain |