// クラスの作成
function playmp3(){}
// property
playmp3.version  = '1.1';
playmp3.swf_path = 'playmp3.swf';
playmp3.objid    = 'playmp3_objid';
playmp3.divid    = 'playmp3_divid';

/* urlで指定したファイルを再生します。 */
playmp3.playFile = function(url) {
    var f = this.getObj();
    if (f && f.playFile) f.playFile(url);
};

/* urlで指定したファイルを番号noに読み込みます。 */
playmp3.loadNo = function (url, no, onLoad) {
    var f = this.getObj();
    if (f && f.loadNo) f.loadNo(url, no, onLoad);
};

/* loadNo()で読み込んだno番のサウンドをoffsetの位置からloops回再生します。 */
// @param   no      番号
// @params  offset  再生する位置
// @params  loops   繰り返しの回数
playmp3.playNo = function (no, offset, loops) {
    var f = this.getObj();
    if (f && f.playNo) f.playNo(no, offset, loops);
};

/* loadNo()で読み込んだno番のサウンドを停止します。 */
// @param   no  番号
playmp3.stopNo = function (no) {
    var f = this.getObj();
    if (f && f.stopNo) f.stopNo(no);
};

/* loadNo()で読み込んだno番のサウンドの音量をvに設定します。 */
// @param   no  番号
// @param   v   音量(0‾100)
playmp3.setVolumeNo = function (no,v) {
    var f = this.getObj();
    if (f && f.setVolumeNo) f.setVolumeNo(no,v);
};

/* loadNo()で読み込んだno番のサウンドを定位をvに設定します。 */
// @param   no  番号
// @param   v   音量(-100‾100)
playmp3.setPanNo = function (no,v) {
    var f = this.getObj();
    if (f && f.setPanNo) f.setPanNo(no,v);
};

// 以下自動的に呼ばれるメソッド
playmp3.getObj = function () {
    var id = this.objid;
    return (navigator.appName.indexOf("Microsoft") != -1) ? window[id] : document[id];
};
playmp3.setup = function () {
    var theDiv = document.body.appendChild(document.createElement("div"));
    theDiv.id = this.divid;
    this.swf  = new SWFObject(this.swf_path, this.objid, "1", "1", "8", "white");
    this.swf.write(this.divid);
};
// 初期化
addEvent(window, "load", function() {
	playmp3.setup();
});
