output process_samples gets junk (?) data on track change 2020-08-12 17:32:03 I am trying to write an output component but am getting confused, I wonder if anyone could help..If I pause a track, pause() is called and then calls to process_samples() stop.When I play a new track flush_changing_track() is called, then pause(false) is called to 'play' the new track, and then samples start getting delivered to process_samples() again, but the first few are from the previous track. This means I hear a fraction of a second of the previous track before the new track plays. I can't see any way I can identify these samples as being from the previous track or flush whatever buffer they are coming from, as they are requested and delivered after flush_changing_track(), maybe I am missing something?
Re: output process_samples gets junk (?) data on track change Reply #1 – 2020-08-13 01:07:10 Did you enable Smooth Seeking/Pause/Volume changes in Output settings? That enables a slight crossfade, which is implemented immediately prior to the actual output.
Re: output process_samples gets junk (?) data on track change Reply #2 – 2020-08-13 11:16:32 I haven't. This is the fading options with a configuration UI that is at the bottom of the Output page in preferences? Actually I can't work out how to enable that for my output implementation, none of the configuration methods seem to enable it
Re: output process_samples gets junk (?) data on track change Reply #3 – 2020-08-13 12:24:40 Ahh I have figured this out, my bad. Actually the buffering of the previous track is happening totally outside of foobar or my code, in the receiver for the output data I am sending. So this problem isn't a real thing.I'm still interested about the fading options though - are those available to components using the SDK, or implemented in Peter's output components separately?
Re: output process_samples gets junk (?) data on track change Reply #4 – 2020-08-17 00:21:09 The reason I couldn't see the fading settings is because they are new in 1.6 beta. It's working now, thank you.