Streaming MOH from external source

I have a Rhino Cerros Desktop. for an external music on hold solution I tried to use a Sabrent USB Stereo 3D Sound Adapter and a Creative Sound Blaster Audigy SE PCI sound card. Both produce interrupts and horrible sound when you place a call on hold. I have my alsamixer set up properly.

In /usr/sbin/ast-mohin I have this:
/usr/bin/arecord -q --buffer-size=8096 -f S16_LE

Have FreePBX Streaming MOH programmed properly, and the streaming category set in my Inbound and Outbound Routes. Feeding both with an iPod 2.5mm in to the line/mic input.

Any suggestions on how to set up an external MOH source?

I am running a PCI card and have two open FXO ports. I could put in one of Rhino’s FXS modules if anyone can conceive of a way to stream it through one of those ports.