Skip to main content

A collection of commands to help get archived videos from Oceans 3.

Project description

ONCvideo

A collection of commands to help get archived videos from Oceans 3.

Avaiable commands include:

  • list - List video files for a specific camera between two dates
  • blist - List video files based on parameters stored in a csv file
  • getDives - Create a csv file listing dives from Oceans3.0
  • info - Extract video information (duration, resolution, fps)
  • didson - Extract information of DIDSON files
  • download - Download video files
  • tomp4 - Convert video to mp4 format
  • extframe - Extract frames from video files
  • extfov - Extract FOVs (frames or videos) from video files
  • make_timelapse - Generate timelapse video from images
  • downloadTS - Download time series data
  • mergeTS - Merge time series data based on the closest timestamps
  • downloadST - Download video from Seatube link
  • linkST - Generate link video from Seatube
  • renameST - Rename framegrabs from Seatube to correct timestamp

Installation

pip install oncvideo

Before using ONCvideo, FFmpeg must be installed and accessible via the $PATH environment variable. Check https://ffmpeg.org/download.html on details how to install, or use your package manager of choice (e.g. sudo apt install ffmpeg on Debian/Ubuntu, brew install ffmpeg on OS X, winget install ffmpeg on Windows).

Getting started

The package provides multiple commands to get a list of available videos in our archives and perform multiple operations with the videos (e.g. downloading, extracting frames, etc).

In most use cases, you will use commands list or blist to get a list of files based on your search criteria. This will generate a csv file that you can use in R, Python or Excel to check the availability of data, remove bad files (size or duration too small) or filter files based a criteria that you want. For example, you may want to filter one file every day/week/month and download these videos to check its quality throughout your time range. For example:

oncvideo list -t API_TOKEN -lc BACAX -from 2018-01-01 -to “2024-05-01 04:00:00”
  • API_TOKEN: this is your API_TOKEN. You can obtain one logging in https://data.oceannetworks.ca > Profile > Web Service API
  • BACAX: that is the location code for Barkley Axis. An easy way to find the location code is to select the site you want in the Data Search (https://data.oceannetworks.ca/DataSearch) and check in the URL the value after locationCode=
  • 2018 and “2024-05-01 04:00:00” is the time range that you can specify the search. Note the quotes when you have space.

You can also use -h to see a list of possible arguments for each subcommand:

oncvideo list -h

list can also get videos based on deviceID or deviceCode, or based on dives number (for ROVs only). Check blist in case you need to perform multiple searchs for a giver project (e.g. multiple surveys of ROV dives, a given month at different sites).

After filtering the csv file, you can use other commands. E.g. to extract frames:

oncvideo extfov FILTERED.csv -s 00:30,01:45,02:30
  • FILTERED.csv is the name of your csv file
  • 00:30,01:45,02:30 are the timestamps to extract frames (you can separate multiple with comma). Alternatively, you can create a column named fovs and put timestamps in that column. The advantage is that you can use different timestamps for different times/periods, as different deployments may have different schedules for the cameras.

If you are interested, you can create a video time-lapse based on the frames that your extracted using the subcommand timelapse.

Docs

Documentation for functions in the package is avaiable at https://correapvf.github.io/oncvideo. After installation, use oncvideo -h to get help and a list of available commands avaiable as well.

See also tests folder for exemples of .csv files that can be used with the blist/list_file_batch command/function.

Setting API key

If you use the commands often, it may get boring to type the API key every time. You can create an enviroment variable in your OS named ONC_API_TOKEN and store your API key there. The package will automatically get the API key and you don't need to provide as an argument.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oncvideo-1.3.6.tar.gz (42.5 kB view details)

Uploaded Source

Built Distribution

oncvideo-1.3.6-py3-none-any.whl (44.1 kB view details)

Uploaded Python 3

File details

Details for the file oncvideo-1.3.6.tar.gz.

File metadata

  • Download URL: oncvideo-1.3.6.tar.gz
  • Upload date:
  • Size: 42.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.5

File hashes

Hashes for oncvideo-1.3.6.tar.gz
Algorithm Hash digest
SHA256 d0b499cdd58ea50379092401dba0e62cf361b4e2f67b7659d0f8247e8fb43ef5
MD5 4ab3a736ef5dcf40ace5d112be98fd50
BLAKE2b-256 3ff1fdad566f79af3286a61d245dc8210ba1b9fd0965afa5b9b43bb016dacd3c

See more details on using hashes here.

File details

Details for the file oncvideo-1.3.6-py3-none-any.whl.

File metadata

  • Download URL: oncvideo-1.3.6-py3-none-any.whl
  • Upload date:
  • Size: 44.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.5

File hashes

Hashes for oncvideo-1.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 1451f0e384cbc6b91bcbb26ac152a9a4e32a6a068a1553e16de50b1e5a23fd7f
MD5 1a78be2c0a1ca84b33e06074f6ee8472
BLAKE2b-256 047f930e1047ffc13a5da9d55c03a622d6812320a331df22a00c720d83e6ffd0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page