J'ai un code pour diffuser du mp3 depuis l'URL. Je veux montrer l'heure actuelle du lecteur mp3 dans l'interface utilisateur. Je l'ai essayé en utilisant WaveOut.GetPosition
, mais cela ne pouvait pas fonctionner pour moi. Comment puis-je faire cela?Comment obtenir l'heure actuelle pendant le streaming mp3 en utilisant NAudio?
Mon code:
do
{
//..codes to get url stream,to create BufferedWaveProvider
int decompressed = decompressor.DecompressFrame(frame, buffer, 0);
provider.AddSamples(buffer, 0, decompressed);
if (provider.BufferedDuration.Seconds > 2 && waveOut == null)
{
waveOut = new WaveOut();
waveOut.Init(provider);
waveOut.Play();
}
if (waveOut != null)
{
currentTime = (int)(waveOut.GetPosition() * 1d/AvgBytesPerSec);
}
}
while (bytesRead > 0 || waveOut.PlaybackState == PlaybackState.Playing);
De quel type est 'provider'? –
'provider' est BufferedWaveProvider,' waveOut' est WaveOut. Si vous avez besoin, je peux mettre tout le code. –
Comment ça ne marche pas? Est-ce qu'il reproduit l'audio? – ioctlLR