crewtimer / crewtimer-video-review

Utility app for connecting to FinishLynx or recorded video
MIT License
0 stars 0 forks source link

CrewTimer Video Review

CrewTimer Video Review is built using Electron, and specificlly the Electron React Boilerplate Project.

See the VSCode plugins suggested here.

Development Environment Setup

Node version 16 or later is recommended.

Quickstart

nvm install 16
nvm use 16
git clone git@github.com:crewtimer/crewtimer-video-review.git
yarn install
yarn start

If the build fails with a node-gyp error, be sure node-gyp is installed globally.

The crewtimer_video_reader native module contains pre-built binaries for mac and win targets. If this repo is private, a github token is required to retrieve the pre-built binaries.

  1. Obtain your github token
  2. Add it to ~/.prebuild-installrc
  3. e.g. token=ghp_8bh6rSO2EhGf3nVCgY4GrEvs1dqd324

Installation and Configuration Notes to self

MacOS can build for all targets - mac, win, linux

To build native libs (sqlite3) a recent version of npm is needed.

Native modules

A native module is used to read mp4 files from storage using the ffmpeg library. This code is prebuilt and stored on github.

To make updates to the native code, see Instructions for the native video reader. Access to both a windows and Mac is required.

Debugging

Starting from VSCode seems broke. Try this command line

yarn "start:main" "--inspect=5858" "--remote-debugging-port=9223"

Open dev window with releases code:

yarn cross-env DEBUG_PROD=true yarn package

See also the Electron React Boilerplate page.

File Locations

Windows

MacOS

Releasing new versions

  1. Edit release/app/package.json and src/renderer/Nav.tsx and adjust version info
  2. Execute npm run winbuild
  3. Look in release/ for the exe file
  4. Copy the exe to the 'CrewTimer Installers' google drive folder.
  5. Make a copy of the installer and rename it without a version: CrewTimerConnect Setup.exe.

Tips

Using opencv for frame interpolation