Science Score: 18.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
○codemeta.json file
-
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.5%) to scientific vocabulary
Last synced: 11 months ago
·
JSON representation
·
Repository
Audio features extraction
Basic Info
- Host: GitHub
- Owner: Yaafe
- License: lgpl-3.0
- Language: C++
- Default Branch: master
- Size: 1.63 MB
Statistics
- Stars: 244
- Watchers: 16
- Forks: 43
- Open Issues: 17
- Releases: 0
Created about 13 years ago
· Last pushed about 5 years ago
Metadata Files
Readme
License
Citation
README.rst
=======
Yaafe
=======
Yet Another Audio Feature Extractor
+++++++++++++++++++++++++++++++++++
Build status
============
- Branch **master** : |travis_master|
- Branch **dev** : |travis_dev|
- Anaconda : |anaconda_build|
.. |travis_master| image:: https://travis-ci.org/Yaafe/Yaafe.svg?branch=master
:target: https://travis-ci.org/Yaafe/Yaafe
.. |travis_dev| image:: https://travis-ci.org/Yaafe/Yaafe.svg?branch=dev
:target: https://travis-ci.orgYaafe/Yaafe
.. |anaconda_build| image:: https://anaconda.org/yaafe/yaafe/badges/installer/conda.svg
:target: https://anaconda.org/yaafe/yaafe/builds
Install
=======
Conda
-----
.. |conda| image:: https://anaconda.org/yaafe/yaafe/badges/installer/conda.svg
:target: https://anaconda.org/conda-forge/yaafe
|conda|
Yaafe can be easily install with `conda `_. To install this package with conda run::
conda install -c conda-forge yaafe
Docker
------
.. |docker| image:: https://badge.imagelayers.io/yaafe/yaafe:latest.svg
:target: https://imagelayers.io/?images=yaafe/yaafe:latest
|docker|
Yaafe can also be install through `Docker `_.
Get the official *Yaafe* image from `Yaafe repository on Docker Hub `_::
docker pull yaafe/yaafe
docker tag yaafe yaafe/yaafe
or build it from the sources directory::
docker build --tag=yaafe .
Following both of the method above, you then have a docker image tagged as *yaafe*.
The ``yaafe`` command is the entrypoint for that docker image so you can run 'yaafe' from the command line through `docker run yaafe`. For example::
docker run -it yaafe --help
docker run -it yaafe --volume=$(pwd):/wd --workdir=/wd -c resources/featureplan -r 16000 --resample resources/yaafe_check.wav
On Linux, it can be usefull to create an ``alias`` for it::
alias yaafe='docker run -it --rm=true --volume=$(pwd):/wd --workdir=/wd yaafe'
You could then simply run::
yaafe --help
yaafe -l
et voilà !
If you need to set the docker user as the current user on the host, you could try to run docker with the ``-u $(id -u):$(id -g)`` option ::
docker run -it --rm=true --volume=$(pwd):/wd --workdir=/wd -u $(id -u):$(id -g) yaafe -c resources/featureplan -o h5 -r 16000 --resample resources/yaafe_check.wav
Last but not least, the entry-point for the *yaafe* docker image is smart :
- every command that start with a dash ``-`` will be pass as options to the ``yaafe`` command inside the docker container
- every command that does not start with a dash will be treated as a regular command. For example::
docker run -it yaafe /bin/bash
will give you access to a bash terminal inside the docker. And ::
docker run -it yaafe yaafe-engine --help
will launch the ``yaafe-engine` batch processing tool.
From sources
------------
*Yaafe* source code should compile on *linux* and *MacOsX* platform, and uses CMake as compilation tool.
Yaafe requires third-party libraries to enable specific features. Some of these libraries may already be available on your system.
The `argtable `_ library is required.
The `eigen `_ library is also required. You could either installed it through your regular packages manager (e.g. `libeigen3-dev `__ on Debian) and then pass the ``-DWITH_EIGEN_LIBRARY=ON`` option flag to ``ccmake``.
Or you can use the source code provided through the git submodule included in the Yaafe git repository and which you can get with the ``git submodule update --init`` command. *If you used ``git clone --recursive`` to clone Yaafe, you don't need this.*
Depending on optional features you want to use, other librairies may be used:
* `libsndfile `_: enable reading WAV files format (highly recommanded)
* `libmpg123 `_: enable reading MP3 audio files
* `HDF5 `_ >= 1.8: enable H5 output format
* `liblapack `_: enable some audio features (LSF)
* `FFTW3 `_: use FFTW instead of Eigen for FFT computations (pay attention to licensing issues when linking with the GPL FFTW3 library).
To use the *yaafe* script you need Python >= 2.5, and the numpy package.
Once previous libraries are installed (some may have been locally installed in ),
you can compile with the following steps: ::
mkdir build
cd build
ccmake -DCMAKE_PREFIX_PATH= -DCMAKE_INSTALL_PREFIX= ..
make
make install
If you use an external eigen library (and not the one provided by git submodule), don't forget to add the flag: ::
ccmake -DCMAKE_PREFIX_PATH= -DCMAKE_INSTALL_PREFIX= -DWITH_EIGEN_LIBRARY=ON ..
Several options can control Yaafe compilation. More details can be found at:
http://yaafe.sourceforge.net/manual/install.html
Environment
~~~~~~~~~~~
To easily use Yaafe, you should set the following environment vars::
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DEST_DIR/lib
On MacOSX replace ``LD_LIBRARY_PATH`` by ``DYLD_FALLBACK_LIBRARY_PATH``
The output of ``make install`` should give you the INSTALL_DIR path (defaults to ``/usr/local``). The python files are installed in ``/usr/local/lib/python2.7/site-packages``, which is *not* by default in the python path on MacOSX.
The consequence is the error ``ERROR: cannot load yaafe packages: No module named yaafelib``.
There are 3 ways to solve this problem :
* The simplest way is to add the line ``sys.path.append("/usr/local/lib/python2.7/site-packages")`` in ``/usr/local/bin/yaafe`` after ``from optparse import OptionParser``, but it won't let you use the yaafelib unless you add this line (and import sys) before each import of yaafelib.
* You can use ``export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH`` or add it to your ~/.bash_profile, but this will affect other versions of python.
* You can move the files to a site-package folder that is in your PYTHONPATH:
* if you use Python 2: ``mv /usr/local/lib/python2.7/site-packages/yaafefeatures.py /usr/local/lib/python2.7/site-packages/yaafelib `python -c 'import sys, re ; print next(i for i in sys.path if re.match(".*site-packages$", i))'``
* if you use Python 3: ``mv /usr/local/lib/python2.7/site-packages/yaafefeatures.py /usr/local/lib/python2.7/site-packages/yaafelib `python3 -c 'import sys, re ; print(next(i for i in sys.path if re.match(".*site-packages$", i)))'``
If you use Matlab, you can set your MATLABPATH var::
export MATLABPATH=$MATLABPATH:$DEST_DIR/matlab
Documentation
=============
Documentation is also available online: http://yaafe.github.io/Yaafe/ (mirror: http://yaafe.sourceforge.net/)
To build documentation, you need Sphinx.
Before building documentation, you should set your environment correctly so that sphinx builds documentation
with automatic features documentation.
To build documentation, just run ``make doc_python`` in the ``build`` directory. Documentation is built in ``doc/doc_python/html``.
License
=======
YAAFE is released under the version 3 of the GNU Lesser General Public License. Read COPYING and COPYING.LESSER for
more details. The user should also read DISCLAIMER before linking with optional libraries which have different license policy.
Support
=======
To get help with YAAFE, use the mailing-list yaafe-users@lists.sourceforge.net (registration
at https://lists.sourceforge.net/lists/listinfo/yaafe-users ).
Credits
=======
Yaafe was first developed at `Telecom Paristech / AAO Team `_. It uses several great open-source projects like `Eigen `_, `Smarc `_, `libsndfile `_, `mpg123 `_, `HDF5 `_.
If you want to cite Yaafe in a publication, please see `CITATION `_.
Citation (CITATION.rst)
Citation
========
If you are using *Yaafe* in research work for publication,
please cite:
"*YAAFE, an Easy to Use and Efficient Audio Feature Extraction Software.*",
Mathieu, B., Essid, S., Fillon, T., Prado, J. & Richard, G.,
In Proceedings of the 11th International Society for Music Information Retrieval Conference. Utrecht, The Netherlands. August 9-13 2010, pp. 441--446.
`Download PDF <http://ismir2010.ismir.net/proceedings/ismir2010-75.pdf>`_
BibTex
======
BibTeX entry for LaTeX users is:
::
@InProceedings{MathieuEtAl_2010_YaafAnEasyTo,
author = "Mathieu, Benoit and Essid, Slim and Fillon, Thomas and Prado, Jacques and Richard, Gaël",
title = {YAAFE, an Easy to Use and Efficient Audio Feature Extraction Software},
year = 2010,
address = "Utrecht, The Netherlands",
pages = "441--446",
month = "August 9-13",
booktitle = "Proceedings of the 11th International Society for Music Information Retrieval Conference",
note = {\url{http://ismir2010.ismir.net/proceedings/ismir2010-75.pdf}}
}
GitHub Events
Total
- Watch event: 2
Last Year
- Watch event: 2
Committers
Last synced: over 3 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Thomas Fillon | t****s@p****m | 74 |
| mckelvin | k****6@g****m | 34 |
| Georg Holzmann | g****h@a****m | 14 |
| Paul Brossier | p****m@p****g | 14 |
| louisabraham | l****m@y****r | 9 |
| Benoit Mathieu | m****n@g****m | 7 |
| Thomas Fillon | t****n@u****m | 7 |
| Guillaume Pellerin | y****y@p****m | 5 |
| Crococode | c****e@n****m | 4 |
| Hervé BREDIN | b****n@l****r | 3 |
| louisabraham | l****m@u****m | 3 |
| Crococode | C****e@u****m | 2 |
| Matthew Taylor | r****t@g****m | 2 |
| AbdealiJK | a****i@g****m | 2 |
| Crococode | c****e@u****m | 1 |
| Brian McMahan | b****r@u****m | 1 |
| Robert M Ochshorn | m****l@R****M | 1 |
| Mike Russo | 6****1@u****m | 1 |
| Swaroop Guntupalli | s****p@S****l | 1 |
| Romain Hennequin | r****n@d****m | 1 |
| Benoit Mathieu | b****n@b****) | 1 |
| Ari Croock | a****k@g****m | 1 |
Committer Domains (Top 20 + Academic)
parisson.com: 2
ben-laptop.(none): 1
deezer.com: 1
users.noreply.gitlab.com: 1
rmozone.com: 1
limsi.fr: 1
noreply.github.com: 1
piem.org: 1
auphonic.com: 1
Issues and Pull Requests
Last synced: almost 3 years ago
All Time
- Total issues: 36
- Total pull requests: 22
- Average time to close issues: 8 months
- Average time to close pull requests: about 2 months
- Total issue authors: 23
- Total pull request authors: 14
- Average comments per issue: 2.97
- Average comments per pull request: 3.59
- Merged pull requests: 17
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- louisabraham (6)
- thomasfillon (3)
- hbredin (3)
- chananshgong (3)
- AbdealiLoKo (2)
- Jayoprell (2)
- gholzmann (1)
- RichardJECooke (1)
- bastian-f (1)
- braingineer (1)
- hughrawlinson (1)
- Aludirk (1)
- davegreenwood (1)
- MXuer (1)
- EileenVon (1)
Pull Request Authors
- louisabraham (6)
- mckelvin (3)
- hbredin (2)
- strob (1)
- romi1502 (1)
- gholzmann (1)
- AbdealiLoKo (1)
- geniass (1)
- braingineer (1)
- miker2049 (1)
- Crococode (1)
- rhyolight (1)
- sloria (1)
- swaroopgj (1)
Top Labels
Issue Labels
bug (2)
matlab (1)
enhancement (1)
Pull Request Labels
Packages
- Total packages: 3
- Total downloads: unknown
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 1
(may contain duplicates) - Total versions: 4
proxy.golang.org: github.com/Yaafe/Yaafe
- Documentation: https://pkg.go.dev/github.com/Yaafe/Yaafe#section-documentation
- License: lgpl-3.0
-
Latest release: v0.65.1
published over 11 years ago
Rankings
Dependent packages count: 7.0%
Average: 8.2%
Dependent repos count: 9.3%
Last synced:
11 months ago
proxy.golang.org: github.com/yaafe/yaafe
- Documentation: https://pkg.go.dev/github.com/yaafe/yaafe#section-documentation
- License: lgpl-3.0
-
Latest release: v0.65.1
published over 11 years ago
Rankings
Dependent packages count: 7.0%
Average: 8.2%
Dependent repos count: 9.3%
Last synced:
11 months ago
conda-forge.org: yaafe
- Homepage: https://github.com/Yaafe/Yaafe
- License: LGPL-3
-
Latest release: 0.70
published almost 4 years ago
Rankings
Dependent repos count: 24.2%
Stargazers count: 24.6%
Forks count: 26.2%
Average: 31.7%
Dependent packages count: 51.6%
Last synced:
12 months ago
Dependencies
requirements.txt
pypi
- Sphinx *