A modular, customizable and open-source desktop application for accessing and visualizing music data.
Dunya-desktop is a desktop application, developed for accessing and visualizing music data such as music scores, audio recordings, extracted features and analysis results. It is a modular and extendable desktop application that the users can customise according to their needs.
Dunya-desktop mainly uses PyQt5, Python bindings for Qt5 application framework, for the user interface design and pycompmusic module for reaching the backend of the Dunya.
Running =======
First, ensure that you have installed the relevant dependencies (see the Installation section below).
To configure Dunya-desktop, copy the file dunyadesktopapp/cultures/config.cfg.in to dunyadesktopapp/cultures/config.cfg, for example:
cp dunyadesktopapp/cultures/config.cfg.in dunyadesktopapp/cultures/config.cfg
Edit this file and replace the value DUNYA_TOKEN with your Dunya access token. You can retrieve this token after signing in to the Dunya website and visiting https://dunya.compmusic.upf.edu/user/profile/
Run Dunya-desktop by executing in the main directory:
./dunya-desktop
Installation ============ The code is compatible with Python 2.7+ and Python 3. We highly recommend you to use the code with Python 3 and with a virtual environment.
Installing dependencies on Mac OS
The given installation steps were tried on OS X El Capitan (v10.11.06) and OS X El Sierra (v10.12.1).
- Install Xcode (can be installed via Mac App Store).
xcode-select --install sudo xcodebuild -license
After the installation, make sure that you have agreed Apple's licence agreement.
- Install Homebrew package manager:
On Mac OS for Python 3.6
- Install Python 3.6+, Qt 5.7 and wget with Homebrew:
- Create a virtual environment (virtualenv) and install requirements.
- Go to directory of where dunya-desktop is downloaded.
cd path/to/dunya-desktop
- Finally, install the package requirements.
On Mac OS for Python 2.7
- Install Python 2.x, Qt 5.7 and wget with Homebrew:
- Download PyQt 5.7.1 and SIP source packages:
- Untar and compile PyQt 5.7.1 and SIP:
# compile PyQt5 cd .. tar -xvf PyQt5_gpl-5.7.1.tar.gz cd PyQt5_gpl-5.7.1 python configure.py --confirm-license -d /usr/local/lib/python2.7/site-packages/ --qmake=/usr/local/Cellar/qt\@5.7/5.7.1/bin/qmake --sip=../sip-4.19/sipgen/sip --sip-incdir=../sip-4.19/siplib make sudo make install
- Create a virtual environment (virtualenv) and install requirements.
- Go to directory of where dunya-desktop is downloaded.
cd path/to/dunya-desktop
- Finally, install the package requirements.
Installing dependencies on Ubuntu 16.04
The given installation steps were tried on Ubuntu 16.04.02 LTS (xenial).
- Install Qt 5.x and ffmpeg:
On Ubuntu for Python 3.6
- Install Python 3.6
- Create a virtual environment (virtualenv) and install requirements.
- Go to directory of where dunya-desktop is downloaded.
cd path/to/dunya-desktop
- Finally, install the package requirements.
On Ubuntu for Python 2.7
- Install Python 2.x
- Download PyQt 5.8 and SIP source packages:
- Untar and compile PyQt 5.8 and SIP:
# compile PyQt5 tar -xzf PyQt5_gpl-5.8.tar.gz cd PyQt5_gpl-5.8/ python configure.py --confirm-license --qmake=/usr/lib/x86_64-linux-gnu/qt5/bin/qmake make sudo make install
- Create a virtual environment (virtualenv) and install requirements.
- Go to directory of where dunya-desktop is downloaded.
cd path/to/dunya-desktop
- Finally, install the package requirements.
License ======= The source code hosted in this repository is licenced under the terms of the GNU Affero General Public License (v3 or later). Any data (the audio recordings, music scores, features, figures, outputs etc.) are licenced under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Contact ========= Hasan Sercan AtlΔ± hsercanatli AT gmail DOT com
Acknowledgements ================ Dunya-desktop is supported by the European Research Council under the European Unionβs Seventh Framework Program, as part of the CompMusic project (ERC grant agreement 267583).