Manual Linkwitz-Riley filter
조회 수: 23 (최근 30일)
이전 댓글 표시
I'm trying to implement a manual linkwitz-riley filter, here's what I've done so far:
[x, fs] = audioread('nobody.wav');
[b0 a0]=butter(4,500/(fs/2));
[b1 a1]=butter(4,2000/(fs/2));
[b2 a2]=butter(4,500/(fs/2),'high');
[b3 a3]=butter(4,2000/(fs/2),'high');
lpL = filter(b0, a0, x);
lpH = filter(b1, a1, x);
lo = lpL+lpH;
hpL = filter(b2, a2, x);
mid = hpL + lpH;
apL = lpL + hpL;
hpH = filter(b3, a3, x);
hi = apL + hpH;
newsig = hi + mid + lo;
It kind of works, but doesn't sound like the original signal. I'm wondering whether any of you could help me out with implementing this a bit better.
I tried to follow this guideline:
. +---+ +---+
. +--|apL|--|hpH|-- Hi
. | +---+ +---+
. |
. | +---+ +---+
. --+--|hpL|--|lpH|-- Mid
. | +---+ +---+
. |
. | +---+ +---+
. +--|lpL|--|lpH|-- Lo
. +---+ +---+
댓글 수: 0
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Filter Design에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!