private void Perform(MusicService job)
 {
     if (job.Action == XActionType.Convertion)
     {
         xConverter.Convert(job);
     }
     if (job.Action == XActionType.TempoAdjustment)
     {
         xTempoProcessor.Process(job);
     }
 }
        private void ProccessMp3(XConverter xConverter, XTempoProcessor xTempoProcessor, string mp3Path, string mainSourceFileName)
        {
            XJobResult res = xConverter.Convert(mp3Path, XFileType.Wav);

            SaveTempFile(res.TempFileName, res.OutputData);

            var wavTempoJob = new XTempoJob {
                SourceFileName = res.TempFileName, ReturnData = true
            };

            xTempoProcessor.Process(wavTempoJob);

            //var afterTempoWavToMp3Job = new XConvertJob { SourceData = wavTempoJob.OutputData, DestinationFileType = XFileType.Mp3 };
            SaveTempFile(mainSourceFileName.GenerateGuidPath(XFileType.Mp3), wavTempoJob.OutputData);
            //xConverter.Convert(mp3ToWavJob);

            //if (afterTempoWavToMp3Job.SourceData != null)
            //{
            //    File.WriteAllBytes(afterTempoWavToMp3Job.SourceFileName, afterTempoWavToMp3Job.SourceData);
            //}
        }