public void cleanup() {
   /*
    * remove cleanup of resources
    * not acquired in AudioTrack approach
    */
   if (!USE_AUDIOTRACK) releasePatch();
   cleanupNative();
   mAudioConfigs.clear();
   if (USE_AUDIOTRACK) return;
   if (mContext != null) mContext.unregisterReceiver(mA2dpReceiver);
   mAudioManager.unregisterAudioPortUpdateListener(mAudioPortListener);
 }