Giter Club home page Giter Club logo

huanbu_metronome's Introduction

Huanbu

Huanbu, an easy-to-use and full functional metronome with simple design. It supports several features:

  • A cross-platform application based on Python, which supports Windows, macOS and Linux.
  • Multiple options for different time signatures covers the most common used cases.
  • Tempo estimation
  • Big labels to show tempo marks and click counter.
  • Handy shortcuts.

Download

You can donwload it in the release page.

Usage

  • Space: Play/Pause
  • Left/Right: Tempo Down/Up 10
  • Up/Down: Tempo Down/Up 1
  • T: Tap Estimate
  • M: Change Time Signature Mode

If you are interested in how to build this app, you can check this article.

huanbu_metronome's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

chernzq

huanbu_metronome's Issues

Add human voice

Add an option for using the human voice. Sometimes, human voices of 1, 2, 3, and 4 are much more intuitive than telling the difference between strong and weak beat sounds.

Music beats analysis

It would be much better if the metronome can play the beats according to the beginning part of a song.

pip install simpleaudio Error on Linux

Collecting simpleaudio
  Using cached simpleaudio-1.0.4.tar.gz (2.0 MB)
Building wheels for collected packages: simpleaudio
  Building wheel for simpleaudio (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/jack/.jackprograms/anaconda3/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/setup.py'"'"'; __file__='"'"'/tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-vrbl7b2a
       cwd: /tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/
  Complete output (37 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.9
  creating build/lib.linux-x86_64-3.9/simpleaudio
  copying simpleaudio/__init__.py -> build/lib.linux-x86_64-3.9/simpleaudio
  copying simpleaudio/shiny.py -> build/lib.linux-x86_64-3.9/simpleaudio
  copying simpleaudio/functionchecks.py -> build/lib.linux-x86_64-3.9/simpleaudio
  creating build/lib.linux-x86_64-3.9/simpleaudio/test_audio
  copying simpleaudio/test_audio/c.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
  copying simpleaudio/test_audio/e.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
  copying simpleaudio/test_audio/g.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
  copying simpleaudio/test_audio/left_right.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
  copying simpleaudio/test_audio/notes_2_16_44.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
  running build_ext
  building 'simpleaudio._simpleaudio' extension
  creating build/temp.linux-x86_64-3.9
  creating build/temp.linux-x86_64-3.9/c_src
  gcc -pthread -B /home/jack/.jackprograms/anaconda3/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -I/home/jack/.jackprograms/anaconda3/include -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -fPIC -DDEBUG=0 -I/home/jack/.jackprograms/anaconda3/include/python3.9 -c c_src/posix_mutex.c -o build/temp.linux-x86_64-3.9/c_src/posix_mutex.o
  gcc -pthread -B /home/jack/.jackprograms/anaconda3/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -I/home/jack/.jackprograms/anaconda3/include -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -fPIC -DDEBUG=0 -I/home/jack/.jackprograms/anaconda3/include/python3.9 -c c_src/simpleaudio.c -o build/temp.linux-x86_64-3.9/c_src/simpleaudio.o
  c_src/simpleaudio.c: In function ‘_play_buffer’:
  c_src/simpleaudio.c:164:5: warning: ‘PyEval_InitThreads’ is deprecated [-Wdeprecated-declarations]
    164 |     PyEval_InitThreads();
        |     ^~~~~~~~~~~~~~~~~~
  In file included from /home/jack/.jackprograms/anaconda3/include/python3.9/Python.h:154,
                   from c_src/simpleaudio.h:10,
                   from c_src/simpleaudio.c:7:
  /home/jack/.jackprograms/anaconda3/include/python3.9/ceval.h:130:37: note: declared here
    130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
        |                                     ^~~~~~~~~~~~~~~~~~
  gcc -pthread -B /home/jack/.jackprograms/anaconda3/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -I/home/jack/.jackprograms/anaconda3/include -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -fPIC -DDEBUG=0 -I/home/jack/.jackprograms/anaconda3/include/python3.9 -c c_src/simpleaudio_alsa.c -o build/temp.linux-x86_64-3.9/c_src/simpleaudio_alsa.o
  c_src/simpleaudio_alsa.c:8:10: fatal error: alsa/asoundlib.h: No such file or directory
      8 | #include <alsa/asoundlib.h>
        |          ^~~~~~~~~~~~~~~~~~
  compilation terminated.
  error: command '/usr/bin/gcc' failed with exit code 1
  ----------------------------------------
  ERROR: Failed building wheel for simpleaudio
  Running setup.py clean for simpleaudio
Failed to build simpleaudio
Installing collected packages: simpleaudio
    Running setup.py install for simpleaudio ... error
    ERROR: Command errored out with exit status 1:
     command: /home/jack/.jackprograms/anaconda3/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/setup.py'"'"'; __file__='"'"'/tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-qvxkc_sp/install-record.txt --single-version-externally-managed --compile --install-headers /home/jack/.jackprograms/anaconda3/include/python3.9/simpleaudio
         cwd: /tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/
    Complete output (37 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.9
    creating build/lib.linux-x86_64-3.9/simpleaudio
    copying simpleaudio/__init__.py -> build/lib.linux-x86_64-3.9/simpleaudio
    copying simpleaudio/shiny.py -> build/lib.linux-x86_64-3.9/simpleaudio
    copying simpleaudio/functionchecks.py -> build/lib.linux-x86_64-3.9/simpleaudio
    creating build/lib.linux-x86_64-3.9/simpleaudio/test_audio
    copying simpleaudio/test_audio/c.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
    copying simpleaudio/test_audio/e.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
    copying simpleaudio/test_audio/g.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
    copying simpleaudio/test_audio/left_right.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
    copying simpleaudio/test_audio/notes_2_16_44.wav -> build/lib.linux-x86_64-3.9/simpleaudio/test_audio
    running build_ext
    building 'simpleaudio._simpleaudio' extension
    creating build/temp.linux-x86_64-3.9
    creating build/temp.linux-x86_64-3.9/c_src
    gcc -pthread -B /home/jack/.jackprograms/anaconda3/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -I/home/jack/.jackprograms/anaconda3/include -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -fPIC -DDEBUG=0 -I/home/jack/.jackprograms/anaconda3/include/python3.9 -c c_src/posix_mutex.c -o build/temp.linux-x86_64-3.9/c_src/posix_mutex.o
    gcc -pthread -B /home/jack/.jackprograms/anaconda3/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -I/home/jack/.jackprograms/anaconda3/include -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -fPIC -DDEBUG=0 -I/home/jack/.jackprograms/anaconda3/include/python3.9 -c c_src/simpleaudio.c -o build/temp.linux-x86_64-3.9/c_src/simpleaudio.o
    c_src/simpleaudio.c: In function ‘_play_buffer’:
    c_src/simpleaudio.c:164:5: warning: ‘PyEval_InitThreads’ is deprecated [-Wdeprecated-declarations]
      164 |     PyEval_InitThreads();
          |     ^~~~~~~~~~~~~~~~~~
    In file included from /home/jack/.jackprograms/anaconda3/include/python3.9/Python.h:154,
                     from c_src/simpleaudio.h:10,
                     from c_src/simpleaudio.c:7:
    /home/jack/.jackprograms/anaconda3/include/python3.9/ceval.h:130:37: note: declared here
      130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
          |                                     ^~~~~~~~~~~~~~~~~~
    gcc -pthread -B /home/jack/.jackprograms/anaconda3/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -I/home/jack/.jackprograms/anaconda3/include -fPIC -O2 -isystem /home/jack/.jackprograms/anaconda3/include -fPIC -DDEBUG=0 -I/home/jack/.jackprograms/anaconda3/include/python3.9 -c c_src/simpleaudio_alsa.c -o build/temp.linux-x86_64-3.9/c_src/simpleaudio_alsa.o
    c_src/simpleaudio_alsa.c:8:10: fatal error: alsa/asoundlib.h: No such file or directory
        8 | #include <alsa/asoundlib.h>
          |          ^~~~~~~~~~~~~~~~~~
    compilation terminated.
    error: command '/usr/bin/gcc' failed with exit code 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /home/jack/.jackprograms/anaconda3/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/setup.py'"'"'; __file__='"'"'/tmp/pip-install-dno5h1jh/simpleaudio_a717064c8cd44700a2081ed8e418db3e/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-qvxkc_sp/install-record.txt --single-version-externally-managed --compile --install-headers /home/jack/.jackprograms/anaconda3/include/python3.9/simpleaudio Check the logs for full command output.

Show user guide when open the app

It would be much much better to show a user guide like shortcuts when opening this app, otherwise, users don't know the shortcut supports.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.