Я не уверен насчет расширения вашего приложения, но вы перепутали параметры функции addCallback ..
См. документ , первый параметр - это имя, которое выхотите представить функцию как javascript, вторая - это фактическая внутренняя функция AS3, которую вы хотите вызвать.
Таким образом, объявление должно выглядеть примерно так:
ExternalInterface.addCallback ("song4", pauseMusic);
(при условии, что ваша функция находится в той же области, в которой вы вызываете addCallback)
Этот оператор создаст метод "song4", который вы можете вызывать в своем объекте flash dom
var fl = document.getElementById('myflashobject');
fl.song4()
После проблемы с pauseMusic требуется параметр (похоже, вы сделали это обработчиком событий мыши).Вы, вероятно, хотите иметь чистый метод, который не требует такого параметра, как внутренний параметр события as3.Перепишите pauseMusic, чтобы он не требовался (вам может потребоваться создать другой метод для внутренней обработки события мыши - например, onPause (evt: MouseEvent), который затем вызывает pauseMusic.
Edit Я не знаю, думали ли многие об этом, но вы также можете полностью использовать внешний интерфейс для вызова функции console.log в firebug для отправки сообщений в Firebug из флэш-памяти (это действительно полезно для отладки проблем ExternalInterface или любых других проблем).проблемы со вспышкой - см. функцию ExternalInterface.call )