我可以播放这个 wav :
http://freewavesamples.com/yamaha-sy35-clarinet-c5
gst-launch filesrc location=Yamaha-SY-35-Clarinet-C5.wav ! wavparse ! autoaudiosink
所以我假设 wavparse 运行正常,但是这个管道无法转码:
gst-launch filesrc location=Yamaha-SY-35-Clarinet-C5.wav ! wavparse ! vorbisenc ! filesink location=out.ogg
带有以下警告和错误
将管道设置为 PAUSED ... 管道正在预滚... 0:00:00.028608695 23692 0xa99720 WARN wavparse gstwavparse.c:2110:gst_wavparse_loop: 错误:内部数据流错误。 0:00:00.028637670 23692 0xa99720 WARN wavparse gstwavparse.c:2110:gst_wavparse_loop: 错误:流任务暂停,原因未链接 (-1) 错误:来自元素 /GstPipeline:pipeline0/GstWavParse:wavparse0:内部数据流错误。 附加调试信息: gstwavparse.c(2110): gst_wavparse_loop (): /GstPipeline:pipeline0/GstWavParse:wavparse0: 流式传输任务暂停,原因未链接 (-1) 错误:管道不想预卷。 将管道设置为 NULL ... 释放管道...
奇怪的是,错误发生在 wavparse 中,所以当管道以音频设备接收器结束时很好,但没有编码接收器......