IPB

Welcome Guest ( Log In | Register )

I have developed an OpenCL based resampler for foobar2000 v 1.x
cxn4689
post Mar 14 2012, 04:02
Post #1





Group: Members
Posts: 10
Joined: 14-March 12
Member No.: 97789



This is based on the basic framework of SoX program. I removed the whole SoX algorithm and implemted mine.
My algorithm is very simple. I use the ideal interpolation function (sinc) to caculate the new sampling point and blackman window function to truncate the input sequence. My algorithm is not table based. Because table based method usually needs linear interpolation to get the coefficient that does not fall under the table index. So, my algorithm caculates the sinc function at each time required. The computing overhead can be amortised by the powerful GPU computing. So, I use CUDA to accelarating the conversion progress. The feature is shown below:

Currently, this resampler only support 44->48 for it's just a test program about CUDA acceleration in foobar2000.
The CPU usage is under 6%
the THD distortion is under 0.0005%
the IMD distortion is under 0.0041%
The frequency response is almost a straight line with vibrating less than 0.01db.
The transition band is about 4KHz.
I am working on optimization and debug now.


I am from china main land. So, my english expresion may not be good enough to express my point. If you have any questions, please email me.
Go to the top of the page
+Quote Post

Posts in this topic


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 21st April 2014 - 04:18