2014-06-10 3 views
0

Gstreamer 0.10을 사용하여 RTSP 클라이언트에 제공하려는 HW 인코더에서 들어오는 RTP 스트림이 있습니다. "test-video.c"를 시작점으로 사용하여 videotestsrc를 서비스 할 수 있었지만 들어오는 RTP 스트림을 제공하는 행운이 없었습니다. 나는 다음과 같이 파이프 라인을 수정했다.GStreamer를 사용하여 RTSP를 통한 RTP 스트림 제공

gst_rtsp_media_factory_set_launch (factory, "(gstrtpbin name=rtpbin latency=200 udpsrc caps=\"application/x-rtp, media=video, clock-rate=90000, encoding-name=MP2T-ES, payload=33\" port=5000 ! rtpbin.recv_rtp_sink_0 rtpbin. ! queue name=pay0 " 

하지만 작동하지 않습니다. 나는 그것이 정상적으로 수행되지 않는 대문자와 관련이 있다고 생각합니다. 재생을 시도 할 때

내가 서버

0:00:02.582382334 4325 0x12458 WARN    bin gstbin.c:2399:gst_bin_do_latency_func:<media-pipeline> failed to query latency 
0:00:02.786215669 4325 0x2bf03a40 WARN    basesink gstbasesink.c:3638:gst_base_sink_chain_unlocked:<multiudpsink0> warning: Internal data flow problem. 
0:00:02.786330002 4325 0x2bf03a40 WARN    basesink gstbasesink.c:3638:gst_base_sink_chain_unlocked:<multiudpsink0> warning: Received buffer without a new-segment. Assuming timestamps start from 0. 
0:00:02.786540668 4325 0x13cde0 WARN    rtspmedia rtsp-media.c:1511:default_handle_message: 0x1200b0: got warning Internal data flow problem. (gstbasesink.c(3638): gst_base_sink_chain_unlocked(): /GstPipeline:media-pipeline/GstMultiUDPSink:multiudpsink0: Received buffer without a new-segment. Assuming timestamps start from 0.) 
0:00:02.787497335 4325 0x189238 WARN      bin gstbin.c:2395:gst_bin_do_latency_func:<media-pipeline> did not really configure latency of 0:00:00.200000000 
0:00:02.816800002 4325 0x12458 WARN    rtspclient rtsp-client.c:782:handle_play_request: RTP-Info cannot be determined for stream 0 
0:00:02.818120668 4325 0x12458 WARN      bin gstbin.c:2395:gst_bin_do_latency_func:<media-pipeline> did not really configure latency of 0:00:00.200000000 

은 "내부 흐름 문제"에 다음과 같은 메시지를 얻을 유망 표시되지 않습니다. 들어오는 스트림은 MPEG2 전송 스트림 내부의 H.264 비디오입니다. 이 문제를 해결하는 방법에 대한 아이디어가 있습니까?

감사합니다,

/오토

답변

0

당신은 MPEG2TS에서 비디오 스트림을 디 먹스하기 (gstreamer를 나쁜 플러그인 단위) mpegtsdemux 요소를해야 할 수도 있습니다.

관련 문제