Мы пытаемся обслуживать файлы MP3 с web1.cowbird.com. В большинстве случаев все работает нормально. Однако иногда есть файл, который браузер не может воспроизвести, и я понятия не имею, почему. Вот пример: http://web1.cowbird.com/items/stories/2012/11/04/05/18/47222/1_5095f977b4f532.99916135-original.mp3
Если вы загрузите или скрутите файл, он будет работать нормально. Но попытка загрузить его в Chrome или Firefox приводит к странному набору ошибок, когда по какой-то причине браузер не загружает весь файл и, следовательно, не может его воспроизвести. По какой-то причине браузер, похоже, получает результат 200 с первым запросом, а затем выполняет другой запрос с заголовком Range: bytes = 0-. Заголовки ответа выглядят правильно, но передается недостаточно байтов.
Я искал повсюду, пытаясь понять, связано ли это с запросами диапазона байтов, и безуспешно пробовал различные настройки apache. Рады предоставить любую дополнительную информацию. Спасибо!
Хорошо, похоже, это проблема с файлом MP3, несмотря на то, что его можно загрузить и воспроизвести на моем рабочем столе Linux. Команда "файл" показывает это:
рабочий mp3: аудиофайл с ID3 версии 2.3.0, содержит: аудиофайл с ID3 версии 2.3.0, содержит: MPEG ADTS, слой III, v1, 128 кбит / с, 44,1 кГц, стерео
нерабочий mp3: аудиофайл с ID3 версии 2.3.0, содержащий:
Это привело меня на этот сайт: https://code.google.com/p/chromium/issues/detail?id=268892
Это говорит о проблеме с заголовком mp3, хотя это не то же самое, что ffmpeg не сообщает о той же ошибке. Однако запуск lame для файла устраняет проблему, и теперь он работает. Я использовал эту команду: lame -b 192 -h
Теперь этот HTTP-запрос работает.
РЕДАКТИРОВАТЬ: К сожалению, это не решило проблему полностью, так как lame не работает с некоторыми файлами, такими как этот: http://web1.cowbird.com/items/stories/2012/03/22/10/56/15271/9b5ce75faa96ae2347a7d621ee2a1a2402e1257c9a488f6bd31df0c6d502533d-original.mp3