Hola,
usando getDefinitionByName obtienes la clase, pero tienes que crear una instancia de ella (aunque no entiendo por qué te da error). He hecho una prueba y sí que funciona, aunque he cambiado un poco tu código:
- He creado un swf llamado "sonido", donde he importado a la biblioteca un mp3 llamado "XiaoChengGushi.mp3". En sus propiedades he activado "exportar para actionscript" y le he dado el nombre de clase "XiaoChengGushi".
- Dentro del mismo directorio he creado otro .fla con el siguiente código:

Código ActionScript :

import flash.utils.getDefinitionByName;
import flash.media.Sound;

var url_sonidos:URLRequest = new URLRequest();
var cargador:Loader = new Loader();
cargador.contentLoaderInfo.addEventListener(Event.COMPLETE, inicializar_sonidos);

var contexto:LoaderContext = new LoaderContext();
contexto.applicationDomain = ApplicationDomain.currentDomain;

url_sonidos.url = "sonido.swf";
cargador.load(url_sonidos, contexto);

function inicializar_sonidos(event:Event):void
{
   var XiaoChengGushi:Class = getDefinitionByName("XiaoChengGushi") as Class;
   var sonido:Sound = new XiaoChengGushi();
   sonido.play();
}