I was going through the sound tutorial trying to add sound to a map. It didn't work for me. When I went back into Radiant to check the settings of my script model speaker, it was visually gone. I tried again to make sure the changes were saved. For some reason they vanish when exiting Radiant.
Apparently if you don't add a model key/value pair the entity will not get saved. I must have had a spelling error or incorrect path on my first few tries. All the subsequent tries I just threw a script model in without the pair.
Any entity can be a speaker, it just has to have a targetname. I like using a small brush with nodraw texture that is then turned into a script_object.