Demodulation code for silent subliminal files doesn't work for 3.1.3

I used Audacity to create silent subliminal files. Previously I could use the following code to demodulate and verify the silent subliminal files but now it doesn’t work in Audacity 3.1.3. Can anyone help me modify the code so that it works in Audacity 3.1.3? Thanks!

(defun demod (s-in cf)
(mult s-in (hzosc cf)))

(multichan-expand #'demod s 17500)

Your code is very old and needs to be updated to “version 4” syntax, like this:

(defun demod (s-in cf)
  (mult s-in (hzosc cf)))

(multichan-expand #'demod *track* 17500)

This just changes the s symbol to track.

Thank you so much! Now it works.

One more question. Now in order to use the code, I have to use Nyquist Prompt and copy the code in the window. I cannot use Nyquist plug-in installer because every time I tried to install the code, Audacity complains “unsupported file type.” I use the .ny file name extension and I can install a few other .ny files without problem. What change should I make so that the code can be installed as a plug-in?

Sorry to bother you but I use Audacity only once in a while and I don’t use it to make a living so it doesn’t make sense for me to learn the script fully.

Appreciate your help.

As well as using the .NY file extension, you will also need to add a few “headers”. See: https://wiki.audacityteam.org/wiki/Nyquist_Plug-ins_Reference#header

If you’re not sure what to put, have a go and attach the plug-in to your reply and I’ll be happy to check it for you.
See here for how to attach a file to your post: https://forum.audacityteam.org/t/how-to-attach-files-to-forum-posts/24026/1