Tôi có thể tìm một máy đếm nhịp để thực hành âm nhạc ở đâu?


12

Đây là một cách tiếp theo của câu hỏi này:

Làm cách nào tôi có thể phát hiện BPM (nhịp mỗi phút) của một bài hát?

Nhưng bây giờ thay vì phát hiện ra chúng trong các bài hát, tôi muốn tạo ra chúng.


Tôi đang tìm kiếm một ứng dụng sẽ phát ra âm thanh (một cái gì đó ngắn như tiếng bíp) một số lần cấu hình mỗi phút.

Nếu tôi nói 20bpm, nó sẽ phát ra âm thanh đó cứ sau 3 giây. (60/20)
Nếu 60bpm, mỗi giây.
Nếu 120bpm cứ sau nửa giây.

Lý do cho điều này là tôi đang học cách chơi bộ trống và bpm trông thực sự quan trọng. Tôi đang theo dõi video này trên youtube .

cập nhật

Có vẻ như họ được gọi metronomesvà thậm chí Google có một. Công cụ mát mẻ.
https://www.google.com.vn/search?q=metronomes
Cảm ơn Nick.


1
Audacity có thể làm điều này (xem trong menu "Tạo"), mặc dù có thể có các chương trình đơn giản hơn. Các biểu thức trực tuyến rất phong phú, nếu bạn có kế hoạch truy cập internet trong quá trình thực hành.
Nick Weinberg

2
gtick , klick , gtklickkmetronome có thể là các tùy chọn khác và tất cả chúng đều có sẵn trong kho phần mềm Ubuntu.
Nick Weinberg

Các metronomes chạy trong Linux dường như đã lỗi thời. Không làm việc, ít nhất là không ra khỏi hộp. Đã đến lúc viết một cái :) @NickWeinberg Tôi đã thử tất cả, không hoạt động (có vẻ như vậy).
Jacob Vlijm

Hey @JacobVlijm Có một kịch bản python có thể làm điều này? Tôi thực sự nên học trăn ...
Parto

Tôi sẽ cung cấp cho nó một shot ngay!
Jacob Vlijm

Câu trả lời:


20

Như đã đề cập trong một nhận xét, tôi không thể để các metronome được đề cập (hiện có cho Linux / Ubuntu) hoạt động vào ngày 16.04, ít nhất là không nằm ngoài khả năng này. Tôi đã không dành nhiều thời gian để làm cho nó hoạt động , vì thực tế tất cả chúng đều mang lại ấn tượng bị bỏ rơi.

Đã đến lúc viết một ...


Câu trả lời này ( công việc đang tiến hành ) cuối cùng sẽ dẫn đến một máy đếm nhịp, bao gồm GUI. Một thời điểm tốt để đề cập đến các tính năng có thể bạn muốn.

1. Máy đếm nhịp CLI

Tạo một máy đếm nhịp đơn giản hóa ra lại đơn giản đến kinh ngạc:

#!/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"])

Cách sử dụng

  1. Máy nhịp cần các công cụ vorbis, để phát âm thanh

    sudo apt-get install vorbis-tools
    
  2. Sao chép tập lệnh ở trên vào một tệp trống, lưu nó dưới dạng metronome.py
  3. Chạy nó với bpm làm đối số:

    python3 /path/to/metronome.py <bpm>
    

    ví dụ:

    python3 /path/to/metronome.py 100
    

    Để chạy nó với 100 nhịp mỗi phút

Ghi chú

Đối với âm thanh, tôi đã sử dụng tệp /usr/share/sounds/ubuntu/stereo/bell.ogg, phải có trên hệ thống của bạn theo mặc định (được kiểm tra 14.04 / 16.04). Tuy nhiên, bạn có thể sử dụng bất kỳ .oggmẫu ( ) nào bạn thích. Trong phiên bản cuối cùng, Một số tùy chọn (âm thanh) sẽ có sẵn.


2. Phiên bản GUI đơn giản gây sốc

Bước tiếp theo, một phiên bản rất cơ bản, phiên bản cuối cùng không có trình cài đặt:

nhập mô tả hình ảnh ở đây

Kịch bản

#!/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()

Bức hình

nhập mô tả hình ảnh ở đây

Cách sử dụng

  1. Giống như phiên bản cli, cái này cần vorbis-tools:

    sudo apt-get install vorbis-tools
    
  2. Sao chép tập lệnh vào một tập tin trống, lưu nó dưới dạng metro.py

  3. Nhấp chuột phải vào hình trên, lưu nó trong một và cùng thư mục với tập lệnh (chính xác) là : icon.png.
  4. Đơn giản chỉ cần chạy metronome bằng lệnh:

    python3 /path/to/metro.py
    

3. PPA cho Metronome màu da cam

Thế là xong!

Máy đếm nhịp đã sẵn sàng để cài đặt.
Orange Metronome đi kèm với một tập hợp các âm thanh khác nhau để lựa chọn và các nhịp có thể được nhóm lại. Tất cả các thay đổi được áp dụng ngay lập tức trên máy đếm nhịp đang chạy:

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

Để cài đặt:

