2011-10-01 24 views

Trả lời

4

Ghi chú âm nhạc không có gì hơn tần số âm thanh cụ thể. Bạn sẽ cần một cách để phân tích tất cả các tần số trong tín hiệu đầu vào của bạn, và sau đó tìm cách tách biệt các ghi chú riêng lẻ.

Tìm tần số trong tín hiệu âm thanh được thực hiện bằng cách sử dụng Fast Fourier Transform (FFT). Có rất nhiều mã nguồn có sẵn trực tuyến để tính toán FFT từ tín hiệu âm thanh. Cụ thể, oScope cung cấp giải pháp nguồn mở cho iPhone.

Edit:Pitch detection có vẻ là tên kỹ thuật cho những gì bạn đang cố gắng làm. Các câu trả lời cho một similar question ở đây trên SO có thể được sử dụng.

+3

Quảng cáo chiêu hàng không giống như tần suất. Một lưu ý có thể có một cơ bản còn thiếu. – hotpaw2

+0

@ hotpaw2: Thú vị. Hiển thị số tiền tôi biết về âm nhạc ';)'. Trong trường hợp bất kỳ ai khác không rõ ràng về sự khác biệt, bài viết sau đây sẽ phát hiện ra nó khá độc đáo: http://emusician.com/tutorials/emusic_pitch_vs_frequency/ –

+0

Cảm ơn bạn vì sự thấu hiểu! –

1

Giống như @ e.James đã nói, bạn đang tìm cách tìm quảng cáo chiêu hàng, được gọi là Phát hiện quảng cáo chiêu hàng. Có rất nhiều tài nguyên tại CCRMA, Đại học Stanford cho những gì bạn đang tìm kiếm. Chỉ cần google để phát hiện Pitch và bạn sẽ thấy một bộ sưu tập tuyệt vời các thuật toán. Theo như mong muốn tìm thấy FFT của các khối mẫu âm thanh, bạn có thể sử dụng chức năng FFT tích hợp của khung tăng tốc (xem thisthis) hoặc sử dụng MoMu toolkit. Sử dụng MoMu có lợi ích của chức năng của nó là phân hủy luồng âm thanh thành các mẫu cho bạn và dễ dàng áp dụng FFT bằng cách sử dụng các chức năng riêng của nó.

2

Không có gì được tích hợp sẵn cho API iOS để ước tính quảng cáo chiêu hàng âm nhạc. Bạn sẽ phải mã chức năng DSP của riêng bạn. Các FFT trong khung tăng tốc sẽ cung cấp cho bạn thông tin tần số phổ từ dạng sóng lấy mẫu PCM, nhưng tần số khác với cường độ nhận thức về tâm lý.

Có rất nhiều cách tốt và xấu để ước tính tần suất và quảng cáo chiêu hàng. Tôi có một danh sách dài một phần các phương pháp ước tính khác nhau trên DSP resources web page của tôi.

Bạn có thể xem ứng dụng mẫu aurioTouch của Apple để biết ví dụ về cách nhập đầu vào âm thanh thiết bị iOS và hiển thị phổ tần số của nó.

+0

Xin chào, bạn có liên kết web cho ứng dụng audioTouch không? – Ravi

+0

Xem theo Tài nguyên phát triển: Mã mẫu trên developer.apple.com – hotpaw2

+0

Nó thực sự được gọi là [aurioTouch] (https://developer.apple.com/library/ios/samplecode/aurioTouch/Introduction/Intro.html) – Chris

Các vấn đề liên quan