The AudioOutputBlocking functions seem to not return 0 upon success, but higher values. I don't know what they mean, but that does mean that the documentation here is incorrect: http://pspdev.github.io/pspsdk/pspaudio_8h.html
My guess would be that it either returns the amount of samples in the buffer or the amount of samples added with the function. I don't know for which functions this applies for sure. It does apply to sceAudioSRCOutputBlocking it seems, possibly also for sceAudioOutputPannedBlocking.