Ruby / Rails - способы потоковой передачи аудио (mp3 / wav / etc) ... Gem / Plugins vs HTML5? - PullRequest
7 голосов
/ 05 мая 2011

У меня есть приложение rails, которое отлично работает ... Я хотел бы дать пользователям возможность загружать и передавать загруженные mp3-файлы.

В настоящее время я загружаю в Amazon S3 через Paperclip с моим сайтом, размещенным на heroku.

Я могу отлично загружать mp3-файлы, так что теперь я просто ищу способ поддержать воспроизведение реальных файлов.

Есть ли какие-нибудь хорошие гемы / плагины, которые работают с этой проблемой, которые кто-то использовал раньше?

Должен ли я просто попытаться выяснить, как это сделать с HTML5?

Есть предложения или мнения?

1 Ответ

4 голосов
/ 23 мая 2011

Я бы просто использовал HTML5 и jquery, кажется, самый простой подход.

добавьте gem 'jquery-rails', '> = 1.0.3' в ваш Gemfile и запустите 'bundle install'

Затем добавьте некоторую разметку в свои представления, чтобы дать элементам div и ссылкам для воспроизведения песен идентификатор и имя класса.В этом случае идентификатор div / section - это «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;       });  
 }); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...