2
如何使Android可靠地播放音乐而不会斩波?
当我尝试在索尼爱立信Xperia X10上的Android 2.3上(使用包括PowerAmp在内的各种播放器)播放音乐时,声音不可靠。音乐会暂停一小段时间,例如,在以下情况下: 我按下电源按钮(尤其是反复按)(request_suspend_state: sleep;request_suspend_state: wakeup以dmesg键) 当我看到类似send sigkill to 15497 (ndroid.settings), adj 8, size 6428dmesg的消息时 当某些程序对更改的屏幕方向做出反应时。 建立wifi连接后,当我强制其“重新关联”时 当我从主屏幕(AWDLauncher)进入/从应用程序进入时,除了WidgetLocker屏幕/从中进入。 当我启用/禁用飞行模式时。 显示屏关闭时(最烦人) 当播放音乐的唯一真正稳定的方法是使用StayAwake强制显示时,请关闭Wi-Fi,打开飞行模式并不要切换应用程序。像while true; do true; done这样启动CPU猪不会影响斩波。 而且它在Android 2.1上的运行情况差不多。 “ mediaserv”进程(写入/ dev / msm_pcm_out)具有实时io和调度优先级,但是声音仍然不稳定。如果我从控制台开始播放时mplayer -ao pcm:file=/dev/msm_pcm_out声音不那么刺耳(值得注意的是,它不会因电源按钮/加载大量繁重的进程而中断),但在屏幕关闭时仍然表现不正常(即使ionice -c1 -p4 cat /dev/urandom > /dev/msm_pcm_out是起伏不定) 当我以通常的方式启动音乐A并使用mplayer将音乐播放器B启动到/ dev / msm_pcm_out(将它们混合)时,音乐A会比平时更响声,并且当A处于响声时我通常会听到B声。当我关闭屏幕时,A和B会同时斩波(停止B会以这种方式相对流畅地播放A)。 在存在背景负载的情况下如何在Android上可靠地播放音乐?我应该在某处报告错误吗? 更新找到了一种播放音乐的方法。不方便,但不切碎: 在“ CPU开启,屏幕关闭,键盘关闭”模式下启动WakeLock 使用mplayer绕过Android播放音乐: ionice …