Perhaps this is closer to what you want:
(defmacro balance-sounds (&rest exprs)
(let* ((temps '())
(calls (mapcar #'(lambda (expr)
(let ((tmp (gentemp)))
(push tmp temps)
(list tmp expr)))
exprs)))
`(sound-let ,calls
(balance , at temps))))
or (balance ,@(reverse temps)) -- not sure which order you want.