PCM里signed与unsigned有何区别?应该用哪个?
dwing吧
全部回复
仅看楼主
level 1
幻森0 楼主
ffmpeg里关于PCM的Codec有很多
DEA pcm_alaw PCM A-law
D A pcm_bluray PCM signed 16|20|24-bit big-endian for Blu-ray media
D A pcm_dvd PCM signed 20|24-bit big-endian
DEA pcm_f32be PCM 32-bit floating point big-endian
DEA pcm_f32le PCM 32-bit floating point little-endian
DEA pcm_f64be PCM 64-bit floating point big-endian
DEA pcm_f64le PCM 64-bit floating point little-endian
D A pcm_lxf PCM signed 20-bit little-endian planar
DEA pcm_mulaw PCM mu-law
DEA pcm_s16be PCM signed 16-bit big-endian
DEA pcm_s16le PCM signed 16-bit little-endian
D A pcm_s16le_planar PCM 16-bit little-endian planar
DEA pcm_s24be PCM signed 24-bit big-endian
DEA pcm_s24daud PCM D-Cinema audio signed 24-bit
DEA pcm_s24le PCM signed 24-bit little-endian
DEA pcm_s32be PCM signed 32-bit big-endian
DEA pcm_s32le PCM signed 32-bit little-endian
DEA pcm_s8 PCM signed 8-bit
DEA pcm_u16be PCM unsigned 16-bit big-endian
DEA pcm_u16le PCM unsigned 16-bit little-endian
DEA pcm_u24be PCM unsigned 24-bit big-endian
DEA pcm_u24le PCM unsigned 24-bit little-endian
DEA pcm_u32be PCM unsigned 32-bit big-endian
DEA pcm_u32le PCM unsigned 32-bit little-endian
DEA pcm_u8 PCM unsigned 8-bit
一般而言是用16bit,但正常用应该是选哪个?求教各牛人
2011年05月25日 04点05分 1
level 9
正常情况都用signed,比较特殊的是windows下8bit PCM是unsigned。
2011年05月25日 04点05分 2
level 1
幻森0 楼主
所以一般应该是用 signed 16-bit little-endian ?
音源是aac/mp3/vorbis
2011年05月25日 04点05分 3
level 9
一般应该是和原来的bit-depth相同,这样不损失精度。如果源是有损应该输出float。
2011年05月25日 09点05分 4
level 11
(我是路过的。。。)
请教一下相同位深度的浮点与整形的转换是否会损失精度呢?
2011年05月25日 10点05分 5
level 9
5l
当然会
32bit 浮点有效位是24。32bit一个大于2^24的整形数转float就会损失精度,同样0.01转整形也会损失精度。
2011年05月25日 10点05分 6
level 11
非常感谢。。
另外同位深浮点与整形所表现的数据那个更精准一些呢?
2011年05月25日 10点05分 7
level 11
或者说其中一个的效果是否更好呢?
2011年05月25日 10点05分 8
level 9
一般来说都是浮点好,因为各种DSP函数进行处理时不会损失精度。
最简单的例子,我把一段音频的音量减少一半(除以2),再增加一倍(乘以2)。如果是整形的话就会损失1bit精度,而浮点则不会。
2011年05月25日 11点05分 9
level 11
基本明白了。。再次感谢。。
2011年05月25日 11点05分 10
level 1
幻森0 楼主
感谢解答
稍微查了下,big-endian是为了兼容设备才需要考虑的?如果只是PC用的话就选little-endian即可?
2011年05月25日 12点05分 11
1