Skip to main content

TimeView

License: MIT Travis Status AppVeyor Status

TimeView is a cross-platform desktop application for viewing and editing Waveforms, Time-Value data, and Segmentation data. These data can easily be analyzed or manipulated using a library of built-in processors; for example, a linear filter can operate on a waveform, or an activity detector can create a segmentation from a waveform. Processors can be easily customized or created created from scratch.

This is a very early preview, and is not suitable for general usage yet.

screenshot

Features

  • Cross-platform, verified to run on macOS, Linux, and Windows
  • Flexible arrangement of any number of panels, which contain any number of superimposed views (e.g. waveforms, spectrograms, feature trajectories, segmentations)
  • Views can easily be moved between panels
  • Views can be linked so that modifications in one panel are reflected in other panels
  • Customizable Rendering of views (e.g. frame_size for spectrogram)
  • On-the-fly Spectrogram rendering automatically adjusts frame-rate and FFT-size to calculate information for each available pixel without interpolation
  • Editable segmentation (insertion, deletion, modification of boundaries; modification of labels)
  • Basic processing plug-ins are provided (e.g. activity detection, F0-analysis)
  • Processing plug-ins are easily customizable or extendable using python
  • API allows accessing processing plugins for batch file processing or pre-configuring the GUI (examples are provided)
  • EDF-file-format support
  • A dataset-manager allows grouping of files into datasets, for quick access to often-used files
  • Command Line Interface support, for easy chaining with other tools

An introductory video is available

thumbnail_large

Installation

Pip

To install TimeView via pip one needs a python 3.6 environment setup in advance

pip install timeview

To execute run

timeview

Pipenv

TimeView supports installation via pipenv

pipenv --python=3.6 install timeview

To execute run

pipenv run timeview

Contributing

TimeView welcomes contributors. Currently the primary use case for TimeView is audio files of speech, however there is no reason we any other signal data cannot be used here. This is the authors first major project that is public facing and deployable via pip, so there are lots of opportunities to help us make TimeView better.

Some immediate goals of the project include

  • Expanding the test suite (right now it verifies the application starts and that's about it)
  • Incorporate mkl-fft library for faster spectrogram generation
  • Create documentation and provide a consistent API so other developers can integrate their own processors or renderers
  • Create new renderers, allowing for modification of pitch curves
  • Incorporate audio playback
  • Make better use of multithreading
  • Incorporate type hinting, such that we can use mypy
  • Make application launch through the GUI of all major operating systems

To contribute, follow the following steps

  1. Fork the repo!
  2. Create a feature branch (git checkout -b feature/fooBar)
  3. Commit changes (git commit -am 'added feature fooBar!)
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a Pull Request!

Testing

To setup a development environment for TimeView, set up an empty python environment

git clone https://github.com/{username}/timeview.git timeview

# installing dependencies to run and execute tests
pip install -e "timeview[test]"

After installing the test dependencies, you can run the tests.

python timeview/setup.py test

Support

Authors

  • Dr. Alex Kain - Professor at Oregon Health and Science University - Originally envisioned this project, had lots of existing code to make it happen
  • Ogi Moore - Student at Oregon Health and Science University - Hired at BioSpeech to take this project from an idea into something usable

Acknowledgments

  • BioSpeech for funding the initial work and allowing to open source
  • Dr. Alex Kain for giving a student trying to make a career transition to a software role an opportunity
  • Library maintainers of PyQtGraph, SciPy, NumPy, and other dependencies if it was not for their effort this project would never have existed

Metadata

Release files for timeview 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for timeview 0.1.2
File Size Uploaded
timeview-0.1.2.tar.gz 198.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for timeview 0.1.2
File Interpreter ABI Platform
timeview-0.1.2-py36.py37-none-any.whl Python 3.7, Python 3.6 none any Details

Total release size: 400.0 kB

Release files / timeview-0.1.2.tar.gz

Download URL timeview-0.1.2.tar.gz
Size 198.1 kB
Tags Source
SHA-256 checksum
How to use checksums
8ce8525c7d9c5a0b5dcddd1f73aaf3b3cef2338ae7bc83d997c9edc385c7139a
BLAKE2b-256 checksum
How to use checksums
b19e971682843c0b060027ebbf2687df18e0214fab5ac1b398ac0da69497e2e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / timeview-0.1.2-py36.py37-none-any.whl

Download URL timeview-0.1.2-py36.py37-none-any.whl
Size 201.8 kB
Tags Python 3.6 Python 3.7
SHA-256 checksum
How to use checksums
a14674539944e83a85af89d4dd2002742a60c755eace94d06ce89a4a250ac3e0
BLAKE2b-256 checksum
How to use checksums
74d8addb481046d4d8713e4d8daac86bafcceedca21bde6d84e148c484a4b8a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page