在我的Rails应用程序中,我有一个带有视频作为附件的模型。我想显示视频的时长(持续时间),但似乎无法弄清楚在Blob上调用哪种方法或属性以获取该信息。
理想情况下,会是这样:
Lecture.video.blob.duration
但是那不存在。我似乎在文档中找不到它;也许我只是在错误的地方寻找。
感谢您的帮助。
答案 0 :(得分:2)
**下面的文档链接指出,FFmpeg库是使用VideoAnalyzer所必需的。可以使用$ brew install ffmpeg
这里是VideoAnalyzer文档的链接。
本质上,您可以做类似...
ActiveStorage::Analyzer::VideoAnalyzer.new(@lecture.video.blob).metadata[:duration]
答案 1 :(得分:1)
您快到了:
Lecture.video.blob.metadata.fetch(:duration, nil)