/ovva

An R Shiny app for volleyball video analysis

Primary LanguageRMIT LicenseMIT

ovva

lifecycle openvolley R-CMD-check Codecov test coverage

About

This R package provides a Shiny app for viewing volleyball match videos in conjunction with scout files.

Live demo

Try it for yourself: https://openvolley.shinyapps.io/ovva_demo/

(This demo is running on a free (time-limited) shinyapps tier, so it may not be available if too many people have used it recently.)

Installation

options(repos = c(openvolley = "https://openvolley.r-universe.dev",
                  CRAN = "https://cloud.r-project.org"))

install.packages("ovva")

## or

## install.packages("remotes") ## if needed
remotes::install_github("openvolley/ovva")

Usage

Try the inbuilt demo:

library(ovva)
ovva_shiny_demo()

Or start the shiny app with the path to your DataVolley files:

ovva_shiny(data_path = c(PL2018 = "data/volley/PlusLiga-2018_19"))


Notes

  1. In order for the app to find the video file associated with each dvw file, the video file path must be present in the dvw file. You can check this by inspecting the dvw file in a text editor — you should see something like:
[3RESERVE]
[3VIDEO]
Camera0=D:\video\2019_03_01-KATS-BEDS.mp4
[3SCOUT]
  1. If your videos are hosted online, you don’t need them locally. This includes YouTube videos (they must be either ‘public’ or ‘unlisted’, but not ‘private’). To use an online video, enter the URL as the video location:
[3RESERVE]
[3VIDEO]
Camera0=https://www.youtube.com/watch?v=NisDpPFPQwU
[3SCOUT]

and start ovva with video_server = "none":

ovva_shiny(data_path = c(MyData = "my/dvw/path"), video_server = "none")

(note that with remote video files you still need your dvw files locally — this is the data_path folder above).

  1. The video server runs in a separate thread to the shiny application itself. If the lighttpd executable is present on the system path, this will be used for serving videos by default, otherwise the servr R package will be used. The performance of lighttpd is better, so you might want to install this if you don’t already have it. On Windows, you can use ovva_install_lighttpd() to do this. On other platforms, you’ll have to do it yourself. See https://www.lighttpd.net/download/.

Interested in this but you aren’t an R user, or you want to be able to easily share this functionality with your players or coaches? See this hosted version (available by subscription).