2015-02-02 13 views
0

WebRTC를 RTP 브리지로 만들기 위해 kurento의 마스터 git을 사용하고 있습니다.Kurento Media WebRTC to RTP

MediaPipeline pipeline = kurento.createMediaPipeline(); 
WebRtcEndpoint webRtcEndpoint = new WebRtcEndpoint.Builder(pipeline).build(); 
HttpGetEndpoint httpEndpoint=new HttpGetEndpoint.Builder(pipeline).build(); 

org.kurento.client.Fraction fr= new org.kurento.client.Fraction(1, 30);   
VideoCaps vc= new VideoCaps(VideoCodec.H264,fr); 
httpEndpoint.setVideoFormat(vc); 

AudioCaps ac= new AudioCaps(AudioCodec.PCMU, 65536); 
httpEndpoint.setAudioFormat(ac); 

webRtcEndpoint.connect(httpEndpoint); 

그러나 출력 비디오 재생은 webm으로 인코딩됩니다. RTP ENdpoint를 사용하여 Gstream 필터를 사용하고 RTP 스트리밍에 VLC HTTP를 사용하여 다양한 다른 접근법을 시도했습니다. 그러나 사파리와 IE 즉 H264 인코딩으로 재생할 수있는 방법은 없습니다. 미디어 개발자와 개발자 팀에 도움을 요청합니다.

+0

안녕하세요! 비 webrtc 브라우저 용 WebRTC 스트리밍 문제를 해결 했습니까? –

답변

1

Safari와 IE는 RTP/H.264를 지원하지 않습니다. 코드에서 WebRTC를 태그로 연결하려고한다는 것을 알고 있습니다. 이 경우 HttpGetEndpoint는 HTTP 의사 스트림을 통해 미디어를 제공합니다. 그러나 Kurento는 WebM 형식의 라이브 HTTP 유사 스트림을 제공합니다. Safari 나 IE는 WebM을 지원하지 않기 때문에 HttpGetEndpoint에 강제 적용되는 대문자에 대해 독립적으로 작동하지 않습니다. Chrome, Fireforx 또는 WebM을 지원하는 다른 브라우저에서만 작동하는 것을 볼 수 있습니다.

당신을위한 유일한 해결책은 MP4 형식 (또는 IE와 Safari가 지원하는 다른 형식)으로 미디어를 제공하는 HttpGetEndpoint 일 수 있지만 그 형식으로 라이브 스트림을 만드는 것은 매우 까다롭기 때문에 우리 (Kurento 팀)는 이를 구현할 시간이 있었으며이 기능은 우리의 단기 로드맵에 포함되지 않았습니다.

그러나 RTMP를 사용하여 WebRTC와 IE 및 Safari를 통합하는 사용자가 많습니다. 이 경우 Kurento를 RTMP 가능 미디어 서버 (다른 방법으로 수행 할 수 있음)와 통합해야하고 나중에 RTMP 미디어 서버가 브라우저에 미디어를 제공하도록해야합니다.

+0

Hello lulop, 답장을 보내 주셔서 감사 드리며 현재 RTMP 서버를 설치하지 않으셨습니까? Wowza 미디어 서버 (http://stackoverflow.com/questions/27203318/how-to-do-rtmp-streaming-in-kurento-media-server)를 사용했습니다. 그러나 RTP SDP와 HTTP 스트림 URL은 라이브 스트림에 대한 작업 출력을 제공하지 않습니다. Kurento Endpoints를 Wowza에 통합하는 방법을 지시하고 non webrtc 브라우저에 적합한 스트림을 얻는 방법을 지시하는 문서/예제로 안내해 줄 것을 요청하십시오. – Altanai

관련 문제