sudo apt-add-repository ppa:vlijm/orangemetronome
sudo apt-get update
sudo apt-get install orangemetronome

Công việc phải làm

  • Hiện tại, máy đếm nhịp đi kèm với bốn âm thanh khác nhau để lựa chọn. Có thể một vài cái sẽ được thêm vào trong vài ngày tới, một vài trong số chúng sẽ được thay thế / cập nhật

  • Về lâu dài
    Về lâu dài, tôi nghĩ đến việc thêm tùy chọn cho các cấu trúc phức tạp (tùy chỉnh) như 3 + 3 + 2, 2 + 2 + 2 + 3, v.v., mà tôi luôn bỏ lỡ trong các biểu thức hiện có.

Cuối cùng

Phiên bản mới nhất (hiện tại) 0.5.3thêm một số âm thanh, nhưng quan trọng hơn là tùy chọn để chạy các nhịp không đều (hỗn hợp). Trong phiên bản này, chúng được mã hóa cứng. Sẽ được tùy chỉnh từ phiên bản> 1.

nhập mô tả hình ảnh ở đây


@Parto tuyệt, tôi sẽ tiếp tục điều này. Phiên bản Ubuntu của bạn btw là gì?
Jacob Vlijm

Thật tuyệt, sẽ ở đây. Phiên bản Ubuntu: 14.04.
Parto

@Parto ... và phiên bản gui đầu tiên ...
Jacob Vlijm

1
Tôi sẽ cung cấp cho bạn +15 cho câu trả lời đúng nhưng +100 cho Nick để đưa anh ta tới hơn 2K đại diện.
Parto

1
@Parto hoàn toàn! Có thể mất một hoặc hai ngày, tôi muốn xây dựng trong một vài lựa chọn.
Jacob Vlijm

9

Có vẻ như bạn đang tìm kiếm một máy đếm nhịp!

Phần mềm chỉnh sửa âm thanh Audacity có thể tạo ra nhịp điệu hoặc giai điệu ổn định, giống như nhịp điệu (xem trong menu "Tạo"), mặc dù có những chương trình đơn giản hơn mà tôi sẽ liệt kê bên dưới. Audacity nằm trong kho phần mềm Ubuntu và có thể được cài đặt thông qua Trung tâm phần mềm hoặc bằng cách nhập sudo apt install audacityvào cửa sổ đầu cuối.

Các biểu thức trực tuyến rất phong phú, nếu bạn có kế hoạch truy cập internet trong khi thực hành.

Các phần mềm metronome khác có sẵn trong kho phần mềm Ubuntu bao gồm gtick , klick , gtklickkmetronome , mặc dù tôi chưa từng thử bất kỳ phần mềm nào trong số đó.


8

Máy đếm nhịp Bash đơn giản

Sử dụng

metronome.sh [beats per minute] [beats per measure]

Thông tin

  • Nó chơi ở tốc độ 120 bpm trong 4 theo mặc định
  • Thông tin thêm và tập lệnh phức tạp hơn nhiều có sẵn trên repo GitHub của tôi: metronome.sh . Kịch bản dưới đây là cómetronome-core.sh

Ví dụ

metronome.sh
metronome.sh 75     # 75 BPM
metronome.sh 120 3  # 120 BPM, 3 beats per measure

Kịch bản

#!/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

Tuyệt vời một quá. Đã thử nó ra.
Parto

1

Tôi chơi Guitar và tôi sử dụng gtick , nó hoạt động khá tốt đối với tôi, tôi có thể điều chỉnh nhịp đập mỗi phút, âm lượng và thậm chí cả chữ ký thời gian, 1 / 4.2 / 4.3 / 4, v.v. bạn có thể cài đặt nó từ dòng lệnh bằng cách sử dụng:

sudo apt-get install gtick

đây là gtick của tôi : i.imssafe.org/f2dc6c70f2.png


Đã được đề cập bởi Nick. Cũng không hoạt động trên hệ thống của tôi (Ubuntu Unity 16.04).
Jacob Vlijm

Tôi biết nó được đề cập bởi Nick, nhưng tôi đã sử dụng gtick cho mình, anh ấy đã không, như anh ấy đã đề cập. Tôi sử dụng Ubuntu 16.04 LTS và nó hoạt động với tôi, bạn có thiếu một số phụ thuộc âm thanh không?
Abel Tom

Xem điều này: dl.dropboxusercontent.com/u/1155139/error.png xảy ra bất kể cài đặt, v.v., trên nhiều hệ thống. Đọc một cái gì đó về nó, nó đã chạy với các thủ thuật trong quá khứ, không nhớ nó là gì. Đừng muốn nhớ. Nó chỉ đơn giản là làm việc. Nếu một cái gì đó như thế này không được sửa chữa sau nhiều năm, tôi thích viết những thứ của riêng tôi.
Jacob Vlijm

Tôi xin lỗi vì nó không hiệu quả với bạn, đây là gtick của tôi : i.imgsafe.org/f2dc6c70f2.png
Abel Tom

0

Bạn đã thử kmetronome chưa? Nên có thể sử dụng apt-get / synaptic.


Cũng đã được đề cập bởi Nick.
Jacob Vlijm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.