zoukankan      html  css  js  c++  java
  • 开机音乐不发声的问题

      今天在Bootanimation.cpp中加入了SoundPool来实现开机音乐。反复检查了好几遍调用SoundPool的地方,没有错,并且返回的值也都没有异常,但是就是不发声音。后来在网上搜了一下,由于开机动画是在开机中media_server和system_server刚起来的阶段,此时还没有从setting模块中读取数据库中的记录为各个流设置最大的index,所以此时的index还是使用默认的值,故而不能正常播放音乐。

      

    ./hardware/libhardware_legacy/audio/AudioPolicyManagerBase.cpp

    AudioPolicyManagerBase::StreamDescriptor::StreamDescriptor()
    : mIndexMin(0), mIndexMax(1), mCanBeMuted(true)
     {
       mIndexCur.add(AUDIO_DEVICE_OUT_DEFAULT, 3);
     }

    这里会初始化一个声音,我发现我代码里mIndexCur.add(AUDIO_DEVICE_OUT_DEFAULT, 0);设的是0,所以没有声音,把他改一下就OK了。

  • 相关阅读:
    Java-集合类汇总
    Java-ArrayList
    Java-ArrayList和Vector的区别
    Java-List
    Java-Stack
    Java-Vector
    Java-HashMap
    Java-EnumSet
    18校招借鉴
    spring的设计模式
  • 原文地址:https://www.cnblogs.com/rzq232/p/3780089.html
Copyright © 2011-2022 走看看