protected override void StartTask(StartSongTask task) { task.BeforeResourceStarted += OnBeforeResourceStarted; task.AfterResourceStarted += OnAfterResourceStarted; task.OnAudioResourceUpdated += OnAudioResourceUpdated; task.OnLoadFailure += OnLoadFailure; if (playerConnection.FfmpegProducer.Length != TimeSpan.Zero) { task.StartTask(GetAnalyzeTaskStartTime()); } }
protected override void StopTask(StartSongTask task) { base.StopTask(task); if (task == null) { return; } task.BeforeResourceStarted -= OnBeforeResourceStarted; task.AfterResourceStarted -= OnAfterResourceStarted; task.OnAudioResourceUpdated -= OnAudioResourceUpdated; task.OnLoadFailure -= OnLoadFailure; }