Tôi đã tìm kiếm một chút trên trang này nhưng thật ngạc nhiên, tôi không tìm thấy nhiều thông tin liên quan và kiến thức về DSP của tôi rất hạn chế.
Mục tiêu của tôi khá đơn giản: Tôi muốn lập trình một hồi âm thuật toán trong C ++, âm thanh thực sự tốt. Hay chính xác hơn, tùy chọn tốt nhất sẽ là để người dùng cuối chọn sự đánh đổi giữa chất lượng và việc sử dụng cpu.
Từ những gì tôi phát hiện ra cho đến nay, để tạo ra một hồi âm, bạn phải đưa tín hiệu khô vào thuật toán phản xạ sớm, sau đó đến một phản xạ muộn. Điều này có đúng không?
Bây giờ, tôi đã tìm thấy một bài viết rộng rãi về phần phản xạ muộn, bằng cách sử dụng Mạng trì hoãn phản hồi ( GIẢM YÊU CẦU YÊU CẦU TUYỆT VỜI SỬ DỤNG MẠNG TRẢ LÃI THỜI GIAN TẠM THỜI GIỜ ). Từ những gì tôi đã đọc, FDN là một cách mô phỏng chất lượng cao, không quá mở rộng (cpu khôn ngoan) để mô phỏng các phản xạ muộn. Hơn nữa, tôi đoán bạn có thể kiểm soát sự đánh đổi chất lượng / cpu bằng cách thay đổi số lượng dòng trễ.
Tuy nhiên tôi hoàn toàn không biết làm thế nào để lập trình các phản xạ sớm (nhớ không? Tôi thực sự không biết gì về miền DSP).
Tôi nghe có vẻ hợp lý khi sử dụng một loại độ trễ đa, có ưu điểm là dễ lập trình và tính toán không tốn kém. Nhưng điều đó nghe có vẻ quá đơn giản.
Hơn nữa, bản năng của tôi nói với tôi rằng một hoặc một vài bộ lọc phải được đưa vào đâu đó trong đường dẫn tín hiệu.
Ai đó có thể xin vui lòng làm rõ chủ đề này một chút cho tôi?
Hai lưu ý:
- Tôi không phải là một hồi âm chập chững chút nào. Tôi không thực sự quan tâm đến chủ nghĩa hiện thực của âm vang, nhưng thay vào đó tôi muốn có một âm thanh tốt, có thể điều chỉnh được, không phải là âm vang đói.
- Ngoài ra, phần mã hóa không phải là điều khiến tôi lo lắng, nếu không tôi sẽ hỏi về stackoverflow. Đây thực sự là phần DSP, và chỉ phần đó, mà tôi đang theo sau :)