使用FishSpeech生成流媒体wav文件,播放本地文件时报错。
38213.3.2播放声音电脑文件或网络文件
[in]失败后停止【值/表达式】True
[in]类型【值/表达式】EXTERN
[in]等待播放完成【值/表达式】True
[in]路径或URL【变量 savedPath】C:\Users\61125\AppData\Local\Temp\tmp4BD5.wav
异常:不支持给定的 URL 的字节流类型。 (异常来自 HRESULT:0xC00D36C4)
在 NAudio.MediaFoundation.MediaFoundationInterop.MFCreateSourceReaderFromURL(String pwszURL, IMFAttributes pAttributes, IMFSourceReader& ppSourceReader)
在 NAudio.Wave.MediaFoundationReader.CreateReader(MediaFoundationReaderSettings settings)
在 NAudio.Wave.MediaFoundationReader.Init(MediaFoundationReaderSettings initialSettings)
在 NAudio.Wave.MediaFoundationReader..ctor(String file)
在 Quicker.Domain.Actions.X.BuiltinRunners.PlaySoundStep.ip8CY5xrLYe(String , ActionExecuteContext )
在 Quicker.Domain.Actions.X.BuiltinRunners.PlaySoundStep.<>c__DisplayClass45_0.olhnX2XT0gu()
在 Quicker.Domain.Actions.X.XActionHelper.ExecuteCommonAction(ActionExecuteContext context, ActionStep step, XAction action, Func`1 actionFunc, Action successAction, Action failAction, StepInParamDef stopIfErrorParam, StepOutParamDef isSuccessOutputParam)
步骤(sys:playSound)执行失败,原因:不支持给定的 URL 的字节流类型。 (异常来自 HRESULT:0xC00D36C4)
停止动作:不支持给定的 URL 的字节流类型。 (异常来自 HRESULT:0xC00D36C4)
有没有能够播放流媒体wav的方案?
来自AI的回答:
流媒体WAV文件与普通WAV文件的核心区别体现在文件封装方式和传输优化层面,两者的音频数据本质相同,均为无损音质。具体差异如下:
封装结构优化
流媒体WAV通常采用分块编码或特殊元数据设计,支持边传输边解码播放12;普通WAV以完整RIFF结构存储,需完全下载后播放6。
文件兼容性
普通WAV广泛支持所有音频设备和编辑软件16,而流媒体WAV可能依赖特定协议(如HTTP Live Streaming)或播放器实现实时解析2。
传输效率
流媒体WAV通过分片传输减少缓冲延迟,适合网络直播、在线高品质音乐平台2;普通WAV更适合本地存储和后期编辑15。
元数据扩展
流媒体WAV可能嵌入版权信息、时间戳等流式传输所需的数据字段1,普通WAV的元数据通常仅包含基础音频参数6。
总结而言,二者区别主要在于封装协议和传输适配性,无损音频特性保持不变。选择时需根据网络环境与播放场景决定12。