試圖將視頻從servlet流式傳輸到Windows媒體播放器(漸進式下載樣式)。流媒體工作,但我有一些奇怪的行爲,我想排除不是由我的實施中的問題引起的。通過HTTP將視頻流式傳輸到Windows Media Player(
當使用WMP打開從servlet的URL,WMP將進行總共4 HTTP-GET請求對同一資源,但略有不同的頁眉各一次。前三個請求的連接似乎在請求(包括頭文件)發送後立即關閉。第四個請求保持連接,我可以實際提供響應標題和文件內容。
在使用Wireshark來觀看前三請求嘗試。所有4個請求都會發送相同的響應啓動,並且前3個請求會在關閉之前設法發送響應標頭和文件內容的某些部分。 (不知道是不是它的相關性,但必須啓用「啓用從TSO-IP硬件支持數據包捕獲」爲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)