Je ne suis pas un expert mysql, mais n'avez-vous pas besoin de vous référer à la variable OUT à tout moment et de lui attribuer une valeur ?
Par exemple, comme on le voit sur http://dev.mysql.com/ doc/refman/5.0/en/call.html :
CREATE PROCEDURE p (OUT ver_param VARCHAR(25), INOUT incr_param INT)
BEGIN
# Set value of OUT parameter
SELECT VERSION() INTO ver_param;
# Increment value of INOUT parameter
SET incr_param = incr_param + 1;
END;
HTH
Phil'