При воспроизведении GZipped MIDI-контента из Apache возникают проблемы с быстрым воспроизведением в браузере. Обходной путь? - PullRequest
1 голос
/ 12 марта 2011

Мне нужно обслуживать большие файлы MIDI через Apache, которые предварительно сжаты до формата .mid.gz, и мне наконец удалось добиться того, чтобы все типы контента и согласования контента работали до такой степени, что у меня есть сжатый MIDI, поставляемый справильный тип контента и кодировка.Последнее препятствие, с которым я сталкиваюсь, заключается в том, что когда я загружаю файл в браузере и пытаюсь воспроизвести его в QuickTime, Quicktime показывает мне значок со знаком вопроса, указывающий, что он не может воспроизвести файл.

Iпогуглил и нашел:

"Медиа-файлы отправляются с установленным в заголовке" Transfer encoding: chunked "и без заголовка" Длина контента ". Это потому, что Apache не может понять, насколько великфайлы после того, как они были сжаты, поэтому он отправляет их по частям. Различные проигрыватели не могут обрабатывать данные по чанкам, поэтому они воспроизводят первый или несколько чанков, предполагая, что это весь файл. "

http://www.beetlebrow.co.uk/what-do-you-need/help-and-documentation/unix-tricks-and-information/apache-gzip-compression-and-binary-files

1) Я не использовал кодировку передачи в моем заголовке.И у меня есть длина контента.Так почему же это все еще не работает?

Вот мой заголовок

Accept-Ranges:bytes
Connection:Keep-Alive
Content-Encoding:gzip
Content-Length:646
Content-Location:compressed.mid.gz
Content-Type:audio/midi
Date:Sat, 12 Mar 2011 01:36:39 GMT
ETag:"23b8d-286-49e3e12c899e7;49e3f0864a38f"
Keep-Alive:timeout=15, max=100
Last-Modified:Sat, 12 Mar 2011 00:22:27 GMT
Server:Apache/2.2.16 (Ubuntu)
TCN:choice
Vary:negotiate

2) Если указанная выше точка все еще сохраняется даже с правыми заголовками, есть ли обходной путь для этой проблемы?

В качестве ссылки вот ссылка на мой сжатый MIDI-файл: http://174.129.57.199/compressed.mid

...