Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Форматы файлов и данных > Формат 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
Цитата(mazayka @  18.10.2006,  09:52 Найти цитируемый пост)
самые продвинутые звуковые кодеки? 

Смотря для чего.
Для речи ?
Для беспотерьного сжатия ?
Для максимального сжатия ?


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)