编码和压缩的区别是什么?

4

我知道压缩是重新编码数字数据以减小文件大小的过程;一个名为编解码器(codec)的专门程序将原始文件更改为较小的版本,然后再解压缩以呈现可用形式的数据。对于音频数据,音频编码与音频压缩有何不同?

2个回答

1
编码是将波形的特征按照某种代码表赋值的过程。一些代码表可以以更小的方式表示输入格式,但波形中的特征与编码文件中的特征存在着明显的映射关系,并且只需使用查找表就可以进行编码或解码。
编码应该始终适用于流媒体。
压缩通常尝试在数据中查找模式,以便在整个文件上以更简洁的方式表示,但会付出一些开销(例如,流媒体可能需要更多的内存来处理压缩格式)。最有效的压缩算法会以多种方式对数据进行建模,以确定是否存在可以利用的重叠部分。
良好的音频压缩格式也支持流媒体,但不一定需要支持流式传输。
总的来说,将压缩视为编码的扩展,如果您的文件太大,则非常有用。对于大多数用户而言,它们可能是同一件事。

1
给定一些要呈现给用户的数据,编码是在文件或流中表示该数据的方式。编码的概念也与其他类型的文件有关,例如:http://en.wikipedia.org/wiki/Character_encoding
压缩是用于存储或发送数据的任何技术,使其占用比“天真”表示法更少的字节数 - 对于音频而言,“天真”表示法将是基本的PCM表示法。基本压缩有两种类型 - 无损压缩(例如FLAC),它允许完美重构原始PCM数据,以及有损压缩(例如MP3),除了利用数据中的模式外,还利用人类感知工作的方式去除不会被错过的数据。
因此,压缩是你在进行编码时可以做的事情,但你不必使用压缩来进行编码!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接