2016-03-23 4 views
0

У меня есть следующие модели, которая имеет аксессор, который принимает звуковой файл в формате WAV, а затем сохраняет егоРубин на Rails Dragonfly

class Audio < ActiveRecord::Base 
    belongs_to :contribution 
    belongs_to :recorder 


    dragonfly_accessor :audio, :app_name => :videos do 
    storage_options do |audio| 
     { path: "audios/#{audio.name}" } 
    end 
    end 


end 

То, что я хочу сделать, это преобразовать это аудио из WAV в MP3, прежде чем сохраняя его.

+0

Что вы узнали, когда вы искали о преобразовании файлов из WAV в MP3 с помощью Ruby? Что вы пробовали? Пожалуйста, прочитайте «[mcve]». –

+0

Я начал пример приложения для этого https://github.com/mzaragoza/sample_convert_mp3_to_wav Я застрял, когда я делаю wav.to_mp3, но я буду продолжать работать над этим – MZaragoza

+0

Вы попробовали решение, предложенное @ddgd? Похоже, это должно работать –

ответ

1

Стрекоза не может это сделать по умолчанию, вам нужно добавить a custom processor и, вероятно, использовать какой-то инструмент командной строки для него, here's a few examples

Так что, если вы идете с одним из лучших ответов от этого потока и использовать libav-инструменты вашего пользовательский процессор будет выглядеть следующим образом (возможно, также потребуется изменить new_path расширение файла .mp_3):

processor :to_mp3 do |content| 
    content.shell_update do |old_path, new_path| 
    "avconv -i #{old_path} #{new_path}" 
    end 
end 
Смежные вопросы