2015-02-02 7 views
0

Я использую master git kurento, чтобы сделать WebRTC для RTP-моста.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, используя VLC HTTP для RTP-стримера). однако ни один метод не дает мне видео, воспроизводимого на сафари и IE, то есть в кодировке H264. Обращение к разработчикам средств массовой информации и команде kurento за помощью.

+0

Здравствуйте! Вы решили проблему с потоковой передачей WebRTC для браузеров без webrtc? –

ответ

1

Safari и IE не поддерживают RTP/H.264. Из вашего кода я понимаю, что вы пытаетесь создать webRTC для привязки моста. В этом случае HttpGetEndpoint будет предоставлять медиа через HTTP-псевдопоток. Тем не менее, Kurento предоставляет только этот тип потокового HTTP-псевдопотока в формате WebM. Насколько я знаю, ни Safari, ни IE не поддерживают WebM, следовательно, то, что вы хотите сделать, не будет работать независимо от ограничений, которые вы нажимаете на HttpGetEndpoint. Вы сможете увидеть его только в Chrome, Fireforx или других браузерах с поддержкой WebM.

Единственным решением для вас может быть HttpGetEndpoint, обеспечивающий медиа в формате MP4 (или любой другой формат, поддерживаемый IE и Safari), но создание прямого потока в этом формате очень сложно, и мы (команда Kurento) не было время для реализации этого, и эта функция не находится в нашей краткосрочной дорожной карте.

Однако у нас есть много пользователей, интегрирующих WebRTC с IE и Safari с использованием RTMP. В этом случае вам необходимо интегрировать Kurento с медиа-сервером, поддерживающим RTMP (это можно сделать по-разному), а затем позволить медиа-серверу RTMP обслуживать носители в браузерах.

+0

Привет, lulop, спасибо за ответ и установили, что RTMP-сервер определенно требуется, какой id не в kurento пока. Я использовал медиа-сервер Wowza (http://stackoverflow.com/questions/27203318/how-to-do-rtmp-streaming-in-kurento-media-server). Однако URL-адрес RTP SDP и HTTP-потока, похоже, не дает мне рабочего выхода для прямого потока. Попросите вас привести меня к документу/примеру, в котором указывается, как интегрировать конечные точки Куренто в Wowza и получить поток, подходящий для браузеров без браузера. – Altanai

Смежные вопросы