*From*: Jeroen Stessen <jeroen.stessen@xxxxxxxxxxx>*To*: opendtv@xxxxxxxxxxxxx*Date*: Tue, 26 Apr 2005 09:18:55 +0200

Hello, I wrote to Don Munsil: >> That is not a good filter for down-sampling ! >> (...) >> Better to use a polyphase filter with lookup tables. Don Munsil: > Well, I beg to differ on the first point. If you like, you could use a > two-lobe windowed sinc, but for all intents and purposes, Catmull-Rom is > equivalent to two-lobe Lanczos-windowed sinc. The two curves overlay almost > perfectly. You can't judge a filter like that... You should judge the flatness of the passband and the deepness of the stopband, which can only be done in the frequency domain. Even a tiny variation in the time or place domain can give a huge difference in the stopband. A good filter should be designed by looking in the frequency domain in the first place. By just windowing some "perfect" filter in the time domain, especially if the window length is too short, you get inferior filters. > Given that the calculation of the filter kernels is a tiny > portion of the whole scaling operation, it's a false economy, Exactly, because typically we store the impulse response of the filter in a lookup table. Then a good design is equally expensive as a bad design. > but I just don't see any reason to switch to windowed sinc. But if you can have a hand-tuned optimal filter instead... ?! Windowing is a crude operation, with not enough freedom to get an optimal result. Designing a filter from scratch will usually work better. Even Parks-McClellan can be better than a windowed sinc. But handwork is better. It depends also on a trade-off between sharpness, ringing and aliasing artefacts. There is obviously no single best filter. Like if you want to cascade down-sampling and up-sampling, as in the original subject of this thread, you might want to use two filters with a bit too much bandwidth each. > And yes, I agree completely that you need quite a few taps > and a polyphase filter to get acceptable results. The current > scaler I'm working on uses as many taps and phases as are > mathematically necessary, as it's not intended to be real-time. We do build real-time scalers, with optimal filters. Earlier this year my colleague Guido Volleberg has presented a paper on the ICCE, about a high-quality versatile scaler. Years ago a paper on the transposable sample-rate converter was presented by Johan Janssen, with my name as a co-author on it. I have distributed a copy among readers of OpenDTV. Feel free to ask. And Ad van den Enden has written an entire PhD thesis on the subject of re-sampling and multi-rate filtering (for audio). (He gives a nice solution for avoiding huge lookup tables.) Quality and complexity are no longer an issue anymore. We do seem to agree, I just wanted to point out that there is some gain to be had from designing good scalers and filters. Best regards, -- Jeroen +-------------------------------+------------------------------------------+ | From: Jeroen H. Stessen | E-mail: Jeroen.Stessen@xxxxxxxxxxx | | Building: SFJ-5.22 Eindhoven | Deptmt.: Philips Applied Technologies | | Phone: ++31.40.2732739 | Visiting & mail address: Glaslaan 2 | | Mobile: ++31.6.44680021 | NL 5616 LW Eindhoven, the Netherlands | | Pager: ++31.6.65133818 | Website: http://www.apptech.philips.com/ | +-------------------------------+------------------------------------------+ ---------------------------------------------------------------------- You can UNSUBSCRIBE from the OpenDTV list in two ways: - Using the UNSUBSCRIBE command in your user configuration settings at FreeLists.org - By sending a message to: opendtv-request@xxxxxxxxxxxxx with the word unsubscribe in the subject line.

**Follow-Ups**:**[opendtv] Re: Math of oversampling***From:*Don Munsil

**References**:**[opendtv] Re: Math of oversampling***From:*Don Munsil

- » [opendtv] Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling
- » [opendtv] Re: Math of oversampling