Я никогда не использовал его, но есть гем под названием rvideo , который позволяет вам получить метаданные видеофайла (он использует ffmpeg внизу).
Согласно документации для полученияпродолжительность видеофайла, которую вам просто нужно запустить:
RVideo::Inspector.new(:file => "some_file.avi").duration
Соедините это с Dir.glob , и вы в значительной степени настроены.