이것은 어떻게 든이 질문에 대한 후속 조치입니다.
그러나 이제는 노래에서 감지하는 대신 생성하고 싶습니다.
분당 구성 가능한 횟수만큼 소리 (삐 소리와 같은 짧은 소리)를 출력하는 응용 프로그램을 찾고 있습니다.
20bpm이라고하면 3 초마다 그 소리가 출력됩니다. (60/20)
60bpm이면 매 초
0.5 초마다 120bpm 인 경우
그 이유는 드럼 세트를 연주하는 방법을 배우고 bpm이 정말 중요해 보이기 때문입니다. YouTube 에서이 동영상을 팔로우하고 있습니다.
최신 정보
그들은 전화를 받았으며 metronomes
심지어 구글조차 하나를 얻었다. 멋진 것.
https://www.google.com/search?q=metronomes
감사합니다 Nick.
답변
의견에서 언급했듯이 적어도 16.04에서 언급 한 메트로놈 (Linux / Ubuntu에 존재)을 얻을 수 없었습니다. 나는 그것이 실제로 작동하는 데 많은 시간을 소비하지 않았다. 사실상 그들 모두는 버려지는 인상을주기 때문이다.
하나 쓸 시간 …
이 답변 ( 진행중인 작업 )은 결국 GUI를 포함한 메트로놈으로 이어져야합니다. 원하는 기능을 언급 할 수있는 좋은 시간입니다.
1. CLI 메트로놈
간단한 메트로놈을 만드는 것은 놀랍도록 간단합니다.
#!/usr/bin/env python3
import subprocess
import sys
import time
bpm = int(sys.argv[1])
pauze = 60/bpm
while True:
time.sleep(pauze)
subprocess.Popen(["ogg123", "/usr/share/sounds/ubuntu/stereo/bell.ogg"])
사용하는 방법
-
메트로놈에는 소리를 재생하기 위해 vorbis-tools가 필요합니다.
sudo apt-get install vorbis-tools
- 위의 스크립트를 빈 파일로 복사하여 metronome.py로 저장하십시오.
-
bpm을 인수로 사용하여 실행하십시오.
python3 /path/to/metronome.py <bpm>
예 :
python3 /path/to/metronome.py 100
분당 100 비트로 실행하려면
노트
소리를 위해 파일을 사용 /usr/share/sounds/ubuntu/stereo/bell.ogg
했는데 기본적으로 시스템에 있어야합니다 (14.04 / 16.04에서 테스트 됨). 그러나 원하는 ( .ogg
) 샘플을 사용할 수 있습니다 . 최종 버전에서는 다양한 옵션 (사운드)을 사용할 수 있습니다.
2. 놀랍도록 간단한 GUI 버전
다음 단계는 매우 기본 버전이며 설치 프로그램이없는 마지막 버전입니다.
스크립트
#!/usr/bin/env python3
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
import sys
import subprocess
import time
from threading import Thread
import os
path = os.path.dirname(os.path.realpath(__file__))
class MetroWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title="Shockingly simple Metronome")
self.speed = 70
self.run = False
# maingrid
maingrid = Gtk.Grid()
maingrid.set_column_homogeneous(True)
maingrid.set_row_homogeneous(False)
maingrid.set_border_width(30)
self.add(maingrid)
# icon
image = Gtk.Image(xalign=0)
image.set_from_file(os.path.join(path, "icon.png"))
maingrid.attach(image, 0, 0, 1, 1)
# vertical slider, initial value, min, max, step, page, psize
self.v_scale = Gtk.Scale(
orientation=Gtk.Orientation.VERTICAL,
adjustment=Gtk.Adjustment.new(self.speed, 10, 240, 1, 0, 0)
)
self.v_scale.set_vexpand(True)
self.v_scale.set_digits(0)
self.v_scale.connect("value-changed", self.scale_moved)
maingrid.attach(self.v_scale, 1, 0, 2, 1)
self.togglebutton = Gtk.Button("_Run", use_underline=True)
self.togglebutton.connect("clicked", self.time_out)
self.togglebutton.set_size_request(70,20)
maingrid.attach(self.togglebutton, 3, 3, 1, 1)
# start the thread
self.update = Thread(target=self.run_metro, args=[])
self.update.setDaemon(True)
self.update.start()
def scale_moved(self, event):
self.speed = int(self.v_scale.get_value())
def time_out(self, *args):
if self.run == True:
self.run = False
self.togglebutton.set_label("Run")
else:
self.run = True
self.togglebutton.set_label("Pauze")
def pauze(self):
return 60/self.speed
def run_metro(self):
soundfile = "/usr/share/sounds/ubuntu/stereo/bell.ogg"
while True:
if self.run == True:
subprocess.Popen([
"ogg123", soundfile
])
time.sleep(self.pauze())
def run_gui():
window = MetroWindow()
window.connect("delete-event", Gtk.main_quit)
window.set_resizable(False)
window.show_all()
Gtk.main()
run_gui()
이미지
사용하는 방법
-
cli 버전과 마찬가지로 다음이 필요합니다
vorbis-tools
.sudo apt-get install vorbis-tools
-
스크립트를 빈 파일로 복사하여 다른 이름으로 저장하십시오.
metro.py
- 위의 이미지를 마우스 오른쪽 버튼으로 클릭 하고 다음과 같이 스크립트 와 정확히 같은 디렉토리에 저장하십시오
icon.png
. -
다음 명령으로 메트로놈을 실행하십시오.
python3 /path/to/metro.py
3. 오렌지 메트로놈 용 PPA
끝났습니다!
메트로놈을 설치할 준비가되었습니다.
Orange Metronome에는 선택할 수있는 다양한 사운드 세트가 있으며 비트를 그룹화 할 수 있습니다. 모든 변경 사항은 실행중인 메트로놈에 즉시 적용됩니다.
설치하기 위해서:
sudo apt-add-repository ppa:vlijm/orangemetronome
sudo apt-get update
sudo apt-get install orangemetronome
해야할 일
-
현재 메트로놈에는 선택할 수있는 네 가지 사운드가 있습니다. 아마도 몇 일 안에 몇 개가 추가 될 것이며, 일부는 교체 / 업데이트 될 것입니다
-
장기에
장기적를 들어, 나는 항상 기존의 메트로놈 놓친 + 2 3 + 3, 2 등 + 2 + 2 + 3처럼 (사용자 정의) 복잡한 구조에 대한 옵션을 추가 할 생각입니다.
드디어
최신 (현재) 버전 0.5.3
은 여러 가지 소리를 추가하지만 더 중요한 것은 불규칙한 (복합) 비트를 실행하는 옵션입니다. 이 버전에서는 하드 코딩되어 있습니다. 버전> 1에서 사용자 정의 할 수 있습니다.
답변
메트로놈을 찾는 것처럼 들립니다!
오디오 편집 소프트웨어 인 Audacity 는 아래에 나열 할 간단한 프로그램이 있지만 꾸준한 메트로놈과 같은 비트 또는 톤 ( “생성”메뉴 아래 참조)을 생성 할 수 있습니다. Audacity는 Ubuntu 소프트웨어 리포지토리에 있으며 소프트웨어 센터를 통해 또는 sudo apt install audacity
터미널 창 에 입력하여 설치할 수 있습니다 .
연습 중에 인터넷에 접속할 계획이라면 온라인 메트로놈이 풍부합니다.
Ubuntu 소프트웨어 리포지토리에서 사용할 수있는 다른 메트로놈 소프트웨어에는 gtick , klick , gtklick 및 kmetronome이 포함 되어 있지만 직접 시도하지는 않았습니다.
답변
간단한 배쉬 메트로놈
용법
metronome.sh [beats per minute] [beats per measure]
정보
- 기본적으로 4에서 120 bpm으로 재생됩니다.
- 자세한 내용과 훨씬 더 정교한 스크립트는 내 GitHub repo : metronome.sh 에서 사용할 수 있습니다 . 아래 스크립트는 아래에 있습니다
metronome-core.sh
예를 들어
metronome.sh
metronome.sh 75 # 75 BPM
metronome.sh 120 3 # 120 BPM, 3 beats per measure
스크립트
#!/bin/bash
# metronome.sh - Is a metronome.
# Usage: metronome.sh [beats per minute] [beats per measure]
# Set BPM and beats per measure.
bpm="${1-120}"
msr="${2-4}"
# Get seconds per beat using bc.
# "-0.004" accounts for approximate execution time.
beat_time="$(bc -l <<< "scale=5; 60/$bpm-0.004")"
echo "Metronome playing $bpm BPM, $msr beats per measure"
echo -n "Press Ctrl+C to quit."
while true; do
for ((i=1; i<=$msr; i++)); do
if [[ $i -eq 1 ]]; then
# Accentuated beat.
canberra-gtk-play --id='dialog-information' &
else
# Unaccentuated beat
canberra-gtk-play --id='button-toggle-on' &
fi
# Wait before next beat. Will exit if beat time is invalid.
sleep "$beat_time" || exit
done
done
답변
나는 기타를 연주하고 gtick을 사용 하며 , 그것은 나를 위해 잘 작동합니다. 분당 비트 수, 음량 및 박자표, 1 / 4,2 / 4,3 / 4 등을 조정할 수 있습니다. 다음을 사용하여 명령 행에서 설치할 수 있습니다.
sudo apt-get install gtick
여기 내 gtick : i.imgsafe.org/f2dc6c70f2.png
답변
kmetronome을 사용해 보셨습니까? apt-get / synaptic을 사용할 수 있어야합니다.