Ruby/Rails - 流式传输音频(mp3/wav/等)的方法...Gem/Plugins 与 HTML5?

发布于 2024-11-04 19:40:53 字数 252 浏览 1 评论 0原文

我有一个运行良好的 Rails 应用程序...我想让用户能够上传和流式传输上传的 mp3。

目前,我正在通过 Paperclip 上传到 Amazon S3,我的网站托管在 heroku 上。

我可以完美地上传 mp3,所以现在我只是在寻找一种支持实际文件播放的方法。

是否有任何好的宝石/插件可以解决这个问题,有人以前使用过?

我是否应该继续尝试弄清楚如何使用 HTML5 来做到这一点?

有人建议或意见吗?

I have a rails app that is coming along nicely...I would like to give the users the ability to upload and stream uploaded mp3s.

Currently I'm uploading to Amazon S3 through Paperclip with my site hosted on heroku.

I can upload the mp3s perfectly fine, so now I'm just looking for a way to support the playing of the actual files.

Are there any good gems/plugins that work with this issue that someone has used before?

Should I just go ahead and try to figure out how to do it with HTML5?

Anyone suggestions or opinions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

天赋异禀 2024-11-11 19:40:53

我只会使用 HTML5 和 jquery,这似乎是最直接的方法。

将 gem 'jquery-rails', '>= 1.0.3' 添加到 Gemfile 中并运行 'bundle install'

然后在视图中添加一些标记,为播放歌曲的 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;       });  
 }); 

I would just use HTML5 and jquery, seems to be the most straightforward approach.

add gem 'jquery-rails', '>= 1.0.3' to your Gemfile and run 'bundle install'

Then add some markup in your views to give the divs and links for playing songs an id and class name. In this case the div/section id is "song" and the classname for the link is "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> 

Then in your js file:

    $(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;       });  
 }); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文