prog.sidra Ответов: 0

Mediafoundationreader поток файла по url - адресу с naudio , вычислить общее время файла


успешно потоковый файл с URL-адреса, но теперь я хочу рассчитать общее время файла так же, как в медиаплеере . а при воспроизведении звука текущее время увеличится.
я сделал это с помощью wave file reader но я не могу сделать это с помощью media foundation reader

Что я уже пробовал:

<pre lang="c#">
using(var mf = new MediaFoundationReader("http://192.168.0.105/record//20180301/0005/03017988.wav"))
{
using(var wo = new WaveOutEvent())
{
    wo.Init(mf);
    wo.Play();
}
}
 WaveStream inputStream = new WaveFileReader(mf);
 private void timer1_Tick_1(object sender, EventArgs e)
        {
            try
            {
                TimeSpan currentTime = (wo.PlaybackState == PlaybackState.Stopped) ? TimeSpan.Zero : inputStream.CurrentTime;
                //trackBar.Value = Math.Min(trackBar.Maximum, (int)(100 * currentTime.TotalSeconds / inputStream.TotalTime.TotalSeconds));
                label1.Text = String.Format("{0:00}:{1:00}", (int)currentTime.TotalMinutes, currentTime.Seconds);
                trackBar.Minimum = 0;

            trackBar.Maximum = (int)(inputStream.TotalTime.TotalSeconds);
            if (trackBar.Value <= trackBar.Maximum)
                trackBar.Value = (int)(inputStream.CurrentTime.TotalSeconds);
        }
        catch
        {
            timer1.Stop();
        }}

0 Ответов