2011-05-04 30 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