Gstreamer 无法播放原始 PCM 缓冲区

问题描述 投票:0回答:1

我正在按照此处的指南如何使用 GStreamer 逐步播放 PCM 数据阵列(Florian Zwoch 的解决方案)。但是,gstreamer 没有声音输出。

我正在使用 Windows 并通过 msys2 安装 gstreamer 以及各种 gstreamer 插件。我可以编译并运行 gstreamer 的基础教程 (https://gstreamer.freedesktop.org/documentation/tutorials/basic/hello-world.html?gi-language=c) 所以我相信这不是 Gstreamer 安装问题。

我应该怎么做才能解决问题?

Update1:使用Sudhir Kesti的建议

gst-launch-1.0.exe filesrc location=D:\Work\command-post\mix_1.pcm ! rawaudioparse num-channels=1 sample-rate=8000 pcm-format=GST_AUDIO_FORMAT_S16LE ! audioconvert ! audioresample ! autoaudiosink --gst-debug=2
,我可以玩了。但是,我仍然无法查询管道的持续时间或使用 gst_element_seek_simple。如何查询时长或查找管道的位置?

c++ audio gstreamer gstreamer-1.0 gstreamer-0.10
1个回答
0
投票

您需要 rawaudioparse 将音频样本捆绑到帧中。添加 audioconvert 和 audioresample 以将 pcm 转换为所需的格式。根据 pcm 数据设置通道、格式和速率。

gst-launch-1.0.exe filesrc location=D:\Wor

© www.soinside.com 2019 - 2024. All rights reserved.