Потоковое видео в Windows Media Player через http - PullRequest
3 голосов
/ 08 октября 2010

Попытка потоковой передачи видео на Windows Media Player из сервлета (прогрессивный стиль загрузки).Потоковая передача работает, но у меня есть странное поведение, которое, я хотел бы исключить, не вызвано проблемой в моей реализации.

При использовании WMP для открытия URL-адреса из сервлета WMP выполнит всегоиз 4 запросов http-get для одного и того же ресурса, но каждый раз с немного разными заголовками.Соединение для первых 3 запросов, кажется, закрывается, как только запрос (включая заголовки) был отправлен.Четвертый запрос остается подключенным, и я действительно могу доставить заголовки ответа и содержимое файла.

Попытался использовать wireshark для просмотра первых трех запросов.Идентичные начала ответов отправляются для всех 4 запросов, и первые 3 запроса сумели отправить заголовки ответа и некоторую часть содержимого файла перед закрытием.(Не знаю, является ли это уместным, но необходимо включить «Поддержка захвата пакетов с аппаратного обеспечения IP TSO» для wireshark, чтобы правильно проанализировать поток, в противном случае первый пакет, содержащий http-ответ, рассматривается как некорректный.)

Ниже приведены 4 заголовка запроса:

GET /basic/test.mpg HTTP/1.1
Accept: */*
User-Agent: Windows-Media-Player/12.0.7600.16415
Accept-Encoding: gzip, deflate
Host: 192.168.1.34
Connection: Keep-Alive

GET /basic/test.mpg HTTP/1.1
Cache-Control: no-cache
Connection: Keep-Alive
Pragma: getIfoFileURI.dlna.org
Accept: */*
User-Agent: NSPlayer/12.00.7600.16385 WMFSDK/12.00.7600.16385
GetContentFeatures.DLNA.ORG: 1
Host: 192.168.1.34

GET /basic/test.mpg HTTP/1.1
Accept: */*
User-Agent: NSPlayer/12.00.7600.16385 WMFSDK/12.00.7600.16385
Icy-Metadata: 1
Accept-Encoding: gzip, deflate
Host: 192.168.1.34
Connection: Keep-Alive

GET /basic/test.mpg HTTP/1.1
Cache-Control: no-cache
Connection: Keep-Alive
Pragma: getIfoFileURI.dlna.org
Accept: */*
User-Agent: NSPlayer/12.00.7600.16385 WMFSDK/12.00.7600.16385
GetContentFeatures.DLNA.ORG: 1
Host: 192.168.1.34

Заголовки ответа:

HTTP/1.1 200 OK
Content-Type: video/mpeg
Content-Length: 130549760
ETag: TEST1286565215430
ContentFeatures.DLNA.ORG: DLNA.ORG_PN=MPEG_PS_PAL;DLNA.ORG_OP=00
Server: Jetty(6.1.x)

1 Ответ

0 голосов
/ 05 декабря 2011

Соединение для первых 3 запросов, кажется, закрывается, как только запрос (включая заголовки) был отправлен.

"Кажется, что" ?Я бы выяснил наверняка в одну сторону или прежде чем продолжить.Если он завершает соединение после того, как заголовки ответа установлены, возможно, игрок ожидал присутствия очень специфического заголовка.Примеры могут включать Range: или Cache-Control:.

...