1

jwplayerを使用してプレイリストとして音楽ファイルを再生するための次のJavascriptがあります

function playAllAudio() {
var audioDiv = "<div id='audioplayer'></div>";
    //Get ids from selected files
var sData = $('input', oTable.fnGetNodes()).serialize();

$.post("mediaStream.do", {OID : sData},function(data) {     
    jwplayer('audioplayer').setup({
        'controlbar': 'bottom',
        'width': '470',
        'height': '24',
        //'playlist': [{file:'mp3:audio/audioMotion'},{file:'mp3:audio/audioTangled'},{file:'mp3:audio/audioSunHands'}],
         'playlist': data,
        'provider': 'rtmp',
        'streamer': 'rtmp://XXXXXXX.cloudfront.net:1935/cfx/st',
        'modes': [
            {type: 'flash', src: 'https://YYYYYYYYY.cloudfront.net/player.swf'}
        ]
    });

});
}

データはJSON文字列として動的に作成されます。値はjwplayer用にフォーマットされた曲のファイル名です。

var data = "[{file:'mp3:audio/audioMotion'},{file:'mp3:audio/audioTangled'}]";

ただし、変数「data」を使用すると、jwplayerが機能しません。サーバーからJavaScriptに渡されたデータでそれを機能させるにはどうすればよいですか?

4

2 に答える 2

3

動的に作成されるデータはJSON文字列ですが、jwplayerの構成playlistは配列である必要があり、最初に文字列を配列にカバーする必要があります。

var data = "[{file:'mp3:audio/audioMotion'},{file:'mp3:audio/audioTangled'}]";
data = JSON.parse(data); // with out IE8-

ただしJSON、IE8-ではサポートされていません。DouglasCrockfordのjson2を使用して修正できます。

于 2012-06-30T03:47:11.970 に答える
0

mediaStream.do呼び出しからの応答として、それを渡すのと同じように渡すことができます。

jsonが有効であると確信していますか?http://jsonlint.com/で応答を検証してみましたか?

于 2012-06-30T03:45:24.750 に答える