簡體   English   中英

如何將輸出音頻通過管道傳輸到gstreamer腳本?

[英]How to pipe output audio to gstreamer script?

iam在一個小項目上工作,在那里我通過藍牙為Raspberry pi播放音樂。 我也想分析音頻。

如何將Raspberry pi音頻輸出通過管道傳輸到gstreamer C腳本? 我有一個mp3文件可以正常工作的解決方案,但是我想擴大此范圍以讀取RPi的音頻輸出。

這是我在gstreamer腳本中用於讀取文件的源:

data.source = gst_element_factory_make ("uridecodebin", "source");
g_object_set (data.source, "uri", "file:///home/pi/example.mp3", NULL);

我是否需要將音頻回送至麥克風插孔並將其用作來源? 還是有更好的方法來做到這一點?

我對RPi不熟悉。 假設它運行常規的linux,則通過PulseAudio完成聲音輸出的機會很高。 對於每個輸出設備,PulseAudio還為此輸出提供一個“監視器”設備。 這個可以用來捕獲音頻數據。

通過某些系統配置,可以使這些監視器設備可見-但我不確定。 也許它們默認存在。

從GStreamer的角度來看,您將使用“ pulsesrc”元素來捕獲音頻:

https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/gst-plugins-good-plugins-pulsesrc.html

從那里開始,您將應用常規的GStreamer函數-意味着您可以將數據寫入磁盤,對數據進行實時分析等。由於這可能非常復雜,因此很難給出一般建議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM