有沒有人試圖將Gstreamer SDK Tutorials中的 http://docs.gstreamer.com/display/GstSDK/Tutorials 移植到gstreamer 1.0?將Gstreamer SDK教程(gstreamer 0.1)移植到gstreamer 1.0
我試圖端口基本教程-8.C從GstSDK到gstreamer的1.0。最終結果不起作用,並在運行時退出並出現錯誤。
這是我到目前爲止所做的。我的幫助主要來源是以下頁面: http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/chapter-porting-1.0.html#section-porting-objects-1.0
替換音頻/ X-RAW-INT與音頻/ X-RAW
替換data.app_sink, 「新緩衝區」 數據.app_sink, 「新樣本」
替換
tee_src_pad_template = gst_element_class_get_pad_template (GST_ELEMENT_GET_CLASS (data.tee), "src%d");
與
tee_src_pad_template = gst_element_class_get_pad_template(GST_ELEMENT_GET_CLASS(data.tee), "src_%u");
與
GstMapInfo stGstMapInfo1; gst_buffer_map(buffer, &stGstMapInfo1, (GstMapFlags)(GST_MAP_READ | GST_MAP_WRITE)); raw = (gint16 *)stGstMapInfo1.data;
替換
raw = (gint16 *)GST_BUFFER_DATA (buffer);
。 。 。
/* Free the buffer now that we are done with it */
gst_buffer_unmap(buffer, &stGstMapInfo1);
- 5替換成「ffmpegcolorspace」與「videoconvert」
上述變化我可以建立並運行該程序後,但過了一會兒提供了以下錯誤: 錯誤從元素收到audio_source:內部數據流錯誤。 調試信息:gstbasesrc.c(2865):gst_base_src_loop():/ GstPipeline:測試流水線/ GstAppSrc:audio_source: 流任務暫停,理由不協商(-4)
我想我必須工作更在本教程的new_buffer和push_data函數上。
非常感謝您的幫助。
TX,我會看看那些部分,看看我是否能夠使它發揮作用。原始代碼可在 http://docs.gstreamer.com/display/GstSDK/Basic+tutorial+8%3A+Short-cutting+the+pipeline 我剛剛更改了我的問題中描述的5個部分。 – Yashil
現在我發現以下幫助鏈接非常有用,並逐一移植其他功能: http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/chapter-dataaccess.html http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-appsink.html#gst-app-sink-pull-sample – Yashil