首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >范围错误Java NanoHTTPD serving HTTP Live Streaming

范围错误Java NanoHTTPD serving HTTP Live Streaming
EN

Stack Overflow用户
提问于 2013-06-23 03:26:08
回答 1查看 1.3K关注 0票数 1

范围错误Java NanoHTTPD serving HTTP Live Streaming

我正在尝试使用基于Java的NanoHTTPD超文本传输协议服务器提供HLS视频流。我还使用VLC播放.m3u8文件。有趣的是,VLC可以播放我的视频,但是NanoHTTPD抛出了"java.net.SocketException“。我使用的是NanoHTTPD附带的SimpleWebServer.java

这是我的.m3u8文件

代码语言:javascript
复制
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXTINF:10,
sample_320k-1.ts
#EXTINF:10,
sample_320k-2.ts
#EXTINF:10,
sample_320k-3.ts
#EXTINF:10,
sample_320k-4.ts
#EXTINF:11,
sample_320k-5.ts
#EXTINF:11,
sample_320k-6.ts
#EXTINF:11,
sample_320k-7.ts
#EXTINF:11,
sample_320k-8.ts
#EXTINF:10,
sample_320k-9.ts
#EXTINF:11,
sample_320k-10.ts
#EXTINF:11,
sample_320k-11.ts
#EXTINF:10,
sample_320k-12.ts
#EXTINF:10,
sample_320k-13.ts
#EXTINF:10,
sample_320k-14.ts
#EXTINF:10,
sample_320k-15.ts
#EXTINF:11,
sample_320k-16.ts
#EXTINF:9,
sample_320k-17.ts
#EXT-X-ENDLIST

这是我的控制台从Eclipse服务器启动,按回车键停止。

代码语言:javascript
复制
GET '/' 
  HDR: 'connection' = 'keep-alive'
  HDR: 'accept-language' = 'en-US,en;q=0.8'
  HDR: 'host' = '127.0.0.1:8080'
  HDR: 'accept' = 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
  HDR: 'user-agent' = 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31'
  HDR: 'accept-encoding' = 'gzip,deflate,sdch'
  HDR: 'accept-charset' = 'ISO-8859-1,utf-8;q=0.7,*;q=0.3'
GET '/favicon.ico' 
  HDR: 'connection' = 'keep-alive'
  HDR: 'accept-language' = 'en-US,en;q=0.8'
  HDR: 'host' = '127.0.0.1:8080'
  HDR: 'accept' = '*/*'
  HDR: 'user-agent' = 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31'
  HDR: 'accept-encoding' = 'gzip,deflate,sdch'
  HDR: 'accept-charset' = 'ISO-8859-1,utf-8;q=0.7,*;q=0.3'
GET '/Http_Live_Streaming/vodhls/stream-local.m3u8' 
  HDR: 'connection' = 'close'
  HDR: 'host' = 'localhost:8080'
  HDR: 'range' = 'bytes=0-'
  HDR: 'icy-metadata' = '1'
  HDR: 'user-agent' = 'VLC/2.0.7 LibVLC/2.0.7'
GET '/Http_Live_Streaming/vodhls/sample_320k-1.ts' 
  HDR: 'connection' = 'close'
  HDR: 'host' = 'localhost:8080'
  HDR: 'range' = 'bytes=0-'
  HDR: 'icy-metadata' = '1'
  HDR: 'user-agent' = 'VLC/2.0.7 LibVLC/2.0.7'
java.net.SocketException
    at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:662)
    at fi.iki.elonen.NanoHTTPD$1$1.run(NanoHTTPD.java:124)
    at java.lang.Thread.run(Thread.java:722)
GET '/Http_Live_Streaming/vodhls/sample_320k-2.ts' 
  HDR: 'connection' = 'close'
  HDR: 'host' = 'localhost:8080'
  HDR: 'range' = 'bytes=0-'
  HDR: 'icy-metadata' = '1'
  HDR: 'user-agent' = 'VLC/2.0.7 LibVLC/2.0.7'
java.net.SocketException
    at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:662)
    at fi.iki.elonen.NanoHTTPD$1$1.run(NanoHTTPD.java:124)
    at java.lang.Thread.run(Thread.java:722)
GET '/Http_Live_Streaming/vodhls/sample_320k-3.ts' 
  HDR: 'connection' = 'close'
  HDR: 'host' = 'localhost:8080'
  HDR: 'range' = 'bytes=0-'
  HDR: 'icy-metadata' = '1'
  HDR: 'user-agent' = 'VLC/2.0.7 LibVLC/2.0.7'
java.net.SocketException
    at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:662)
    at fi.iki.elonen.NanoHTTPD$1$1.run(NanoHTTPD.java:124)
    at java.lang.Thread.run(Thread.java:722)
GET '/Http_Live_Streaming/vodhls/sample_320k-4.ts' 
  HDR: 'connection' = 'close'
  HDR: 'host' = 'localhost:8080'
  HDR: 'range' = 'bytes=0-'
  HDR: 'icy-metadata' = '1'
  HDR: 'user-agent' = 'VLC/2.0.7 LibVLC/2.0.7'
java.net.SocketException
    at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:662)
    at fi.iki.elonen.NanoHTTPD$1$1.run(NanoHTTPD.java:124)
    at java.lang.Thread.run(Thread.java:722)
java.net.SocketException
    at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:662)
    at fi.iki.elonen.NanoHTTPD$1$1.run(NanoHTTPD.java:124)
    at java.lang.Thread.run(Thread.java:722)
java.net.SocketException
    at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:662)
    at fi.iki.elonen.NanoHTTPD$1$1.run(NanoHTTPD.java:124)
    at java.lang.Thread.run(Thread.java:722)
java.net.SocketException
    at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:662)
    at fi.iki.elonen.NanoHTTPD$1$1.run(NanoHTTPD.java:124)
    at java.lang.Thread.run(Thread.java:722)

Server stopped.
EN

回答 1

Stack Overflow用户

发布于 2013-06-29 04:12:33

您使用的是哪个版本的NanoHttpd?我可能是,最近对项目的提交改进了您的工作,并且支持HTTP1.1协议(即连接处理的"keep-alive“部分)。

我很好奇您是否会在最新的NanoHttpd (2.0.3)版本中遇到问题。

此外,我还将研究一下NanoHttpd处理“范围”请求的方式--尤其是像堆栈跟踪这样的开放式范围。

谢谢!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17254505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档