Class: TorchAudio::Transforms::Spectrogram
- Inherits:
-
Torch::NN::Module
- Object
- Torch::NN::Module
- TorchAudio::Transforms::Spectrogram
- Defined in:
- lib/torchaudio/transforms/spectrogram.rb
Instance Method Summary collapse
- #forward(waveform) ⇒ Object
-
#initialize(n_fft: 400, win_length: nil, hop_length: nil, pad: 0, window_fn: Torch.method(:hann_window), power: 2.0, normalized: false, wkwargs: nil, center: true, pad_mode: "reflect", onesided: true) ⇒ Spectrogram
constructor
A new instance of Spectrogram.
Constructor Details
#initialize(n_fft: 400, win_length: nil, hop_length: nil, pad: 0, window_fn: Torch.method(:hann_window), power: 2.0, normalized: false, wkwargs: nil, center: true, pad_mode: "reflect", onesided: true) ⇒ Spectrogram
Returns a new instance of Spectrogram.
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/torchaudio/transforms/spectrogram.rb', line 4 def initialize( n_fft: 400, win_length: nil, hop_length: nil, pad: 0, window_fn: Torch.method(:hann_window), power: 2.0, normalized: false, wkwargs: nil, center: true, pad_mode: "reflect", onesided: true ) super() @n_fft = n_fft # number of FFT bins. the returned STFT result will have n_fft // 2 + 1 # number of frequecies due to onesided=True in torch.stft @win_length = win_length || n_fft @hop_length = hop_length || @win_length.div(2) # floor division window = wkwargs.nil? ? window_fn.call(@win_length) : window_fn.call(@win_length, **wkwargs) register_buffer("window", window) @pad = pad @power = power @normalized = normalized @center = center @pad_mode = pad_mode @onesided = onesided end |
Instance Method Details
#forward(waveform) ⇒ Object
33 34 35 36 37 38 |
# File 'lib/torchaudio/transforms/spectrogram.rb', line 33 def forward(waveform) F.spectrogram( waveform, @pad, @window, @n_fft, @hop_length, @win_length, @power, @normalized, center: @center, pad_mode: @pad_mode, onesided: @onesided ) end |