Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Качество и длительнось mp3 файла

14K
22 марта 2007 года
Snk
54 / / 22.03.2007
Возможно ли определить качество звука или продолжительность mp3 файла, средствами PHP?
8
22 марта 2007 года
mfender
3.5K / / 15.06.2005
Сдаётся мне, что это невозможно. Нужно иметь как минимум три параметра для вычисления: продолжительность звучания, размер файла и информацию о каналах. Если с размером файла всё понятно, то всё остальное вычисляют плейеры, чего в php не предусмотрено. Хотя, слыхал я, что есть какая-то библиотека в PECL для работы с mp3. Она на C писана, так может она знает об mp3 больше, чем мы думаем?..
14K
23 марта 2007 года
Snk
54 / / 22.03.2007
Насколько я знаю она работает только с ID3-тегами... Нужно вычислить продолжительность либо качество... А как вин вычисляет? Когда стрелку наводишь на файл...
244
23 марта 2007 года
UAS
2.0K / / 19.07.2006
Вот когда то нашел класс на пхп для работы с муз.файлами. Вот.. Далее ройся сам в них. Если найдешь то что надо - сообщи!!!:D
http://webfile.ru/1356085

ЗЫ: пробежался по исходнику. Он умеет определять и битрейт, и длину, и частоту дискретизации, и id3 и т.д. и т.п.

Кстати походу умеет со всеми типа муз.файлов пахать
1.9K
23 марта 2007 года
InterWen
331 / / 16.09.2006
UAS, если это то что надо - премного благодарен (+1) :)
Сам запарился искать спецификацию mp3 (так хоть по коду частично разгребусь может), на том же КодНете не вполне корректна, да и устаревшая ИМХО.

З.Ы. определить вроде как можно, если знать формат файла и.т.д., да хоть в PCM декодируй, если знаешь толк в извращениях.
240
23 марта 2007 года
aks
2.5K / / 14.07.2006
А что автор подразумевает под словом качество и как его измерить? =))
Или имеется ввиду битрейт? частота? )
8
23 марта 2007 года
mfender
3.5K / / 15.06.2005
Цитата: UAS
Вот когда то нашел класс на пхп для работы с муз.файлами. Вот.. Далее ройся сам в них. Если найдешь то что надо - сообщи!!!:D
http://webfile.ru/1356085

ЗЫ: пробежался по исходнику. Он умеет определять и битрейт, и длину, и частоту дискретизации, и id3 и т.д. и т.п.

Кстати походу умеет со всеми типа муз.файлов пахать


Да, похоже это оно. Респект!

244
23 марта 2007 года
UAS
2.0K / / 19.07.2006
вот я ща лазаю по коду и офигеваю... человеку делать было нечего что ли столько кода писать??)))

умеет обрабатывать кучу популярных муз.файлов, умеет рабоать с метаданными картинок, с видео. Вычисляет битрейты, частоту дискретизации, выдирает id3 теги, так он ещё умеет и записывать эти id3-теги!!! Причем по ид3 поддрживается любой версии. Определят необходимый кодеки... ОГО!!!

Ладно. Почитайте в корне файл structure.txt - там все расписано! ^_^
8
23 марта 2007 года
mfender
3.5K / / 15.06.2005
Ну, ID3 читать и писать и я могу... ))))
А вот всё остальное... Сильная работа проделана ))))
13
23 марта 2007 года
RussianSpy
3.0K / / 04.07.2006
Цитата: UAS
вот я ща лазаю по коду и офигеваю... человеку делать было нечего что ли столько кода писать??)))



Спасибо - полезная штука

14K
23 марта 2007 года
Snk
54 / / 22.03.2007
UAS, большое спасибо! Пол часа потратил на то чтоб понять как вычисляется битрейт... Мозг какой то писал...
244
23 марта 2007 года
UAS
2.0K / / 19.07.2006
Ты напиши как. Вдруг мне срочно понадобиться - и чтоб я зря не сидел, время не тратил
14K
24 марта 2007 года
Snk
54 / / 22.03.2007
 
Код:
$thisfile_mpeg_audio['layer'] = $MPEGaudioLayerLookup[$thisfile_mpeg_audio['raw']['layer']];
if ($thisfile_mpeg_audio['layer'] == '1') {
   $ThisFileInfo['audio']['bitrate'] = ($framelengthfloat / 4) * $thisfile_mpeg_audio['sample_rate'] * (2 / $ThisFileInfo['audio']['channels']) / 12;
  } else {
$ThisFileInfo['audio']['bitrate'] = $framelengthfloat * $thisfile_mpeg_audio['sample_rate'] * (2 / $ThisFileInfo['audio']['channels']) / 144;
}

достаточно?
29K
28 апреля 2008 года
_AXE_
1 / / 08.05.2007
Цитата: Snk
 
Код:
$thisfile_mpeg_audio['layer'] = $MPEGaudioLayerLookup[$thisfile_mpeg_audio['raw']['layer']];
if ($thisfile_mpeg_audio['layer'] == '1') {
   $ThisFileInfo['audio']['bitrate'] = ($framelengthfloat / 4) * $thisfile_mpeg_audio['sample_rate'] * (2 / $ThisFileInfo['audio']['channels']) / 12;
  } else {
$ThisFileInfo['audio']['bitrate'] = $framelengthfloat * $thisfile_mpeg_audio['sample_rate'] * (2 / $ThisFileInfo['audio']['channels']) / 144;
}

достаточно?


Спустя год мне понадобился данный класс.

И естественно ссылочка битая, кто еще в теме, перезалейте, пожалуйста!!!

271
29 апреля 2008 года
MrXaK
721 / / 31.12.2002
вот есть что-то) правда я не знаю оно это было или нет
http://www.sourcerally.net/Scripts/20-PHP-MP3-Class
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог