2012-08-04 8 views
2

C#에서는 rtsp 비디오 스트림이 "System.net.httpwebrequest"로 사용 될 가능성이 있습니다. plz가 그렇지 않으면 다른 대안을 말해주십시오. 는 //rtsp 스트림을 http 스트림으로 변환

 string basepath = @"rtsp://ip.worldonetv.com:1935/live/ "; 

     // the path to write the file to 

     //   string sFilePathToWriteFileTo = "d:\\Download"; 



     // first, we need to get the exact size (in bytes) of the file we are downloading 

     Uri url = new Uri(basepath); 

     System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url); 

     System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse(); 

     response.Close(); 
+1

로그 시간 이었지만 동일한 코드를 완전히 동일하게 발행했습니다. IP 카메라 및 IP 카메라 및 IP 카메라에 관한 새로운 내용이 너무 쉽고 분명하지 않아서 어떻게 이러한 문제를 해결할 수 있을지 궁금합니다. 나는 아직도 rtsp에 대해 조사하고있다. ( – CanESER

답변

1

내 라이브러리로 RtspRequests를 공식화 할 수 있습니다.

그러면 RtspRequest를 base64로 인코딩하여이를 몸체로 HttpRequest에 넣을 수 있습니다.

본문에서 base64로 인코딩 된 rtsp 요청의 길이와 동일한 content-length 헤더를 추가하십시오.

rtsp/x-tunneled 헤더를 HttpRequest에 추가 한 다음 전송합니다.

Base64로 인코딩 된 RtspResponse가 포함 된 본문으로 HttpResponse를 다시 받아야합니다.

Base64는 HttpResponse의 본문을 디코딩 한 다음 내 라이브러리의 RtspResponse 클래스를 사용하여 구문 분석합니다.

도서관은 @http://net7mma.codeplex.com/

입니다 그리고 당신은 아무것도 필요하면 알려 http://www.codeproject.com/Articles/507218/Managed-Media-Aggregation-using-Rtsp-and-Rtp

@ 2 CodeProject의 기사가있다!

0

에서 파일을 다운로드 할 URL이 작업을 수행 할 표준 C# 라이브러리가 없습니다. 다양한 .NET DirectShow 래퍼로도 할 수 없습니다. 방금 동료가이 문제에 대해 한 달을 보내고 GStreamer에 자신의 C# 래퍼를 작성했습니다. 비디오를 표시하려면 가장 쉬운 방법은 VLC ActiveX 컨트롤을 포함시키는 것입니다.

관련 문제