请看 "使用C#检测WAV文件中的音频静默 "的答案。我假设输入是WAV文件。如果不是,请提供音频流的格式,或者您是否打算直接从麦克风获取输入。如果您可以测量音频流中的沉默时间,并且您知道音频流的持续时间,则可以计算讲话时间。答案中的链接已失效,但是如果您在codeproject.com上搜索“C#波形”,则会找到一些项目,这些项目将向您展示如何解释和操作wav文件。如果存在背景噪音,则检测静默可能有点主观。您需要选择一个最小音量阈值来表示静默,低于该阈值的任何内容都被视为静默。