2012-09-04 1 views
1

Aforge를 사용하여 IP 카메라에서 라이브 스트림을 가져 오려고합니다. 내 문제는, 내 연결이 어떤 이유로 닫히고 유지됩니다. 테스트 목적으로 카메라를 내 컴퓨터에 직접 연결하고이 LAN을 통해 카메라에 연결합니다.IP 카메라에서 Aforge 라이브 스트림 HttpWebRequest

오류 : 여기

The underlying connection was closed: The connection was closed unexpectedly.

내가 사용하고 코드입니다 :

stream.NewFrame += new NewFrameEventHandler(video_NewFrame); 
stream.VideoSourceError += new VideoSourceErrorEventHandler(stream_VideoSourceError); 
stream.Login = "login"; 
stream.Password = "pass"; 
stream.RequestTimeout = 10000; 
stream.Source = "http://192.168.0.33/nphMotionJpeg?Resolution=320x240&Quality=Standard"; 
stream.Start(); 

내가 어떤 사람이의 app.config에서 설정을 넣어 추천 한 톱을 가지고, 내가 행한 그뿐 아니라 :

<system.net> 
    <settings> 
    <httpWebRequest useUnsafeHeaderParsing="true"/> 
    </settings> 
</system.net> 

app.config를 편집하지 않으면 다른 오류가 발생합니다. (프로토콜 위반)

누구든지 이러한 문제를 해결했거나 작동시키는 방법을 알고 있습니까?

참고 : 또한 Aforge like this없이 데이터를 가져 오려고했지만 동일한 오류가 발생했습니다.

+0

VLC에서 열어보고 제대로 작동하는지 확인하십시오. VLC는 MJPEG 연결을 테스트 할 때 유용합니다. 내 코드가 올바르게 작동하는지 확실하지 않을 때입니다. – Peter

+0

은 http://stackoverflow.com/questions/10823848/mjpegstream-display-stream-aforge-video-dll과 관련이있을 수 있습니다. (확실한 다른 질문에 대한 세부 정보는 충분하지 않습니다.) – Peter

+0

@Peter yes, related related. 정보가 없습니다. – CSharpDev

답변

1

나는 aforge (https://code.google.com/p/aforge/source/browse/trunk/Sources/Video/MJPEGStream.cs)에서 옵션이라고 생각하지 않지만 카메라가 HTTP v1.0을 기대합니다. 당신은 또한

//setting http v1.0 in c# 
HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address); 
request.ProtocolVersion = HttpVersion.Version10; 

을 시도 게스트 액세스를 가능하게하며 사용자 코드에서 사용자 이름/암호를 제거하는 시도 할 수 당신이 코드에 액세스 할 경우 56 페이지

(1) Start reception Establish a connection (open the socket), and send the following command string to HTTP port. "GET http:// xxx.xxx.xxx.xxx:yy/nphMotionJpeg?Resolution=320x240&Quality=Standard HTTP/1.0\r\n" xxx.xxx.xxx.xxx: IP address or domain name yy: HTTP port no. (Not required if the port number is set to 80)

에, 수동, http://csj.psn-web.net/netwkcam_net/download/us/document/NEW_Camera_CGI_Interface_v4.30.pdf를 참조하십시오 그게 효과가 있는지보십시오.

+0

여전히 같은 문제를 시도했다. 그래도 좋은 정보. – CSharpDev

2

다음과 같이 작동하는지보십시오.

stream.Login = "login"; 
stream.Password = "pass"; 
stream.ForceBasicAuthentication = true; 
stream.RequestTimeout = 10000; 
stream.Source = "http://192.168.0.33/nphMotionJpeg?Resolution=320x240&Quality=Standard"; 
stream.Start();