Skip to content

A system for navigating large, multi-modal, multi-stream datasets.

License

Notifications You must be signed in to change notification settings

citwild/wfe-navigator

Repository files navigation

wfe-navigator (Wide-Field Ethnography Navigator)

A standalone cross-platform system for navigating large, multi-modal, multi-stream datasets with large numbers (e.g., hundreds or thousands) or video, auidio, image, and other types of media files, such as the BeamCoffer dataset https://sites.uw.edu/socha/beamcoffer-dataset/.

How to run

Build 🛠

To build for your current OS, you would need to clone the repository, install node modules into your local clone, and package the application as follow:

  1. Clone the repository
  2. Install node modules at the first level of the repository
cd wfe-navigator
npm install
  1. For MacOS, you may need to install the dmg-license node module as well. This is included as an optional dependency, because it is only required for MacOS
npm install dmg-license
  1. Install native node modules at wfe-navigator/release/app (see native modules)
cd wfe-navigator/release/app
npm install
  1. At the first level of the repository, package the application
cd wfe-navigator
npm run package
  1. Find the packaged application installer at wfe-navigator/release/app/build

Configuration file ⚙

When the application starts, user will be prompted with a dialog to select a wfe-navigator configuration file.

config file must use the .config.wfen extension, and uses the following format:

{
  "database": {
    "filePath": "C:/path/to/database.db",  //escape each backslash
    "client": "sqlite3"
  },
  "media": {
    "directoryPath": "C:/path/to/media/directory",
    "fileConfig": [                 
      {
        "fileProp": "media_type",   //name of property to be compared
        "propValue": "video",       //value of aforementioned property
        "prefix": "",               //prefix to add to base_name
        "suffix": "-320"            //suffix to add to base_name
      },
      {
        "fileProp": "media_type",
        "propValue": "audio",
        "prefix": "",
        "suffix": "-64",
        "ext" : "mp3"               //extension of actual media file if different from specified in the database
      }
    ]
  },
  "querybuilder" : {
    "fields" : []   //follows queryBuilder's format
  }
}

where the querybuilder object can be specified following this format, and fileConfig object specifies the actual file path/name/type for the player to read if different from that in the database. This specification must be done conditionally,

i.e.

  {
    "fileProp": "media_type",
    "propValue": "audio",
    "prefix": "",
    "suffix": "-compressed"
  }

is equivalent to adding -compressed to the end of the file name for every file with media_type value of audio.

View file 🔬

.view.wfen extension

About

A system for navigating large, multi-modal, multi-stream datasets.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published