Find videos by FPS

I produced some videos in 60 FPS, but couldn’t remember which ones. Since, of course, I didn’t label their FPS at the time, I needed to find them in vast sea of 30 FPS videos. Rather than just use a simple grep with ffmpeg to find which ones, I thought it might be more useful to find all videos that have a certain FPS threshold.

Usage: ./ [directory]



function fpscheck
  FPS=$(ffmpeg -i "$1" 2>&1 | egrep -o '([0-9]*[.])?[0-9]+ fps' | egrep -o '([0-9]*[.])?[0-9]+')
  if [ $? -eq 0 ]
    TEST=$(echo "$FPS"'>'50 | bc -l)

    if [ "$TEST" -eq 1 ]
      echo "$FPS: $1"
#    else
#      echo "$FPS: $1"
#  else
#    echo "Could not get fps from: $1" >&2

for FILE in $(find "$1" -type f -name '*')
#  echo "trying: $FILE..."
  fpscheck "$FILE"


If I thought I’d use it more, I’d move the hardcoded FPS test value to an optional argument for the script. Instead, I’ll leave that as an exercise for the reader.

Action Camera Review: Garmin Virb Elite

After seeing a fellow MSNE autocrosser post a video with nice data overlays, I asked what datalogger and software he used. It turns out it wasn’t just a data logger, it was a camera that gathered his speed, acceleration, and so on for him. It was the Garmin Virb Elite. The ‘Elite’ part signifying the difference between the non-sensor, data-less variant.

I’d never heard of it, and I thought I kept at least a cursory eye on the action camera market. I was familiar but not impressed with GoPro’s Hero line (and always confused about which version had what features). The Hero prices always seemed steep for what they were. I’d talked with other autocrosser’s about their cameras. I’d looked at the Sonys, the knock-offs, and the half-way knock-offs. But then again, I’d never actually bought a real action camera, and am definitely not a professional video producer. I am decently savvy enough with technology though.

So, I immediately looked it up. $260 on Amazon at the time (more on that later). Good reviews. I read review sites. A couple days of contemplation later, and I decided, “Hell, it’s a good starter camera at worst.”, and bought one. Another couple of days later and I’m happy to say I am thoroughly impressed.

So, let me quickly point out some pros and cons that mattered or were interesting to me:


  • Records 720p60, 1080p30 and lower. That’s about as far as my video cares go.
  • Wireless control via phone app (iOS & Android)
  • Easy record/off slider (glove-friendly), with LED feedback
  • Onboard LCD viewfinder (unbacklit)
  • Wireless viewfinder
  • GoPro mount adapter (to use GoPro accessories)
  • Long battery life
  • GPS, Accelerometer datalogging to GPX (XML) format (non-proprietary)
  • Decent video editing software at no extra cost
  • Can do dash-cam duty (overwrite oldest recordings)
  • Can invert video by 180° via setting


  • No suction cup mount
  • No tripod mount (1/4″-20 threaded hole)

For another $5 or so, you can purchase a tripod mount on Amazon, so it’s no big deal. It still would have been nice to have one in the box anyway.

What sealed the deal for me was the sensor data, and the GPX output format. It just so happens the post-production video software I use, RaceRender, handles GPX. This is in addition to the MSL (MegaSquirt log file) format. So, I can get RPM, boost level, and throttle position from MSL, and combine it with speed, and G-force from the camera. Cool! That’s a lot of data, more than I can display in the video frame at one time.

Referral link: