Move frame count calculations for fast tracks

For fast tracks: move the default and minimum frame count calculations
from client to server.  If accepted, the default and minimum frame count
is the fast mixer (HAL) frame count.  If denied, the default and minimum
frame count is the same as it currently is for normal tracks.

For normal tracks: there is no change yet, preserve legacy behavior for
now but add a FIXME to change this later.

Bug fix: the test for buffer alignment matches channelCount was wrong.

Bug fix: check for 8-bit data in shared memory, which isn't supported.

Optimizations:
 - in set(), only call AudioSystem::getOutputSamplingRate() when needed
 - in createTrack_l(), only call AudioSystem::getSamplingRate() and
   AudioSystem::getFrameCount() when needed

Change-Id: I79d2fe507db1a8f7bb094c71da8a129951dbb82f
Merge "Move frame count calculations for fast tracks"
Add option to stagefright for writing decoded PCM

Change-Id: I8edce3e7d60b3f56b4eb1ed75ca80285c5ae3972
am e370bb62: Bump up the max number of items in an AMessage, remove overly stringent

* commit 'e370bb62b89d2f2980f519392010ea08a24c558e':
  Bump up the max number of items in an AMessage, remove overly stringent
am e0fa467e: Move frame count calculations for fast tracks

* commit 'e0fa467e1150c65a7b1b1ed904c579b40f97c9df':
  Move frame count calculations for fast tracks
am aeb8fd46: Add Fraunhofer AAC encoder with AAC-ELD support.

* commit 'aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b':
  Add Fraunhofer AAC encoder with AAC-ELD support.
am 94033577: Handle reconfiguration properly.

* commit '940335776b6d4eb91b13c4e56bc20bed3ac0011b':
  Handle reconfiguration properly.
am 2b095b74: Merge "Software MPEG4/H263 video encoder is now OMX-based" into jb-dev

* commit '2b095b74526cf5c9472131452600a02d8a66c32e':
  Software MPEG4/H263 video encoder is now OMX-based
am 209731c4: Merge "Add profile/level dump for encoders in cmd stagefright" into jb-dev

* commit '209731c4ae8c223e04e13717a4125907a67fcf4b':
  Add profile/level dump for encoders in cmd stagefright
am 5a1a5a7b: Merge "AudioFlinger: fix tracks ready for mixing logic." into jb-dev

* commit '5a1a5a7b6494d2c96090ce6c76360a3367d0e65f':
  AudioFlinger: fix tracks ready for mixing logic.
am 0756aa99: Merge "NuMediaExtractor API to unselect tracks and finer control over seeking." into jb-dev

* commit '0756aa99dffd5740d963fdda60699fdefe58ce85':
  NuMediaExtractor API to unselect tracks and finer control over seeking.
am 41914bec: Account for new AAC decoder\'s delay

* commit '41914becfd019c619783d875c61ef71db0e67400':
  Account for new AAC decoder's delay
am e0c026e3: Merge "Handle the case when there is no timed text track" into jb-dev

* commit 'e0c026e32277de27627b2bc24e51f333a2f1c4ee':
  Handle the case when there is no timed text track
am 543f0fd4: Merge "Bug fix : enqueue one next subtitle for each subtitle." into jb-dev

* commit '543f0fd46b2355c0ffc22445c8594f6dcde6a388':
  Bug fix : enqueue one next subtitle for each subtitle.
am e6d7f46c: Merge "Expose an API to run the WV extractor in crypto plugin mode." into jb-dev

* commit 'e6d7f46c566d16792068f25ef479e3fbae7365b8':
  Expose an API to run the WV extractor in crypto plugin mode.
am d8b00037: Merge "Opt in to the WVM extractor\'s secondary (cryptoPlugin) mode." into jb-dev

* commit 'd8b0003739768953b6e28080f434fdadec55c0e3':
  Opt in to the WVM extractor's secondary (cryptoPlugin) mode.
am 9a025a92: Merge "Add option to stagefright for writing decoded PCM" into jb-dev

* commit '9a025a922c1fed5cb5d1956a55b7f69ad259abb3':
  Add option to stagefright for writing decoded PCM
am 300a2ee9: Fast mixer configuration

* commit '300a2ee9327c05fbf9d3a5fd595b558097c7c5e8':
  Fast mixer configuration
am 209ec37b: Fixed incorrect codec type in the output for profiles/levels in cmd stagefright

* commit '209ec37b27a4fb6c92005c91ecf993ec19a3d430':
  Fixed incorrect codec type in the output for profiles/levels in cmd stagefright
am 83faee05: AudioFlinger: fix stop detection for static tracks

* commit '83faee053cfd4251dbb591b62039f563ffdac399':
  AudioFlinger: fix stop detection for static tracks