Ruby on rails 3 在AWS实例上上载大型视频时无法分配内存错误
我在一个RoR网站上工作,我在网站上上传媒体文件(如mp3、pdf、图像和视频)。网站托管在AWS上,我使用S3 bucket上传媒体文件 当我上传一个视频时,首先将视频保存到AWS实例的公共文件夹中,在AWS实例中,我的网站是托管的,然后使用FFMPEG创建该视频的缩略图,并使用FFMPEG streamio获取持续时间,并在创建缩略图后删除此视频。在上传大视频之前,它工作正常,但当我试图上传大视频时,由于一个错误,它无法正常工作。e Errno::ENOMEM(无法分配内存-/usr/local/bin/ffmpeg-i/var/www/html/proj/public/13/NVC_trim.mov): 我在代码中遗漏了什么吗? 我们将非常感谢您在这方面的任何想法或帮助Ruby on rails 3 在AWS实例上上载大型视频时无法分配内存错误,ruby-on-rails-3,amazon-web-services,ffmpeg,Ruby On Rails 3,Amazon Web Services,Ffmpeg,我在一个RoR网站上工作,我在网站上上传媒体文件(如mp3、pdf、图像和视频)。网站托管在AWS上,我使用S3 bucket上传媒体文件 当我上传一个视频时,首先将视频保存到AWS实例的公共文件夹中,在AWS实例中,我的网站是托管的,然后使用FFMPEG创建该视频的缩略图,并使用FFMPEG streamio获取持续时间,并在创建缩略图后删除此视频。在上传大视频之前,它工作正常,但当我试图上传大视频时,由于一个错误,它无法正常工作。e Errno::ENOMEM(无法分配内存-/usr/loc
提前感谢:)Errno::ENOMEM表示内存不足。如果您需要分配更多内存,则需要将视频分成部分存储在ram中以避免出现问题
path = "public/" + @admin.id.to_s + "/" + params[:video].original_filename
dirpath = "public/" + @admin.id.to_s
FileUtils.mkdir_p dirpath
aFile = File.new(path, "w")
aFile.write(open(params[:video]).read)
aFile.close
system"/usr/local/bin/ffmpeg -itsoffset -4 -i /var/www/html/proj/#{path} -vcodec mjpeg -vframes 1 -an -f rawvideo /var/www/html/proj/#{dirpath}/thumb.png"
#calculate video duration
FFMPEG.ffmpeg_binary = '/usr/local/bin/ffmpeg'
movie = FFMPEG::Movie.new("/var/www/html/proj/#{path}")