首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用gst-launch播放原始音频文件?

如何使用gst-launch播放原始音频文件?
EN

Stack Overflow用户
提问于 2015-03-26 18:23:54
回答 1查看 2.7K关注 0票数 1

我正在使用gst-launch-0.10。

我使用以下命令从mp3文件创建了一个pcm文件(至少,我想我已经创建了):

代码语言:javascript
复制
gst-launch-0.10 filesrc location=my-sound.mp3 ! mad ! audioresample ! audioconvert ! 'audio/x-raw-int, rate=8000, channels=1, endianness=4321, width=16, depth=16, signed=true' ! filesink location=out.raw

现在我有了一个out.raw文件。

为了测试是否一切正常,我想回放一下。我尝试了这个(在其他方面):

代码语言:javascript
复制
gst-launch-0.10 filesrc location=out.raw  ! capsfilter caps="audio/x-raw-int, rate=8000, channels=1, endianness=4321, width=16, depth=16, signed=true" ! alsasink can-activate-pull=true

但我每次都会收到这个错误:

代码语言:javascript
复制
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
ERROR: from element /GstPipeline:pipeline0/GstCapsFilter:capsfilter0: Filter caps do not completely specify the output format
Additional debug info:
gstcapsfilter.c(393): gst_capsfilter_prepare_buf (): /GstPipeline:pipeline0/GstCapsFilter:capsfilter0:
Output caps are unfixed: EMPTY
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

"Filter caps没有完全指定输出格式“?这里缺少什么?

EN

回答 1

Stack Overflow用户

发布于 2015-03-26 19:44:38

好吧,在alsasink之前添加audioconvert过滤器使其工作。根据gst-inspect的说法,指定的音频格式与alsa兼容。所以我猜是声卡出了问题,audioconvert以某种方式将数据转换成了我的声卡可以处理的数据。只是猜测而已。

我还删除了can-activate-pull=true选项。激活此选项后的音质非常差。我想知道为什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29276078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档