Subliminal.ny not working in Audacity 3.5

Is the subliminal.ny plugin working in audacity 3.5?? Or did the recent update kill it? Up to this point I’ve had NO issues with it, but now, it changes nothing…

Yes it works. I use it in Audacity version 3.5.1 without issues.

sorry, other projects lol…which version? I’m using ver. 4

I don’t now what you mean with ver. 4. (the subliminal.ny I use?)

If I’m right, I use the quite old version 1.
I never had any issues with this version:

;nyquist plug-in
;version 1
;type process
;name “Subliminal…”
;action “Subliminal…”
;control carrier “Carrier” real “Hz” 17500 14000 20000

(setf carrier (max 14000 (min carrier 20000)))

;; We have two Nyquist frequencies, carrier/2 and sound-srate/2.
;; The CUTOFF is the maximum allowed frequency in the modulator.
;; It must not be greater than carrier/2, but also not greater than
;; the difference between the carrier and sound-srate/2, because
;; otherwise the modulated carrier aliases.

(setf cutoff (min (/ carrier 2.0) (- (/ sound-srate 2.0) carrier)))

(defun cut (function sound frequency)
(dotimes (ignore 10 sound)
(setf sound (funcall function sound frequency))))

(defun subliminal (sound)
(let ((result (mult 2 (cut #'lowpass8 (hp sound 80) cutoff)
(hzosc carrier))))
(cut #'highpass8 result carrier)))

(if (< sound-srate 44100)
(princ “The track sample frequency must be minimum 44100Hz.”)
(multichan-expand #'subliminal s))

My Audacity version 3.5.1
Build: Apr 24 2024

Thanks for posting; I'm using Version 4 of this. The orig author updated this. Here it is, so you can see/have it:

;nyquist plug-in
;version 4
;type process
;preview enabled
;name "Subliminal"
;debugbutton disabled
;author "Steve Daulton"
;release 2.4.2
;copyright "GNU General Public License v2.0+"

;; License: GPL v2 or later
;; An audio frequency AM encoder / decoder for speech.
;; This is a simple form of Steganography (hiding information
;; within another message or physical object). It is a
;; popular method for creating "Silent Subliminals".
;; Disclaimer: The author makes no claims whatsoever regarding
;; the effectiveness or safety of "Silent Subliminals".
;; Copyright Steve Daulton.

;control ACTION "Encode or Decode" choice "Encode,Decode" 0

; Global constants
(psetq *cf* 16000     ; Carrier frequency
       *lf* 300       ; Audio-band low frequency
       *hf* 3000      ; Audio-band high frequency
       *enc-gain* 5   ; Encoder gain
       *dec-gain* 4)  ; Decoder gain

(defun audio-filter (sig)
  (setf sig (highpass8 sig *lf*))
  (lowpass8 sig *hf*))

(defun modulate (sig)
  (mult sig (hzosc *cf*)))

(defun sideband-filter (sig)
  (dotimes (i 8 (mult  *enc-gain* sig))
    (setf sig (highpass8 sig (+ *cf* *lf*)))))

(defun encode (sig)
  (setf audio (audio-filter sig))
  (setf modulated (modulate audio))
  (multichan-expand #'limit (sideband-filter modulated)))

(defun decode (sig)
  (setf audio (mult *dec-gain* sig (hzosc *cf*)))
  (setf audio (lowpass8 audio *hf*))
  (multichan-expand #'limit audio))

(defun limit (sig &aux (limit 0.8) (hld 10.0))
  (let* ((time (/ hld 3000.0))  ; lookahead time (seconds)
         (samples (round (* time *sound-srate*)))
         (peak-env (get-env sig samples time limit)))
    (mult sig
        (mult -1 (snd-log peak-env))))))

(defun get-env (sig step lookahead limit)
  (let* ((sig (mult (/ limit) sig))
         (pad-time (* 3 lookahead))       ; padding required at start (seconds)
         (pad-s (* 3 step))               ; padding samples
         (padding (snd-const (peak sig pad-s) 0 *sound-srate* pad-time))
         (peak-env (snd-avg sig (* 4 step) step OP-PEAK)))
    (extract 0 1
      (s-max 1 
        (sim padding
          (at-abs pad-time (cue peak-env)))))))

(cond ((< *sound-srate* 44100) "Error.\nTrack sample rate too low")
      ((= ACTION 0) (encode *track*))
      (t (decode *track*)))

Your Version errors out on me, which is more than I got before. Problems seems to be sample I'm working on...need to figure it out. I've had 2 strokes, so not as sharp as I once was...thanks again !

Some of the code formatting got messed up (e.g., *track* displays as track). Try selecting all of the code and click on the </> button to format it as code.

Ok? Really new here lol


Sorry for the late answer.
I’ve Installed your version on my audacity 3.5.1. No issues until yet.

Tests done:

Tried to encode => works as expected
Tried to decode => works as expected

Thank you. :slight_smile: