Use ashmem memory to transport MediaDescription to other processes

This follows the pattern used by Icon objects (for e.g. Notifications) where contructing the object creates a shared memory Bitmap so updates and transport to other processes doesn't add extra large memory copies. This is important for things like album art which can be rather large (we see 1000x1000 bitmaps occasionally).

Bug: 288241280
Flag: ACONFIG com.android.media.performance.MEDIA_DESCRIPTION_ASHMEM_BITMAP DISABLED
Test: on cheetah with media applications
Change-Id: I6320b000ed4a3785b67c8574aa3ad3b3195ee273
3 files changed