摘要 在常見的媒體文件中,通常包含一些數據(例如:歌手,專輯,編碼類型等),用於描述媒體文件。通常稱這些數據為元數據(Metadata:data that provides information about other data)。我們可以通過這些元數據對媒體進行歸類,同時可以在播放的過程中 ...
摘要 在上一篇文章中,我們介紹了如何將多個element連接起來構造一個pipline,進行數據傳輸。那么GStreamer是通過何種方式保證element之間能正常的進行數據傳輸 今天就將介紹GStreamer是如何利用Pad來控制數據的傳輸。 Pad 我們知道,pad是element之間的數據的接口,一個src pad只能與一個sink pad相連。每個element可以通過pad過濾數據,接 ...
2019-07-01 12:54 2 2257 推薦指數:
摘要 在常見的媒體文件中,通常包含一些數據(例如:歌手,專輯,編碼類型等),用於描述媒體文件。通常稱這些數據為元數據(Metadata:data that provides information about other data)。我們可以通過這些元數據對媒體進行歸類,同時可以在播放的過程中 ...
摘要 在很多情況下,我們需要對GStreamer創建的Pipeline進行調試,來了解其運行機制以解決所遇到的問題。為此,GStreamer提供了相應的調試機制,方便我們快速定位問題。 查看調試日志 使用GST_DEBUG環境變量查看日志 GStreamer框架以及其插件提供 ...
和銷毀,例如,將媒體流與應用線程解耦,應用線程不會被GStreamer的處理阻塞。而且,GStreame ...
摘要 我們把直接從網絡播放一個媒體文件的方式稱為在線播放(Online Streaming),我們已經在以往的例子中體驗了GStreamer的在線播放功能,當我們指定播放URI為 http:// 時,GStreamer內部會自動通過網絡獲取媒體數據。在今天的示例中,我們將進一步了解如何處理 ...
摘要 在面對一個新的軟件庫時,第一步通常實現一個“hello world”程序,來了解庫的用法。對於GStreamer,我們可以實現一個極簡的播放器,來了解GStreamer的使用。 環境配置 為了快速掌握Gstreamer相關的知識,我們優先選擇Ubuntu作為我們的開發環境 ...
摘要 在 Gstreamer基礎教程01 - Hello World中,我們介紹了如何快速的通過一個字符串創建一個簡單的pipeline。為了能夠更好的控制pipline中的element,我們需要單獨創建element,然后再構造pipeline,下面將介紹GStreamer的一些基本概念 ...
摘要 在我們前面的文章中,我們的Pipline都是使用GStreamer自帶的插件去產生/消費數據。在實際的情況中,我們的數據源可能沒有相應的gstreamer插件,但我們又需要將數據發送到GStreamer Pipeline中。GStreamer為我們提供了Appsrc以及Appsink插件 ...
摘要 通常我們的播放引擎需要和GUI進行集成,在使用GStreamer時,GStreamre會負責媒體的播放及控制,GUI會負責處理用戶的交互操作以及創建顯示的窗口。本例中我們將結合QT介紹如何指定GStreamer將視頻輸出到指定窗口,以及如何利用GStreamer上報的信息去更新GUI ...