5

我应该为我的 C# 软件开发项目选择哪个音频编解码器,其中要转码/传输/使用的原始音频基于以下内容:

  1. 仅用于编码语音
  2. 音频可以是立体声或单声道
  3. 能够支持直播
  4. 文件大小和质量之间的良好权衡
  5. 以编码形式通过 TCP/IP 传输
  6. 无需进一步处理即可由现成的免费播放器播放

请注意,无需考虑是否有现成的免费编解码器库用于执行转码。

4

5 回答 5

7

Opus Codec是一个更新和更好的替代方案。

查看与其他编解码器的比较,看看它的性能如何。

于 2013-06-14T18:12:29.753 回答
5

Speex 是免费的开源编解码器,专为在需要低延迟的实时解决方案中编码语音而设计。WMA 或 MP3 等通用压缩方案可能会导致更多延迟,并且它们也可能无法在非常低的比特率下正常运行。http://www.speex.org/

于 2010-03-03T02:05:19.137 回答
0

您可以使用带有“语音”预设的 LAME 进行 MP3 编码。我会建议测试不同的,因为这样的问题

MP3 是 KPFA.org(我认为现在是 KQED)都用于直播的。效果很好。虽然不知道使用什么服务器软件。

于 2010-03-03T01:41:09.577 回答
0

鉴于您选择的语言,如果可以安全地假设您使用的是 Windows,我实际上会推荐 WMA,即 Windows 格式。这些库都将内置,并且,考虑到所有因素,它是一个非常可靠的编解码器。支持您的所有要求等等。

但是,如果您要推送到 Flash 端点,请使用 .fla,Flash 音频。Flash 肯定会针对使用它进行优化,虽然它在 C# 中使用起来并不那么容易,但您肯定会欣赏另一端的易用性。

于 2010-03-03T01:50:04.313 回答
0

如果您只针对 Windows,则 GSM 编解码器可能是低带宽应用程序的不错选择。它通常被认为比 Speex 质量低,但使用的带宽也少得多。

Windows Media Player 可以播放 GSM,并且编码器是 Vista 及更高版本中 Media Foundation 的一部分(可能是 XP 及更低版本中的一些 Win32 API?)

于 2010-03-03T02:21:33.473 回答