Creating FIR filter coefficients of pre-emphasis
Pre-emphasis frequency response for all frequencies .
therefore
De-emphasis
Pre-emphasis
Note: Math equations of this article uses MathML and it seems it is displayed correctly only on Firefox (as of November 2020).
Now we have frequency response equation of pre-emphasis (2) and FIR filter coefficients can be calculated from (2) using frequency sampling method, which is explained on the previous article.
Burning Audio CD-R with pre-emphasis
I used Windows PC for the following tasks.
Prepare Audio tracks with pre-emphasised
Prepare sound tracks of our Audio CD.
PCM should be pre-emphasis filtered 44.1kHz 16bit WAV.
- If PCM sample rate is not 44.1kHz or audio file format is not FLAC, convert it to 44.1kHz FLAC using Audacity. https://www.audacityteam.org/download/
- Perform pre-emphasis to 44.1kHz 16bit or 24bit FLAC file using sox or FIRFilterConsole https://sourceforge.net/p/playpcmwin/wiki/FIRFilterConsole/
- Then the files should be converted from FLAC to 44.1kHz 16bit 2ch WAV using Audacity.
I prepared the CD track WAV files Track01.wav and Track02.wav on C:\audio folder.
Install Cygwin and cdrecord
Download and run Cygwin setup-x86_64.exe https://www.cygwin.com/
Install cdrecord package: On the Select Packages menu on the Cygwin installer, Set View to "Full" and input "cdr" to Search. cdrecord package will be shown. On the pulldown list of the New column, select cdrecord version number to install.
Burn Pre-emphasis Audio data to CD-R
Start → Cygwin → Cygwin64 Terminal.
Change current directory to C:\audio . Type the following text on the Cygwin64 Terminal :
$ cd /cygdrive/c/audio
Then type ls to show the file list of C:\audio folder. Make sure your wav files are there.
Create Audio CD with pre-emphasis:
$ cdrecord -audio -preemp Track01.wav Track02.wav
View Burned Audio CD-R track info using Exact Audio Copy
It seems Pre-emp is "Yes" 😄
Reading Channel status bit of S/PDIF signal from CD player
Inserted created pre-emphasis CD-R to a CD transport Marantz SA-15S1 and played. And watched its S/PDIF signal using RME Fireface UC and found emphasis flag of channel status is "None". This means the CD transport de-emphasised PCM signal in digital domain and no further de-emphasis is necessary on receiver/DAC.
It is possible to de-emphasis pre-emphasised PCM signal by playing it on the CD transport and recording S/PDIF signal using PCM recorder.
Pre-emphasis FIR Filter coefficients of 27 taps
This FIR filter is for 44.1kHz PCM.
-0.0001031041010544631,
3.9223988214258376E-05,
-0.00035340551190767011,
8.1196136261327267E-05,
-0.00091024157376404236,
-0.00022270417890876693,
-0.0025945766943699933,
-0.0022553226067039134,
-0.009562843431584811,
-0.015097813965845558,
-0.051492871033445048,
-0.11992388565207374,
-0.44071105358364959,
2.2862148044176558,
-0.44071105358364959,
-0.11992388565207374,
-0.051492871033445048,
-0.015097813965845558,
-0.009562843431584811,
-0.0022553226067039134,
-0.0025945766943699933,
-0.00022270417890876693,
-0.00091024157376404236,
8.1196136261327267E-05,
-0.00035340551190767011,
3.9223988214258376E-05,
-0.0001031041010544631,
Filtering sound files using sox
The following examples inputs 44.1kHz PCM file inFile.flac and apply 27taps Pre-emphasis FIR filter and output it as outFile.flac (this filter increases gain so sample value overflow may occur):
sox inFile.flac outFile.flac fir -0.0001031041010544631 3.9223988214258376E-05 -0.00035340551190767011 8.1196136261327267E-05 -0.00091024157376404236 -0.00022270417890876693 -0.0025945766943699933 -0.0022553226067039134 -0.009562843431584811 -0.015097813965845558 -0.051492871033445048 -0.11992388565207374 -0.44071105358364959 2.2862148044176558 -0.44071105358364959 -0.11992388565207374 -0.051492871033445048 -0.015097813965845558 -0.009562843431584811 -0.0022553226067039134 -0.0025945766943699933 -0.00022270417890876693 -0.00091024157376404236 8.1196136261327267E-05 -0.00035340551190767011 3.9223988214258376E-05 -0.0001031041010544631
No comments:
Post a Comment