2014-02-21 65 views
0

我正在使用媒體播放器,我希望能夠排列數組中的本地文件,播放它,甚至將其導出爲播放列表(供以後導入) 。使用JavaScript和HTML5存儲和播放本地文件音頻

我發現這個問題,有很多有用的信息: Using local file for Web Audio API in Javascript 然而,Base64編碼方法會使播放列表太大,而other解決方案創建一個沙箱文件鏈接(這是從瀏覽器時,會話中刪除關閉了)。

有沒有什麼好的方法可以做到這一點?

編輯:這裏有我想要的一個例子:

var playlist = {'file:///home/user/music/track1.mp3','file:///home/user/music/track2.mp3','file:///home/user/music/track3.mp3'}; 

它並不一定是這樣的,我只是想類似的東西。

+0

你要的文件被保存的地方,甚至當會話被關閉? –

+0

@NevinMadhukarK我想在用戶的硬盤上引用文件,以便他可以創建一個播放列表並稍後重新加載它。 –

回答

0

爲什麼不試試html5上的localstorage功能。 即使會話過期後,它也可以幫助存儲數據。

http://www.w3schools.com/html/html5_webstorage.asp

http://diveintohtml5.info/storage.html

我在音樂播放器所做的,就是專賣店在localStorage的文件數據路徑。 每當我需要它時,我都會檢索它,並用當前的歌曲替換當前的歌曲。

//商店 localStorage.setItem( 「路徑」, 「文件:///home/user/music/track1.mp3' 」);

//取回
currentSong = localStorage.getItem('Path');

多首歌曲,ü可以創建對象並做類似: Storing Objects in HTML5 localStorage

+0

當我回家時會測試這個!我可以將完整的localStorage導出到一個文件嗎?我可以用它來存儲整個播放列表。 –

+0

您可以將存儲在localStorage中的整個對象文件作爲JSON格式傳輸到文件中。 檢查我提供的最後一個鏈接。 這幫助我做我的項目。 :) 如果它幫助你,請接受我的答案。 :) –

+0

我試過你的方法(http://jsfiddle.net/Tv8Cm/56/),但我得到錯誤「'不允許加載本地資源:file:/// file.mp3'」當試圖加載文件。我的代碼有問題嗎? –

相關問題