This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PCM9211EVM-U: Disable rate matching for 44.1khz

Part Number: PCM9211EVM-U
Other Parts Discussed in Thread: PCM9211, SRC4190

Tool/software:

I am using this script from codec control [SPDIF Record via TAS1020 through RXIN2 in MainOutput.txt] , 

my configuration is :  Audio precision[.ac3 44.1khz file input digital optical ] --> spdif in --> pcm9211[Master mode] --> i2s out --> Audio precision[digital i2s input] 

Basically I am playing a .ac3 file from AP and giving it as an input over spdif optical cable to PCM9211 module , When my .ac3 file is of 44.1Khz I am seeing 44.1khz output on AP but I want PCm9211 to transmit samples at 48khz irrespective of the input data , My input configuration for optical spdif is 48khz only but still because the file I am playing has 44.1khz sample rate, pcm9211 understands the format and is resampling it to give 44.1khz at output instead of 48khz .

Requesting your help to understand what register configuration I need to update in the above mentioned script to get the 48khz output from the module irrespective of my input file/data .

Current scenario:

48khz IN --> 48khz out 

44.1khz In --> 44.1khz out 

Required:

44.1khz IN  --> 48khz OUT 

48khz IN --> 48khz OUT

  • Hello Shivam,  There is no SRC block in this chip and that is why you don't see such a function in the register map. For that function you need an Sample Rate Converter, such as SRC4190.

    Regards,

    Arash

  • Hi Arash ,

    I want to fix the i2s output clock at 48khz , can you help me with the register setting for that , Independent of the input , I want my I2s output clock shall always run at 48khz .

    source[44.1khz or 48khz etc ] --> optical spdif --Input--> pcm9211 ---output--> i2s clk [fixed 48khz] .

    I got your point regarding SRC block , but my requirement is that I am giving a NPCM file as input to PCM9211 as my spdif is always configured to push data at 48khz now the problem is even though I am pushing 44.1khz NPCM file and have spdif configured with 48khz , still pcm9211 is intelligent enough to read the input file and consider it as 44.1khz and discard the zero padded data .

    For example let say I have a .ac3 file which has 44.1khz sample rate , and I have a spdif interface configured at 48khz sample rate , In this scenario In output we should get 441000 samples of input file + zero padded data(48000-44100 = 3900)samples .

    My point here is pcm9211 is intelligently discarding the 3900 samples of zero padded data , because it might be reading the sample rate details from .ac3 header , I want to disable this feature and want this zero padded data in the output .  

  • Hello Shivam,

    If you want to change DIT  to another sample rates,  you need to provide the desired clocks on MPIO_Cx port and use it as the  source for DIT clock. In datasheet you can read:

    7.3.8.7.2 Selection of DIT Input Source

    Selection of the DIT audio and clock sources is done using the Registers 60h/TXSSRC[2:0] and 60h/ TXPSRC[2:0].

    The system clock source for the DIT is selected using the Register 60h/TXSSRC[2:0].

    The PCM audio data source for the DIT (BCK. LRCK, and Data) is selected using the Register 60h/TXPSRC[2:0].

    Regards,

    Arash