我有一个简单的rails应用程序,允许上传视频文件,我需要获取每个文件的持续时间。到目前为止,最后一天还没有解决......
我正在使用:
paperclip-ffmpeg允许我上传视频,我正在使用此tutorial之后的rvideo gem来获取持续时间。在我的模型中,我有以下方法:
def get_video_duration
file = RVideo::Inspector.new(file: video.path(:original), ffmpeg_binary:'/usr/bin/')
file.duration
end
但持续时间方法返回零。我在视图中打印了文件结构:
--- !ruby/object:RVideo::Inspector
filename: The_Rolling_Stones_-_Paint_It_Black.mp4
full_filename: "/home/gotqn/RubyMineProjects/beta/public/webinars/42/original/The_Rolling_Stones_-_Paint_It_Black.mp4"
unknown_format: true
path: "/home/gotqn/RubyMineProjects/beta/public/webinars/42/original"
raw_response: |
/bin/sh: 1: /usr/bin/: Permission denied
ffmpeg_binary: "/usr/bin/"
能否告诉我这里做错了什么?
此外,我发现很难找到一个合适的宝石,我可以用它来获得持续时间。其中一些已经过时,其中一些可以与Jruby一起使用,其中一些我可以使用,因为我使用Ubuntu 13.04并且ffmeg的支持率很低。
所以,如果有人能告诉我一个更好的宝石,我会很乐意尝试。