2008-09-12 43 views
11

Tôi đang làm việc trên một ứng dụng cho các chuyên ngành âm nhạc đại học. Một tính năng tôi đang xem xét là làm chậm phát lại âm nhạc mà không thay đổi độ cao của nó. Tôi đã thấy điều này được thực hiện trong phần mềm thương mại, nhưng không thể tìm thấy bất kỳ thư viện hoặc ứng dụng mã nguồn mở nào làm như thế này.Làm chậm phát lại tệp âm thanh mà không thay đổi độ cao của nó?

  1. Có thư viện nào không?
  2. Làm cách nào để thực hiện điều này từ đầu từ các định dạng tệp khác nhau?

Lưu ý: Tôi đang làm việc trong java nhưng không phản đối việc thay đổi ngôn ngữ.

Trả lời

10

Timestretching khá khó. Bạn càng làm chậm hoặc tăng tốc âm thanh càng nhiều hiện vật bạn nhận được. Nếu bạn muốn biết những gì họ âm thanh như nghe "The Rockafeller Skank" của Fat Boy Slim. Có rất nhiều cách để làm điều đó tất cả đều có điểm mạnh và điểm yếu riêng của họ. Toán học có thể trở nên thực sự phức tạp. Đó là lý do tại sao có rất nhiều thuật toán độc quyền.

Trang này giải thích mọi thứ rõ ràng hơn một chút so với tôi có thể và liên kết đến thư viện Dirac. http://www.dspdimension.com/admin/time-pitch-overview/

Tôi thấy liên kết này cho mã java để làm thay đổi cường độ/timestretching http://www.adetorres.com/keychanger/KeyChangerReadme.html

+0

"Funk linh hồn Brother" là, tất nhiên, "The Rockafeller Skank";) http://en.wikipedia.org/wiki/The_Rockafeller_Skank – moobaa

+1

@moobaa: DOH .. ngu ngốc của tôi .. Cố định nó! hy vọng không ai nhận thấy :-) – Mendelt

4

Tôi sử dụng soundstretch để tăng tốc độ podcast hoạt động khá tốt, chưa thử trên nhạc tho ugh.

2

Một cách để thực hiện việc này là tăng gấp đôi tốc độ lấy mẫu mà không thay đổi tốc độ lấy mẫu của nguồn của bạn. (Ví dụ chất lượng thấp, nhưng dễ triển khai. Lưu ý: Bạn cũng có thể giảm tốc độ lấy mẫu).

Kiểm tra bất kỳ phép toán nào liên quan đến bộ giọng hát giai đoạn.

Một phương pháp phổ biến khác là tạo một mảng các thùng rác lưu trữ dữ liệu cho các khoảng thời gian được lên lịch cho âm thanh của bạn. Sau đó, bạn có thể chọn nhanh như thế nào để lặp qua các thùng và bạn có thể tổng hợp lại dữ liệu âm thanh đó miễn là bạn cho phép bạn trải ra một đoạn ngắn âm thanh của bạn miễn là bạn muốn.

+0

Tôi khá chắc chắn rằng ý tưởng đầu tiên sẽ chỉ giảm chất lượng trong khi rời khỏi tốc độ phát lại giống nhau – Jiaaro

+0

Đồng ý và được ghi nhận. –

1

độ tin cậy thực hiện việc này và hoàn toàn miễn phí. Đây là một số plug in cho máy nghe nhạc mp3 cũng được miễn phí. Rõ ràng nó khá dễ dàng để làm với một mp3 vì nó đã được mã hóa trong miền tần số.

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