无法使用Rails中的Paperclip-FFMPEG gem上传/转换视频

时间:2012-07-30 16:21:05

标签: ruby-on-rails ruby ffmpeg paperclip

修复:这是由于我没有发现相关lib文件中的拼写错误!有关详细信息,请参阅this issue


我仍然是一个Ruby on Rails新手(运行Rails 3.2.6和Ruby 1.9.3p194),但我发现使用paperclip-ffmpeg gem转换视频文件非常困难。无论我做什么,尝试上传视频后页面上都会显示错误消息:

“无法加载此类文件:/ [...我的信息...] / lib / paperclip_processors / ffmpeg.rb”

我正在尝试暂时使用.mov文件进行测试。

我正在尝试关注instructions on the gem's github page,但没有太大成功。

首先,我正在使用Mac(Snow Leopard)并安装了ffmpeg(运行which ffmpeg告诉我它在/user/local/bin/ffmpeg

在我的应用程序中,我已将以下行添加到gemfile中:

gem 'paperclip'
gem 'paperclip-ffmpeg' 

我还按照说明将Paperclip.options[:command_path] = "/usr/local/bin/"添加到config / environments / development.rb:

Myapp::Application.configure do

...

Paperclip.options[:command_path] = "/usr/local/bin/"
end

(说明书还建议“在您的环境配置文件中,让Paperclip知道通过将该目录添加到其路径来查看”,但我不知道这意味着什么 - 也许这是问题?)。

我的课程结构如下:

class Myvideo > ActiveRecord::Base

  attr_accessible :description, :title, :video

  has_attached_file :video, :styles => { 
      :medium => { :geometry => "640x480", :format => 'flv' }
    }, :processors => [:ffmpeg]


end

我的理解是上面的代码将上传的电影从.mov(或其他)转换为.flv格式。

但是,只要用户点击“上传”按钮,就会显示上面描述的错误(在视频上传时保存几秒钟)。

请注意,我可以通过标准的Paperclip gem 上传视频而无需转换,没有任何问题。因此,此代码有效(即视频已上传但未发生转换):

attr_accessible :description, :title, :video

  has_attached_file :video

我可能会出错的任何想法?谢谢!


编辑 - 原始错误消息(“无法加载此类文件...”)似乎已经出现,因为我没有在/lib目录中包含Github的相关ffmpeg.rb文件。感谢@ wehal3001指出这一点!

但是,虽然我现在在我的应用程序中有这个文件,但在尝试上传视频时仍然会出现以下错误:

未初始化的常量Paperclip :: Ffmpeg :: PaperclipError ... lib / paperclip_processors / ffmpeg.rb:123:in rescue in make' lib/paperclip_processors/ffmpeg.rb:120:in make' app / controllers / videos_controller.rb:43:在new' app/controllers/videos_controller.rb:43:in创建'

非常感谢任何帮助!

0 个答案:

没有答案