C 如何使用GStreamer的level插件获取特定音频文件的峰值和rms值
我想检测特定音频文件的峰值和rms值(格式可以是.opus、.wav等,也可以从麦克风输入,而不录制语音)。使用GStreamer的优秀“level”插件,我可以做到这一点 我试过这里提供的样品 我还尝试了命令行示例 $gst-launch-1.0-v-m audiotestsrc!音频转换! 音频/x-raw,格式=S8,通道=2!水平!假装沉默=真 或 $gst-launch-1.0-v-m audiotestsrc!音量=1.0!水平! 假装沉默=真 它们给出了空rms和峰值 通过阅读这些示例,我了解了如何使用level。但问题是,在这个例子中,他们使用caps来设置原始媒体(内部是否做了任何事情来获得levelplugin的输出?) 小结:我想要一个“level”插件的示例代码片段,该插件将输入作为录制的音频或实时音频文件,并检测其rms和峰值。level元素发送消息。可在链接上找到使用示例(gstreamer示例): 尝试使用:C 如何使用GStreamer的level插件获取特定音频文件的峰值和rms值,c,audio,plugins,gstreamer,gst-launch,C,Audio,Plugins,Gstreamer,Gst Launch,我想检测特定音频文件的峰值和rms值(格式可以是.opus、.wav等,也可以从麦克风输入,而不录制语音)。使用GStreamer的优秀“level”插件,我可以做到这一点 我试过这里提供的样品 我还尝试了命令行示例 $gst-launch-1.0-v-m audiotestsrc!音频转换! 音频/x-raw,格式=S8,通道=2!水平!假装沉默=真 或 $gst-launch-1.0-v-m audiotestsrc!音量=1.0!水平! 假装沉默=真 它们给出了空rms和峰值 通过阅读这些
gst-launch -v -m filesrc location=audioandsilence.wav ! decodebin ! audioconvert ! level message=TRUE ! pulsesink