使用载波视频上传 .MOV 文件?

Uploading .MOV files with carrierwave-video?

问题:我无法通过 Carrierwave 上传 .mov 文件。

我对上传图像和视频 - .mp4 文件的载波没有问题。当我尝试上传 .mov 文件时,上传失败。我假设 .mp4 以外的任何文件都不起作用。

有人使用 Carrierwave-video gem 并且能够上传 .mov 文件格式吗?

我的载波gems:

gem 'carrierwave', '~> 1.0'
gem 'carrierwave-aws'
gem 'carrierwave-ffmpeg'
gem 'carrierwave-video'
gem 'mini_magick', '~> 4.8'

我尝试使用:

 version :mp4 do
   process encode_video: [:mp4]
 end

 version :mov do
   process encode_video: [:mov]
 end

在我的上传器中,在 version... 之前有和没有 if 语句但不起作用。无论哪种方式,我都无法上传 movmp4

默认情况下,我的上传器中有:

  process encode_video: [:mp4]

这让我只能成功上传 .mp4 文件到 aws

当我这样做时:

  process encode_video: [:mov]

我在尝试 mp4mov 时遇到错误:

NoMethodError (undefined method `+' for nil:NilClass):

列入白名单:

def extension_whitelist
     %w(jpg jpeg gif png mov mp4 mov avi mkv 3gp mpg mpeg)
  end

我也试过简单地将 .mov 文件更改为 .mp4 但没有成功。

这里有人上传mov文件成功了吗?

我很担心,因为我知道 iPhone 以 .mov 格式输出大多数视频文件,所以允许这种格式非常重要。

错误:

When trying to upload mov file i do get this success in the prompt:
I, [2019-01-20T02:47:51.127532 #3483]  INFO -- : Transcoding of /home/bob/Apps/app-file-master/tmp/1547970464-3483-0025-9410/samplemov.mov to /home/bob/Apps/uploader-twitter-master/tmp/1547970464-3483-0025-9410/tmpfile.mp4 succeeded

但是随后上传失败并且没有保存到数据库或 AWS 中。在我的应用程序中根本没有任何地方。我检查了它说它成功进入的文件。

您需要在其配置文件中将“.mov”添加到carrierwave 的扩展名白名单中。

我开始调试我的上传文件,找到了mov无法上传的原因。

我以前有过这个:

  include CarrierWave::MiniMagick
  include CarrierWave::Video
  include CarrierWave::FFmpeg

我删除了 include CarrierWave::MiniMagick 并且有效。