| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Форматы файлов и данных > Формат mp3 файла |
| Автор: KvSanya 20.9.2006, 21:25 |
| Я хочу написать свою программу для чтения mp3 файлов. А какой формат имеет mp3 файл? |
| Автор: Alexeis 21.9.2006, 01:11 |
| KvSanya, для этого совсем не обязательно знать его формат. Ну ладно, если вкратце, 1) ID3v2-4 - заголовок описывающий композицию, сразу за ним идут фреймы каждый из которых начинается с 4-х байтового заголовка в котором закодирован битрейт, частота дискретизации, количество каналов, бит указывающий выравнивания фрейма, тип mp3 (layer I, layerII) и еще наличие копирайта. После него идут непосредственно аудио данные размер которых вычисляется как 144 * битрейт : частоту дискретизации + 1 байт (если бит выравнивания установлен в 1). Т.о. каждый фрейм является самодостаточным фрагментом аудио данных. Завершается это все заголовкаом ID2v1. Наличие любого из заголовков (ID3v1-4) не является обязательным, это значит что файл мп3 может начинатся прямо с первого фрейма. Кодирование мп3 задача неоднозначная поскольку учитывает психоакустическую модель восприятия звука человеком, включает в себя косинусоидальное преобразование + для совмещеного стерео объединяются аудио обоих каналов (для стерео) данные на низких и высоких частотах, поскольку они не передают стреоэффекта. Существет много кодеков (порядка 20) каждый из которых отличается по качеству записи, степени сжатия, скороти воспроизвеления и пр. Для записи и воспроизвеления совсем не обязательно лезть в эти дебри, достаточно воспользоватся уже готовыми библиотеками, где уже почти все реализовано. Формат является комерческим, а посему подробная документация по нему стоит порядка 150$. В заключение хочу отметить, что он сильно устарел и уступает по всем параметрам его продолжателям mp3 pro, mpeg2 audio, mpeg4 audio, последний позволет сжимать аудио в 2 раза сильнее с тем же качеством. Уступает он и кодекам из другой группы, таким как OGG. |
| Автор: mazayka 18.10.2006, 09:52 |
| какие на данный момент самые продвинутые звуковые кодеки? |
| Автор: Alexeis 18.10.2006, 10:13 |
Смотря для чего. Для речи ? Для беспотерьного сжатия ? Для максимального сжатия ? |