MediaPlayer: fix channel mask handling

The AAC decoder is publishing the decoded channel mask using the
expected format for KEY_CHANNEL_MASK, which uses the Java AudioFormat
mask definitions.
The MediaPlayer implementation was treating published channel masks
(when found in the decoded format) as using the native mask format,
causing the "stereo Java mask" value of 0b1100 to be handled
The fix consists in converting from the AudioFormat format to
the audio_channel_mask_t format, unless the two least significant
bits are non-zero (for compatibility with legacy extractors).

Bug: 238115866
Test: repro in bug playing RTSP stream w/ captions on
Change-Id: Ie8b57e20927d90e45b0f69a23a6777af7a39794d
Merged-In: Ie8b57e20927d90e45b0f69a23a6777af7a39794d
(cherry picked from commit 275aa3935f1d81df369a8ce62eef30051012c436)
Merged-In: Ie8b57e20927d90e45b0f69a23a6777af7a39794d
1 file changed