android 拍照时强制开两个CPU

进入相机拍照,拍照动画和拍照声音会概率性发生卡顿。
此问题发生的原因是在拍照期间概率性只有一颗CPU打开,而拍照时loading会比较重,导致一颗CPU处理不过来,所以会出现拍照动画和拍照声音卡顿的问题。
解决方法:拍照时强制开两颗CPU,足以处理拍照时的loading。
KK版本上可以按以下方法修改。
在photoactor.java中
1.    添加如下代码
    import com.mediatek.common.MediatekClassFactory;
    import com.mediatek.common.perfservice.IPerfServiceWrapper;
2.  添加如下变量
      IPerfServiceWrapper mPerfService = null;
      int mPerfServiceHandle = -1;
3.  public PhotoActor(Camera context)中做如下修改
     if (mWfdManager != null) {
            mWfdManager.addListener(mWfdListener);
        }
        //add start
        mPerfService = MediatekClassFactory.createInstance(IPerfServiceWrapper.class, context);
            Log.d(TAG, "mPerfService =" + mPerfService);
           if(mPerfService != null && mPerfServiceHandle == -1)
                 mPerfServiceHandle = mPerfService.userReg(2, 0);
        //add end
       
        mCameraSound = new MediaActionSound();
4.  public boolean capture()中做如下修改
    if (mContinuousShotPerformed) {
            mStreamID = 0;
        }
        //add start
        if(mPerfServiceHandle != -1 && mPerfService != null)
          {
          Log.d(TAG, "mPerfService.userEnableTimeout");
                mPerfService.userEnableTimeout(mPerfServiceHandle, 10);
          }
           Log.d(TAG, "mPerfServiceHandle = " + mPerfServiceHandle);
        //add end
        synchronized (sFaceDetectionSync) {
            if (!mCameraCategory.applySpecialCapture()) {
                mContext.getCameraDevice().takePicture(getShutterCallback(), mRawPictureCallback,
                        mPostViewPictureCallback, mCameraCategory.getJpegPictureCallback());
            }
            sFaceDetectionStarted = false;
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值