2011-05-04 29 views
7

我有一個很好的軌道應用程序...我想給用戶上傳和流上傳的MP3的能力。Ruby/Rails - 音頻流(mp3/wav/etc)的方法... Gem/Plugins vs HTML5?

目前我正在通過Paperclip上傳到Amazon S3,我的網站託管在heroku上。

我可以上傳完美的MP3,所以現在我只是尋找一種方式來支持播放實際的文件。

有沒有什麼好的寶石/插件可以解決以前有人用過的這個問題?

我應該繼續嘗試弄清楚如何用HTML5做到這一點嗎?

任何意見或建議?

回答

4

我只會使用HTML5和jQuery,似乎是最直接的方法。

添加寶石「jQuery的軌道」,「> = 1.0.3」到您的Gemfile運行「捆綁安裝」

然後在你的意見給予的div和鏈接,播放歌曲的ID添加一些標記和班級名稱。在這種情況下,div/section id是「song」,鏈接的類名是「play_song」。

<h2>Listen to Song</h2> 
<section id="song"> 
</section> 

<td><%= link_to "HTML5 Audio", download_url_for(song.key), :class => "play_song" %></td> 
在js文件

然後:

$(document).ready(function() { 
    var audioSection = $('section#song'); 
    $('a.play_song').click(function() { 

    var audio = $('<audio>', { 
     controls : 'controls' 
    }); 

    var url = $(this).attr('href'); 
    $('<source>').attr('src', url).appendTo(audio); 
    audioSection.html(audio); 
    return false;  }); 
}); 
+1

對於這個答案的一個非常完整的版本,在這裏看到:http://net.tutsplus.com/tutorials/create-a-simple-music-流式應用與 - 的Ruby-on-導軌/ – cailinanne 2012-03-05 02:07:56