首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android上的默认PCM格式

Android上的默认PCM格式
EN

Stack Overflow用户
提问于 2013-03-27 16:36:38
回答 1查看 1.1K关注 0票数 1

有人知道这是不是大多数Android (ARM)设备上的默认PCM格式?

代码语言:javascript
复制
2 channels
16 bit
Little Endian

底层的"tinyalsa“可以处理

代码语言:javascript
复制
SNDRV_PCM_FORMAT_S32_LE
SNDRV_PCM_FORMAT_S8
SNDRV_PCM_FORMAT_S24_LE
SNDRV_PCM_FORMAT_S16_LE

但我想不出Android会使用不同的配置(?)。

在ARM设备上,小字节序是肯定的。

那么这两个通道呢?我发现没有办法让单声道音频播放,所以我认为它总是转换为2声道。

是否有支持多通道的设备?

我是个新手。

提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-27 17:08:13

一般来说,我会说16位小端,是的。通道的数量取决于应用程序请求的内容。尽管有些设备会在立体声配置中运行一些/所有输出线程,这与您在测试中发现的情况类似。通常,如果您要输出到单声道接收器(例如,许多设备只有一个扬声器),则模拟编解码器或DSP会将其混合回单声道。

底层的"tinyalsa“可以处理

许多设备不使用libtinyalsa。对于内核空间的ALSA驱动程序,它们有自己的用户空间接口。例如,最近的高通平台使用自己的libalsa-intf进行大多数回放,而libtinyalsa仅用于USB音频回放(可能还有A2DP)。

就多声道支持而言,如果将其写入单声道/立体声接收器(即内置扬声器或3.5 of耳机),它将被下混合为立体声,这可能是在创建假环绕感的虚拟器效果的帮助下进行的。真正的环绕立体声仅限于支持它的接收器,例如HDMI/MHL,可能还有USB。应该注意的是,即使在HDMI/MHL的情况下,一些设备也会向下混合到立体声。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15654613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档