Tôi đang làm việc trên dự án midi và tôi muốn hình dung âm nhạc midi như Spectrography của nhạc Mp3 ... Tôi muốn biết cách chuyển đổi Midi Ticks thành giây phát lại thực tế ... Giống như nếu có midi đánh dấu trong PPQ (Pulse per quarter note) ví dụ 1120. có công thức nào để chuyển đổi nó thành các giây phát lại trong thế giới thực không?Midi Ticks để thực tế Playback giây !!! (Midi Music)
Trả lời
Công thức là 60000/(BPM * PPQ)
(mili giây).
Trong đó BPM là tiến độ của bản nhạc (Beats Per Minute).
(tức là một ca khúc 120 BPM sẽ có một thời gian MIDI của (60000/(120 * 192))
hoặc 2,604 ms cho 1 tick.
Nếu bạn không biết BPM sau đó bạn sẽ phải xác định rằng đầu tiên. Lần MIDI hoàn toàn . phụ thuộc vào tiến độ theo dõi
Thật tuyệt vời nếu câu trả lời này giải thích cách tính BPM. – Oddthinking
@Oddthinking: Tính toán nó từ cái gì? – Aaronaught
BPM không phải là một khái niệm gốc đối với MIDI. Nó có nguồn gốc từ phần triệu giây mỗi phần lưu ý (từ SET_TEMPO) và Chữ ký thời gian. Xem [bài đăng trên blog này] (http://www.lastrayofhope.com/2009/12/23/midi-delta-time-ticks-to-seconds/) để biết thêm chi tiết về cách tính toán. – Oddthinking
60 bpm là 1 phút 1000 mili giây là 1 giây 60 giây là 1 phút hoặc 60.000 mili giây
như vậy để chuyển đổi mili giây để BPM cho một sự kiện đánh dấu: bpm (trong mili giây) bằng 60000 chia cho (BpmVa lue)
để thiết lập sự kiện đánh dấu cho */8 biện pháp (như trong 7/8): bpm (trong mili giây) tương đương với 60000 chia cho (BpmValue) chia cho 2
Tôi đang làm việc trên một C# Metronome hiện nay. Nếu bạn đang lập trình cast nó thành số nguyên để làm tròn xuống. các phân số của mili giây không phải là một vấn đề. mặc dù nếu độ chính xác là thỏa thuận của bạn, hãy đảm bảo bạn đặt kết quả của mình để đọc trong một điểm nổi.
câu hỏi: đối tượng C# timer có cho phép giá trị dấu chấm động được gán cho mili giây không?
mọi nhận xét hoặc đề xuất liên quan đến triển khai C# được đánh giá cao. nếu toán học của tôi bị lỗi, xin vui lòng cho tôi biết. cảm ơn!
Cẩn thận khi sử dụng C# timers có độ phân giải chỉ khoảng 15ms. Xem http://stackoverflow.com/questions/3744032/why-are-net-timers-limited-to-15-ms-resolution – pilotcam
tôi thực sự đánh giá cao sự hợp tác của bạn khi tôi không nhận ra. nhưng để đi đến 50 triệu nhịp độ sẽ phải là 1120 nhịp mỗi phút lol – Adam
tôi thấy điểm của bạn bây giờ là tôi đã đọc bài báo. sẽ đúc các giá trị thành các loại số nguyên nhỏ hơn để cải thiện tốc độ của độ phân giải? noob ở đây, vì vậy hãy dễ dàng – Adam
- 1. Thực hiện Midi bên trong .Net
- 2. Tạo cổng MIDI ảo
- 3. tạo MIDI trong javascript
- 4. Đọc các tệp MIDI
- 5. MIDI qua Bluetooth
- 6. Thư viện C/C++ để đọc tín hiệu MIDI từ thiết bị MIDI USB
- 7. Định dạng tệp MIDI XG
- 8. Thao tác các tệp MIDI bằng Python
- 9. Đọc một tệp MIDI bằng Python
- 10. Gửi MIDI lên USB bằng Arduino
- 11. Cấu trúc của tệp MIDI là gì?
- 12. MIDI trên Python/PyGame, Ubuntu 12.04
- 13. Java Midi trong Mac OSX bị hỏng?
- 14. Đầu ra MIDI cho VST Plugin
- 15. python tổng hợp midi với fluidsynth
- 16. Hỗ trợ nhạc MIDI trong HTML5
- 17. Phát tệp MIDI từ Common Lisp
- 18. Đọc các tệp Midi trên IOS
- 19. Phần mềm để chuyển đổi âm thanh sang MIDI
- 20. Làm cách nào để ghi tệp MIDI bằng Python?
- 21. Nhận dữ liệu ghi chú từ tệp MIDI
- 22. Thư viện MIDI đơn giản, nền tảng chéo cho Python
- 23. Nhận tín hiệu từ cổng MIDI trong C#
- 24. Java nhận đầu vào từ bàn phím MIDI
- 25. Gửi tín hiệu midi từ C# đến ableton
- 26. Chuyển đổi số ghi chú Midi thành Tên và Octave
- 27. Gửi tin nhắn MIDI qua USB trên Android
- 28. Chơi các file midi với MusicPlayer & Âm nhạc Chuỗi
- 29. Silverlight có thể giao tiếp với nhạc cụ MIDI không?
- 30. Làm cách nào để phát các ghi chú MIDI tùy ý bằng javascript?
im không nhận được bạn ... Cho phép nói rằng tôi có một âm nhạc có nhịp độ liên tục 424 BPM ... Bây giờ tôi có dao động midi ve trong PPQ..ví dụ 70272,70344,70372 vv ... bây giờ cho mỗi miditick tôi muốn có một phát lại thế giới thực tương đương thứ hai .... nếu tôi lấy ví dụ 145240 PPQ (midi tick) .. (mẫu midi tick lấy từ file midi nhạc) ... thì công thức ur là cho tôi 0.9116185787866357 này không có mili giây nào ... chuyển đổi thành 0.0009116185787866358 trong giây ... câu đố của tôi là cuz 145240 midi tick được sản xuất sau 1 giây khi phát lại âm nhạc midi .... Trợ giúp Plz – Taha