application/octet-stream
, вероятно, является mime_content_type
резервным типом, когда он не может распознать файл.
В этом случае MP3 - это не настоящий файл MP3, или, что более вероятно, файл представляет собой настоящий файл MP3, но не содержит «магических байтов», которые функция PHP использует для распознавания формата - возможно, потому, что это другой подформат или имеет переменный битрейт или что-то еще.
Вы можете попробовать, дает ли getid3 лучшие результаты. Я никогда не работал с ним, но похоже, что это довольно полезная библиотека для получения большого количества информации из мультимедийных файлов.
Если у вас есть доступ к конфигурации PHP, вы также можете изменить mime.magic
файл , который использует PHP, хотя я понятия не имею, существует ли лучший файл, способный обнаружить ваши MP3. (Файл mime.magic
- это файл, содержащий все последовательности байтов, которые mime_content_type
использует для распознавания определенных типов файлов.)