xargs
está funcionando conforme pretendido; cada linha é tomada como um parâmetro. Se você quiser vários parâmetros, separe-os com novas linhas.
{echo "$title"; echo "$artist"; echo "$album"} | xargs notify-send
Dito isto, você está fazendo muito trabalho para algo bem simples:
title="$(echo "$info" | sed -n 's/^tag title //p')"
artist="$(echo "$info" | sed -n 's/^tag artist //p')"
album="$(echo "$info" | sed -n 's/^tag album //p')"
notify-send "$title" "$artist" "$album"
(Observe também uma outra pegadinha: notify-osd
envia as mensagens passadas pelo Pango, então você precisa escapar de qualquer coisa que possa ser confundida com a marcação do Pango. Isso significa <
, >
e &
em prática, assim como com HTML e XML. O acima não tenta lidar com isso.)