我想检测特定音频文件的峰值和 rms 值(格式可以是 .opus、.wav 等,或者也可以从麦克风输入而不录制声音)。使用 GStreamer 的优秀“级别”插件我可以实现这一点。
我尝试了此处提供的示例 level_plugin_example
我还尝试了命令行示例,
$ gst-launch-1.0 -v -m audiotestsrc !音频转换!音频/x-raw,格式=S8,通道=2!等级 !fakesink静音=真
或者
$ gst-launch-1.0 -v -m audiotestsrc !体积体积=1.0 !等级 !fakesink静音=真
这些给出了空有效值和峰值。
通过这些例子,我知道了如何使用level。但问题是,在示例中,他们使用上限来设置原始媒体(内部是否有任何操作来获取关卡插件的输出?)但我想要用户定义的媒体输入,那么如何实现这一点?
摘要:我想要一个“级别”插件的示例代码片段,它将输入作为录制的音频或实时音频文件并检测其 rms 和峰值。