所有当前的FLAC流媒体实现(例如带有Icecast的Edcast)似乎在流媒体时使用Ogg作为FLAC的容器。
我已经完成了一些通过HTTP传输FLAC的测试,它似乎在VLC中运行得很好。 FLAC似乎是built in such a way that frames can stand independently,使其能够抵御流损坏和/或丢帧。鉴于此,我不太明白为什么在Ogg中包装FLAC是必要的。
答案 0 :(得分:4)
FLAC-to-Ogg mapping page有一个相当详尽的解释,为什么在许多情况下使用Ogg封装而不是流式传输FLAC是理想的:
原始FLAC格式包括非常薄的传输系统 ...称为“原生FLAC”。 ...它非常轻量级,不支持更复杂的传输机制,例如多个逻辑流,......
原生FLAC传输不是传输层"以标准编解码器设计的方式,因为它不能完全与有效载荷分开。 ...
当尝试将FLAC封装在其他真实的传输层中时,会出现问题 ...
另一种方法是将本机FLAC帧视为Ogg数据包并接受传输冗余。事实证明,这不是一个惩罚; ......冗余只占百分之几。
[强调补充]
有关详细信息,请参阅完整页面,但结果是虽然可用于流式传输,但本机FLAC并不适合更复杂的设置,并且Ogg封装的成本非常低。如果原生FLAC可以满足您的特定需求,您可以继续使用它,但Ogg最终将为您提供更大的灵活性。