我有一个视频模型,目前接受视频网址而不是多部分视频文件。
视频通过应用程序上传到S3存储桶。
现在我在这里只想上传样式图像和处理器视频(在每个帧上附加时间戳值)。
但原始视频仍然是从网址上传到服务器的。我已经将视频上传到S3,并且不想通过回形针重复此过程。
限制原始视频上传的任何方式
Video.rb
has_attached_file :video, styles: {
timestamped: { processors: %i[ timestamper ] },
small: ['640x', :jpeg],
medium: ['750x', :jpeg],
large: ['1242x', :jpeg]
}
答案 0 :(得分:0)
您可以覆盖original
类型并将其用作large
。例如:
has_attached_file :video, styles: {
timestamped: { processors: %i[ timestamper ] },
original: ['1242x', :jpeg],
medium: ['750x', :jpeg],
small: ['640x', :jpeg]
}
小心将原件用作"基座"对于其他风格。
另一种解决方案是在流程后取消链接文件,但这意味着该文件首先上传:
after_save :reprocess_video
private
def reprocess_video
File.unlink(video.path)
end