incorrect olens result for stft when win_length is not same as n_fft
In torch.stft, win_length is not used when calculating the number of frames, which is same as libriosa.stft,  see also http://librosa.org/doc/main/_modules/librosa/core/spectrum.html#stft.

In espnet2/layers/stft.py
```python
161        if ilens is not None:
162            if self.center:
163                pad = self.win_length // 2
164                ilens = ilens + 2 * pad
165
166            olens = (ilens - self.win_length) // self.hop_length + 1
```
should be
```python
161         if ilens is not None:
162             if self.center:
163                 pad = self.n_fft // 2
164                 ilens = ilens + 2 * pad
165
166             olens = (ilens - self.n_fft) // self.hop_length + 1
```
diff --git a/espnet2/layers/stft.py b/espnet2/layers/stft.py
index 01bbce8ea..b888bfede 100644
--- a/espnet2/layers/stft.py
+++ b/espnet2/layers/stft.py
@@ -160,10 +160,10 @@ class Stft(torch.nn.Module, InversibleInterface):
 
         if ilens is not None:
             if self.center:
-                pad = self.win_length // 2
+                pad = self.n_fft // 2
                 ilens = ilens + 2 * pad
 
-            olens = (ilens - self.win_length) // self.hop_length + 1
+            olens = (ilens - self.n_fft) // self.hop_length + 1
             output.masked_fill_(make_pad_mask(olens, output, 1), 0.0)
         else:
             olens = None
['espnet2/layers/stft.py']