You're right, using 0 in the silent channel in the psychopy case gives
a better result. For some reason I was thinking that no signal would
correspond to -1; I'm not much of an auditory psychophysicist.
However, although using 0 in the psychopy case gives a better result,
approximately equal to the pygame case, I still hear the tone in the
channel that's supposed to be silent. Maybe that could simply be an
electromagnetic problem with cross-talk in my earphones? I'll get some
high-quality earphones or speaker connection and try it with that.
Alex