- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
大家好,我最近在 Windows 10 x64 机器上开始了一个 Ruby on Rails 项目。在这个项目中,我有一个带有 Carrierwave 的上传表单来上传一些视频文件。要从上传的视频中获取缩略图,我想使用 carrierwave-video-thumbnailer gem。
https://rubygems.org/gems/carrierwave-video-thumbnailer
我已经在我的电脑上安装了 FFMPEG。正如我所理解的那样,要使用我需要安装 FFMPEGthumbnailer 的 gem,但我不知道如何在 Windows 机器上安装它。(刚找到 Linux 和 OS X 的安装指南)我错过了什么?
在我的上传文件中,我有以下代码:
class VideoUploader < CarrierWave::Uploader::Base
# Include RMagick or MiniMagick support:
# include CarrierWave::RMagick
# include CarrierWave::MiniMagick
include CarrierWave::Video::Thumbnailer
version :thumbail do
process thumbnail: [{format: 'jpg', quality: 8, size: 360, logger: Rails.logger}]
def full_filename for_file
jpg_name for_file, version_name
end
end
def jpg_name for_file, version_name
%Q{#{version_name}_#{for_file.chomp(File.extname(for_file))}.jpg}
end
storage :file
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
def extension_white_list
%w(mp4)
end
def filename
if original_filename
@name ||= Digest::MD5.hexdigest(File.dirname(current_path))
"#{@name}.#{file.extension}"
end
end
end
至此视频上传成功,但没有缩略图,也没有错误代码。
最佳答案
您可能正在打一场艰苦的战斗。 ffmpegthumbnailer 似乎没有正式支持 Windows。然而,看起来至少有一个人设法让它在 Cygwin 中编译。来自 this issue thread :
I managed to compile it...
download fffmpegthumbnailer 2.0.6†
apply the two patches here : https://github.com/dirkvdb/ffmpegthumbnailer/issues/78
download a working version of
moviedecoder.cpp
†† : http://code.google.com/p/ffmpegthumbnailer/source/browse/trunk/libffmpegthumbnailer/moviedecoder.cpp?r=225replace it in
libffmpegthumbnailer
folderdownload ffmpeg here : http://www.ffmpeg.org/
extract and put the folders starting with
lib
to thelib
folder in cygwin root folder
./configure
thenmake
andmake install
enjoy!
†您可以在此处找到版本:https://github.com/dirkvdb/ffmpegthumbnailer/releases
††由于项目已迁移到 GitHub,此链接已损坏,我不知道 moviedecoder.cpp
的哪个版本|此链接对应。也许the version tagged 2.0.7是一个不错的选择吗?
假设这对你有用,一旦你编译了它(并通过在命令行上测试它来确认它可以工作)你需要确保 carrierwave-video-thumbnailer 知道在哪里可以找到可执行文件,或者通过确保它在您的 $PATH
中或设置 FFMpegThumbnailer.binary
选项。我认为它看起来像这样:
CarrierWave::Video::Thumbnailer::FFMpegThumbnailer.binary = "C:/path/to/ffmpegthumbnailer.exe"
请注意,我尚未对此进行任何测试,您的里程会有所不同。
关于ruby-on-rails - Windows 10 上的 ffmpegthumbnailer [Ruby on Rails],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34344804/
当我尝试使用 carrierwave-video-thumbnailer gem 运行 ffmpegthumbnailer 时,出现错误“没有这样的文件或目录”。 . 我确认 ffmpegthumbn
有没有人让 ffmpegthumbnailer 在 heroku 上工作?我可以在网上找到的唯一文档在这里: Using Heroku Vulcan to build lib with depende
我使用“carrierwave”在网站上上传和播放视频。它需要 ffmpeg 和 ffmpegthumbnailer,所以我也设置了它们。一切都在本地运行良好,但是当我尝试在 Heroku 上重复时它
大家好,我最近在 Windows 10 x64 机器上开始了一个 Ruby on Rails 项目。在这个项目中,我有一个带有 Carrierwave 的上传表单来上传一些视频文件。要从上传的视频中获
我正在开发的应用程序当前使用的是使用 ffmpegthumbnailer 2.0.8 的 buildpack,我需要在 2.1.2 版中添加的功能。我已经 fork 了我们当前使用的 buildpac
我目前正在尝试构建 exe/二进制文件以支持 Windows 10 上的 ffmpegthumbnailer。我阅读了多篇关于让它工作的文章,但似乎没有一篇能满足我的需求。我目前将 ffmpegthu
我是一名优秀的程序员,十分优秀!