partial rewrite of ffmpeg integration
libstagefright: For interlace, set decoder in arbitrary mode

In arbitrary mode, frame parsers sends individual fields
to core. Once both the field is decoded, output done (FBD)
is sent back to client.
Default frame by frame mode will send both the fields in
a single buffer to core, which might decode only one field
or will throw up error.

Change-Id: Ia35d754e685f28f0df9f2c6ef2180b8a3dae1f28
CRs-Fixed: 531034
(cherry picked from commit 0428493caa128cfcb7b3df9082427cb6872a029e)
(cherry picked from commit f0ca79d0509d278a4a322121dc113e173c33534c)

Conflicts:

	media/libstagefright/avc_utils.cpp
	media/libstagefright/include/avc_utils.h
SoundRecorder: Add support for Pause/Resume in AMR-WB tunnel mode on SoundRecorder

- Stopping AudioSource will be implemented when Pausing the SoundRecorder. However, it
  will be redone when stopping the SoundRecorder which will cause the exception.
- When it stays at Pause state, avoid to redo Stopping AudioSource

Change-Id: I2aeddd1ce4e3366660012b39241546ee305667fb