Как получить имя кодека для mp3 файла? - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, коллеги. Я недавно начал разбираться с C#. Решил написать Mp3 плеер. Могли бы вы мне подсказать каким образом возможно вывести информацию о кодеке, использованном в аудиофайле. Со структурой Mp3 файла ознакомился, но реализовать не получается. Если кто разбирается, разобрался или просто знает что делать помогите

Решение задачи: «Как получить имя кодека для mp3 файла?»

textual
Листинг программы
  1.  public void axWindowsMediaPlayer1_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
  2.         {
  3.             // Test the current state of the player and display a message for each state.
  4.             switch (e.newState)
  5.             {
  6.                 case 0:    // Undefined
  7.                     textBox2.Text = "Не возможно воспроизвести данные" + Environment.NewLine + "Установите следующий кодек: " + kodec;
  8.                     isDis = false;
  9.                     break;
  10.                 case 1:    // Stopped
  11.                     textBox2.Text = "Stopped";
  12.                     break;
  13.                 case 2:    // Paused
  14.                      textBox2.Text = "Paused";
  15.                     break;
  16.                 case 3:    //Play
  17.                     textBox2.Text = "используемый кодек: " + kodec;
  18.                     if (isMp3 == false)
  19.                     {
  20.                         this.textBox2.Text += Environment.NewLine + "author: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("author") + Environment.NewLine;
  21.                         this.textBox2.Text += "Title: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("Title") + Environment.NewLine;
  22.                         this.textBox2.Text += "Album: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("Album") + Environment.NewLine;
  23.                         this.textBox2.Text += "copyright: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("copyright") + Environment.NewLine;
  24.                         this.textBox2.Text += "Artist: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("Artist") + Environment.NewLine;
  25.                         this.textBox2.Text += "Genre: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("Genre").ToString() + Environment.NewLine;
  26.                         this.textBox2.Text += "Bitrate: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("Bitrate") + Environment.NewLine;
  27.                         this.textBox2.Text += "Abstract: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("Abstract") + Environment.NewLine;
  28.                         this.textBox2.Text += "bitRate: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("bitRate") + Environment.NewLine;
  29.                         this.textBox2.Text += "duration: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("duration") + Environment.NewLine;
  30.                     }
  31.                     else
  32.                     {
  33.                         ID3 = new UltraID3();
  34.                         ID3.Read(axWindowsMediaPlayer1.URL);
  35.                         ID3MetaDataException[] exceptions = ID3.GetExceptions();
  36.  
  37.                         foreach (ID3MetaDataException xc in exceptions)
  38.                         {
  39.                             textBox2.Text += Environment.NewLine + xc.Message;
  40.                         }
  41.  
  42.                         Mp3FileReader reader = new Mp3FileReader(axWindowsMediaPlayer1.URL);
  43.                         textBox2.Text += Environment.NewLine + "author: " + ID3.Artist + Environment.NewLine;
  44.                         textBox2.Text +=  reader.WaveFormat.Encoding  + Environment.NewLine;
  45.                         textBox2.Text += "Title: " + ID3.Title + Environment.NewLine;
  46.                         textBox2.Text += "Album: " + ID3.Album + Environment.NewLine;
  47.                         textBox2.Text += "Genre: " + ID3.Genre + Environment.NewLine;
  48.                         textBox2.Text += "Bitrate: " + axWindowsMediaPlayer1.currentMedia.getItemInfo("Bitrate") + Environment.NewLine;
  49.                         textBox2.Text += "Year: " + ID3.Year + Environment.NewLine;
  50.                         textBox2.Text += "duration: " + ID3.Duration + Environment.NewLine;
  51.                     }
  52.                     isDis = true;
  53.                     break;
  54.                 //case 9:
  55.                 //    textBox2.Text = "Не возможно воспроизвести данные" + Environment.NewLine + "Установите следующий кодек: " + kodec;
  56.                 //    isDis = false;
  57.                 //    break;
  58.                 default:
  59.                     textBox2.Text = ("Unknown State: " + e.newState.ToString());
  60.                     break;
  61.             }
  62.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы