Audio player gets auto disposed
The audio player gets disposed when changing audio files. The app plays sequential audio in files in the shared\audio folder. The first file plays ok but stops after first audio. Im using Plugin.SimpleAudioplayer Here's the code, what am i doing wrong.
public partial class MainPage : ContentPage
{
private ISimpleAudioPlayer audio;
private int pagenum;
public MainPage()
{
InitializeComponent();
}
private void playaudio(int pgnum)
{
audio = CrossSimpleAudioPlayer.Current;
audio.PlaybackEnded += cmdNextClicked;
var stream = GetStreamFromFile(string.Concat("audio.w", (pgnum + 1).ToString(), ".mp3"));
audio.Load(stream);
audio.Play();
}
Stream GetStreamFromFile(string filename)
{
var assembly = typeof(App).GetTypeInfo().Assembly;
var stream = assembly.GetManifestResourceStream("App1." + filename);
return stream;
}
private void cmdRunClicked(object sender, EventArgs e)//
{
playaudio(pagenum);
}
private void cmdStopClicked(object sender, EventArgs e)//
{
if (!(audio is null))
{
audio.Stop();
}
}
private void cmdClicked(object sender, EventArgs e)
{
audio.Seek(audio.CurrentPosition + 30.0);
}
private void cmdNextClicked(object sender, EventArgs e)
{
pagenum++;
lblPageNo.Text = pagenum.ToString();
playaudio(pagenum);
}
private void cmdPrevClicked(object sender, EventArgs e)
{
pagenum--;
lblPageNo.Text = pagenum.ToString();
playaudio(pagenum);
}
}
Comments
Post a Comment