stagefright: add a 2kb cache for CallbackDataSource.

Without a cache the mediaserver does a lot of small reads which result
in round trips through binder and jni to the app MediaDataSource.

On a Nexus 5 I measured time to first frame from MediaPlayer for
1) 1350kbps h264, and 2) 20480kbps vp8. Without a cache, MediaDataSource
was ~250ms slower than an fd. With a 2kb cache it's 30ms slower for (1)
and 70ms slower for (2).

Change-Id: If1e811db7b853c4f79430603318d4744ac30acb9
3 files changed