/// <summary> /// Disposes of object resources. /// </summary> /// <param name="disposeManagedResources">If true, managed resources should be /// disposed of in addition to unmanaged resources.</param> protected virtual void Dispose(bool disposeManagedResources) { if (disposeManagedResources) { m_factory.Dispose(); m_player.Dispose(); m_equalizer.Dispose(); m_media.Dispose(); m_media_preview.Dispose(); m_memRender.Dispose(); m_media_list.Dispose(); m_list_player.Dispose(); m_media_list_preview.Dispose(); m_list_preview_player.Dispose(); } }
public void GetDuration(string filePath) { IMedia media = m_factory.CreateMedia <IMediaFromFile>(filePath); IVideoPlayer player = m_factory.CreatePlayer <IVideoPlayer>(); m_memRender = player.CustomRenderer; m_memRender.SetFormat(new BitmapFormat(1, 1, ChromaType.RV24)); media.Events.DurationChanged += new EventHandler <MediaDurationChange>(Events_GetTimeDuration); media.Parse(true); player.Play(); player.Stop(); Thread.Sleep(100); player.Dispose(); m_memRender.Dispose(); media.Dispose(); }