【说明】
在 Android 系统中,每一个音频的应用场景都对应着 1 个或多个音频 route,只有为每一个场景配置正确的 route,音频数据才能从期望的设备正确输出。
RouteMask 是一个无符号 32-bit 的变量,某些 bit 对应着可设置的音频 route。当这些 bit 被置 1 时,相应的音频 route 就会被应用到系统中。
【表格】
通过在代码中添加循环打印,将 Intel 平台下 Android 6.0系统中所有可选择的音频 route 及其对应的掩码值探明。
汇总成下方表格以备后续查询:
RouteMask | RouteMaskToString |
0x00000000 | <none> |
0x00000001 | Media |
0x00000002 | <none> |
0x00000004 | Voice |
0x00000008 | <none> |
0x00000010 | LowLatency |
0x00000020 | <none> |
0x00000040 | CompressedMedia |
0x00000080 | DeepMedia |
0x00000100 | <none> |
0x00000200 | ModemIA |
0x00000400 | BtIA |
0x00000800 | HwCodec0IA |
0x00001000 | HwCodec1IA |
0x00002000 | BtHfp |
0x00004000 | A2dpOffloadIA |
0x00008000 | Hdmi |
0x00010000 | <none> |
0x00020000 | <none> |
0x00040000 | <none> |
0x00080000 | <none> |
0x00100000 | <none> |
0x00200000 | <none> |
0x00400000 | <none> |
0x00800000 | <none> |
0x01000000 | <none> |
0x02000000 | <none> |
0x04000000 | <none> |
0x08000000 | <none> |
0x10000000 | <none> |
0x20000000 | <none> |
0x40000000 | <none> |
0x80000000 | <none> |