0
다음 주요 요소에서 생성 했으므로 비디오를 재생하려고합니다. 그러나 gst_element_link_many의 결과는 항상 FALSE입니다. GStreamer 라이브러리의 요소를 함수 gst_element_link_many와 연결할 수 없습니다.
GstElement *pipeline, *videosrc, *videoenc, *muxer, *sink;
pipeline = gst_pipeline_new ("video-player");
videosrc = gst_element_factory_make ("filesrc", "videosrc");
muxer = gst_element_factory_make ("qtdemux", "mux");
videoenc = gst_element_factory_make ("avdec_mpeg4", "videoenc");
sink = gst_element_factory_make ("autovideosink", "sink");
g_object_set (G_OBJECT (videosrc), "location", argv[1], NULL);
gst_bin_add_many (GST_BIN (pipeline), videosrc, muxer, videoenc, sink, NULL);
/* link the elements together */
int resLinkMany = gst_element_link_many (videosrc, muxer, videoenc, sink, NULL);
printf(" resLinkMany = %d \n", resLinkMany); //I get 0
는 일반적으로 나는 비디오를 시작하려고하지만, 때문에 잘못된 연결 작동하지 않았다. 내 프로그램의 전체 코드는 다음과 같습니다.
https://pastebin.com/BER1BZDU
오류를 보려면 GST_DEBUG 환경 변수를 사용하십시오. 또한 gst-launch 명령을 사용해보십시오. – Velkan