Как я могу программно определить, является ли файлом MP3 CBR или VBR? (предпочтительно использующий c#)

Если вы хотите выйти из нескольких циклов одновременно, вы можете сделать что-то вроде этого

bool stop = false;
for (int i = 0; (i < 1000) && !stop; i++)
{
    for (int j = 0; (j < 1000) && !stop; j++)
    {
        if (condition)
            stop = true;
    }
}

Я предлагаю вам отредактировать эту часть вашего кода

else { // We have fulfilled the word array/grid, but we don`t have enough words, so we restart (go through the loop again)                                              break;                                  

}

Чтобы

If("Conditions when you want to break"){
    break;
}
6
задан Tom Kidd 13 October 2008 в 00:44
поделиться

2 ответа

Файлы MP3 являются по существу сборкой так называемых кадров. Каждый кадр имеет маленький заголовок, который хранит информацию о кадре. Заголовок также хранит, какая скорость передачи использовалась для кадра. В файлах CBR все кадры используют ту же скорость передачи, и поэтому каждый заголовок имеет ту же информацию о скорости передачи.

Чтобы обнаружить, если файл использует VBR, необходимо пройти каждый кадр файла, посмотреть на заголовок и проверку, если поле скорости передачи изменяется. Если это делает, MP3 VBR.

Полное описание формата MP3 здесь: http://www.mpgedit.org/mpgedit/mpeg_format/mpeghdr.htm

7
ответ дан 10 December 2019 в 02:55
поделиться

Проверьте этот Класс MP3Header, он имеет метод, который говорит Вам, если mp3 файлом является VBR и вся mp3 информация заголовка...

...
boolVBitRate = LoadVBRHeader(bytVBitRate);
...
2
ответ дан 10 December 2019 в 02:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: