Uninitialized pointer can cause crash.

mpAudioTrack should be initialized in any case.
If getOutputSamplingRate returns ERROR, this won't be initialized.
As a result, deleting this field in dtor can cause crash.

Change-Id: I950d353361b19635302339dac35752a2514d2d80
Signed-off-by: You Kim <you.kim72@gmail.com>
Fix crash in MyHandler when sockets are not set.

-When going quickly in and out of the video view during an rtsp
streaming session, a race condition occurs and MyHandler tries to
connect to a socket that has been reset. To avoid this,
checks are added.
- If there are errors during setupTrack 1, it is no use
setting up track 2. It will cause new errors.
- No assert for socket connect since there is a normal
status check already.

Change-Id: Ie06221d6c0d78ce0449f76c782ed5120fa646bfd
Added support for 3GPP meta data atoms

3GPP metadata is not supported, only iTunes Metadata
Format is supported.

Change-Id: I78b41c88788d5a43800c936e0ac0f98424515c62
strtok stores its values in thread local storage.
So it can not guarantee works well when multithread environment.
AudioFlinger has multithread.
so strtok_r is more safe.

Change-Id: I6d77ef9cc49a4478dd856dcdca14e4920ce955c6
avcenc: Prepend startcodes to output buffers

This makes the encoder output data that is similar to what
actual HW encoders output. This form is also what is expected
by virtually every other component - the only exception
seems to be stagefright's MPEG4Writer which happens to work
with this format.

This also makes the encoder's output work in other decoders
when passing through directly. If feeding the encoded data
straight through to a decoder (such as in the EncodeDecodeTest
CTS test), the output from OMX.google.h264.encoder cannot be
decoded by e.g. OMX.Nvidia.h264.decode on a Nexus 7 or
OMX.SEC.avc.dec on a Galaxy S3.

Change-Id: I6e16433a4a66936e3080723c8233681f53bd55e5
MediaCodec: Pass the crop rect to SoftwareRenderer

Change-Id: I434411516eb5fafe9d7aeac9882bbc7f1a8415d8
NuPlayer: Use a software renderer when using software codecs

This mimics what is done in AwesomePlayer and MediaCodec -
ideally this logic perhaps should be moved into ACodec to
avoid having to replicate it in every caller.

This makes HLS and RTSP playback work in the emulator.

Change-Id: I18027dc3e469889baaae3e1c4afb559de7d0f7d3
libvideoeditor: fix M4OSA_Clock header guard

CLOCK was mispelled as CLOCH

Change-Id: Ie7163fc8723d7a5b9df113f55a4a550e5465d9b5
libeffects: do not use GNU old-style field designators

Not using a GNU extension improves portability

Change-Id: I4e8a0376c089828ca4fc7f1aaf3914bfd917d4c5
If dlopen("libwvm.so") fails, log the reason why.

Bug: 11342992
Change-Id: I99986b6181df6d7615fdc1520d2edaadaccd9bb4
Fixed data offset at parsing IPMP Descriptors

MPEG4Extractor::parseDrmSINF() miscalculated data offset in parsing
IPMP Descriptors. This commit makes it to take in 2 bytes which is
the size of IPMPS_Type field.

Change-Id: I42cbb6793af9d9b2f14dbfdd7a616096002793f9