Post Go back to editing

Karaoke key change using ADI pitch transposer alogrithm

Hi,

I would like to implement the key change function for a karaoke machine using ADAU1451.

I tried the ADI pitch transposer algorithm for the key change function.

First, I don't know how to set the parameters  'Delay Reserved', 'Frequency Shift Slider', and 'Max Shift' to achieve +/-4 semitones pitch change. The information in the wiki Analog Devices doesn't show clearly how to set those parameters.

https://wiki.analog.com/resources/tools-software/sigmastudio/toolbox/adialgorithms/pitchmodification/pitchtransposer

Second, I set 'delay reserved' to 1000, while the 'max shift' is 100. I can heard obviously that the volume does not keep stable, like vibrato effect . Can it be more stable?

Thanks in advance!

Jim.

Parents
  •      Hello Jim,

         The LUT contents were determined empirically by running tests, experimenting until a guitar tuner app on my phone showed an approximately correct result.  Then assuming that the relationship between the ADI Pitch Transposer's data input and its pitch shift is proportional, I devised the spreadsheet and table.  Below I added a column for 1K samples reserved.  Note that the 1K numbers are not exactly double those for 2000 samples reserved, indicating the nonlinearity I had described earlier:

         I attached the spreadsheet (Open Office format) and the revised project should that help.  Likely you have already noticed that SigmaStudio doesn't save your Delay Reserved setting with the project -- I tend to excuse bugs like this since this wonderful software is made available free of charge.

         It appears that the ADI Pitch algorithm does use something like PSOLA, although its developer(s) at ADI would have to weigh in on that to know for sure.  I don't have access to SigmaStudio's internals.  PSOLA works well for voice; not so much for music.

         Best regards,

         Bob

    attachments.zip
Reply
  •      Hello Jim,

         The LUT contents were determined empirically by running tests, experimenting until a guitar tuner app on my phone showed an approximately correct result.  Then assuming that the relationship between the ADI Pitch Transposer's data input and its pitch shift is proportional, I devised the spreadsheet and table.  Below I added a column for 1K samples reserved.  Note that the 1K numbers are not exactly double those for 2000 samples reserved, indicating the nonlinearity I had described earlier:

         I attached the spreadsheet (Open Office format) and the revised project should that help.  Likely you have already noticed that SigmaStudio doesn't save your Delay Reserved setting with the project -- I tend to excuse bugs like this since this wonderful software is made available free of charge.

         It appears that the ADI Pitch algorithm does use something like PSOLA, although its developer(s) at ADI would have to weigh in on that to know for sure.  I don't have access to SigmaStudio's internals.  PSOLA works well for voice; not so much for music.

         Best regards,

         Bob

    attachments.zip
Children
No Data