MCPcopy Index your code
hub / github.com/MoonInTheRiver/DiffSinger / test_step

Method test_step

usr/diffsinger_task.py:191–217  ·  view source on GitHub ↗
(self, sample, batch_idx)

Source from the content-addressed store, hash-verified

189 return outputs
190
191 def test_step(self, sample, batch_idx):
192 spk_embed = sample.get('spk_embed') if not hparams['use_spk_id'] else sample.get('spk_ids')
193 txt_tokens = sample['txt_tokens']
194 energy = sample['energy']
195 if hparams['profile_infer']:
196 pass
197 else:
198 mel2ph, uv, f0 = None, None, None
199 if hparams['use_gt_dur']:
200 mel2ph = sample['mel2ph']
201 if hparams['use_gt_f0']:
202 f0 = sample['f0']
203 uv = sample['uv']
204 fs2_mel = sample['fs2_mels']
205 outputs = self.model(
206 txt_tokens, spk_embed=spk_embed, mel2ph=mel2ph, f0=f0, uv=uv, ref_mels=[None, fs2_mel], energy=energy,
207 infer=True)
208 sample['outputs'] = self.model.out2mel(outputs['mel_out'])
209 sample['mel2ph_pred'] = outputs['mel2ph']
210
211 if hparams.get('pe_enable') is not None and hparams['pe_enable']:
212 sample['f0'] = self.pe(sample['mels'])['f0_denorm_pred'] # pe predict from GT mel
213 sample['f0_pred'] = self.pe(sample['outputs'])['f0_denorm_pred'] # pe predict from Pred mel
214 else:
215 sample['f0'] = denorm_f0(sample['f0'], sample['uv'], hparams)
216 sample['f0_pred'] = outputs.get('f0_denorm')
217 return self.after_infer(sample)

Callers 4

_workerFunction · 0.45
forwardMethod · 0.45
forwardMethod · 0.45
evaluation_forwardMethod · 0.45

Calls 3

denorm_f0Function · 0.90
after_inferMethod · 0.80
out2melMethod · 0.45

Tested by

no test coverage detected