jaakkopasanen / Impulcifer

Measurement and processing of binaural impulse responses for personalized surround virtualization on headphones.
MIT License
211 stars 14 forks source link

--Plot error #38

Closed rpx91 closed 4 years ago

rpx91 commented 4 years ago

Impulcifer outputs fine when I run the normal process command without the plot. But when I add the plot switch I get an error. Updated to latest

(venv) C:\Users\dushy\Impulcifer>python impulcifer.py --test_signal="data/sweep-6.15s-48000Hz-32bit-2.93Hz-24000Hz.pkl" --dir_path="data/my_hrir" --no_room_correction --channel_balance=3.0 --plot
 ** On entry to DLASCLS parameter number  4 had an illegal value
 ** On entry to DLASCLS parameter number  4 had an illegal value
Traceback (most recent call last):
  File "impulcifer.py", line 489, in <module>
    main(**create_cli())
  File "impulcifer.py", line 121, in main
    hrir.plot(os.path.join(dir_path, 'plots', 'post'))
  File "C:\Users\dushy\Impulcifer\hrir.py", line 354, in plot
    plot_waterfall=plot_waterfall
  File "C:\Users\dushy\Impulcifer\impulse_response.py", line 221, in plot
    self.plot_fr(fig=fig, ax=ax[1, 1])
  File "C:\Users\dushy\Impulcifer\impulse_response.py", line 389, in plot_fr
    fr.smoothen_fractional_octave(window_size=1/3, treble_f_lower=20000, treble_f_upper=23999)
  File "C:\Users\dushy\Impulcifer\venv\lib\site-packages\autoeq\frequency_response.py", line 1180, in smoothen_fractional_octave
    treble_f_upper=treble_f_upper
  File "C:\Users\dushy\Impulcifer\venv\lib\site-packages\autoeq\frequency_response.py", line 1137, in _smoothen_fractional_octave
    y_normal = savgol_filter(y_normal, self._window_size(window_size), 2)
  File "C:\Users\dushy\Impulcifer\venv\lib\site-packages\scipy\signal\_savitzky_golay.py", line 337, in savgol_filter
    coeffs = savgol_coeffs(window_length, polyorder, deriv=deriv, delta=delta)
  File "C:\Users\dushy\Impulcifer\venv\lib\site-packages\scipy\signal\_savitzky_golay.py", line 139, in savgol_coeffs
    coeffs, _, _, _ = lstsq(A, y)
  File "C:\Users\dushy\Impulcifer\venv\lib\site-packages\scipy\linalg\basic.py", line 1218, in lstsq
    raise LinAlgError("SVD did not converge in Linear Least Squares")
numpy.linalg.LinAlgError: SVD did not converge in Linear Least Squares
rpx91 commented 4 years ago

Seems that when I clear the plots folder it resumes working and writing data. The error message is still there though.

jaakkopasanen commented 4 years ago

Seems like this is a duplicate of #32

Do you have this recording saved or did you overwrite it? I'd like to take a look.

rpx91 commented 4 years ago

It's happening on every recording I make. The single speaker measurements I uploaded are an example.

Wondering if it's something to do with my install. The plots do output, but the hesuvi.wav doesn't. But when I exclude the plots switch the output works fine.

rpx91 commented 4 years ago

Not sure if it was the update to the dependencies or what but I no longer get errors with -plot.