Je tente de transformer un code R en un code équivalent Julia, mais voilà :

Pour un code R :

Code:
fft_w=512
samplingrate = fs
wave <- readWave(
  "....wav",
  from = 1,
  to = Inf,
  units = c("samples"),
  header = FALSE,
  toWaveMC = NULL
)
spec_left <- spectro(wave, f = samplingrate, wl = fft_w, plot = FALSE, dB = "max0")$amp

j'ai codé en Julia :

Code:
fft_w=512
wave, fs = wavread("....wav", format="native")

    #Obtention du spectre d'amplitude en dB de l'enregistrement sonore
    spectrog = spectrogram(wave, fft_w, 0;fs=fs) #obtention du spectre : avec des fenêtres de fft de fft_w, pas de chevauchement et une fréquence d'échantillonnage fs
    
    A = zeros(length(spectrog.power[:,1]),length(spectrog.power[1,:])) #initialisation
    for j in 1:length(spectrog.power[1,:]) #détermination de la valeur absolue des puissances du spectre
        for i in 1:length(spectrog.power[:,1])
            A[i,j] = sqrt(spectrog.power[i,j])
        end
    end
  
    spectroAdB = 20 * log10.(abs.(A/maximum(A))) #transformation de l'amplitude en dB
Et pourtant impossible de retrouver les mêmes valeurs de sorties, je ne comprends pas pourquoi. Quelqu'un aurait-il une idée à suggérer ?

Merci d'avance.