stagefright aacenc / amrnb

Fix for issue 9656 - custom xml attributes in Android Libraries

Added support for predefined namespace http://schemas.android.com/apk/res/auto
that aapt tool recognizes and treats as namespace with package name
taken from current application's AndroidManifest.xml, //manifest/package attribute.

Signed-off-by: inazaruk <ievgenii.nazaruk@gmail.com>

Change-Id: I4b24a7265511e416cc7e02b5bb8a08ef32b598eb

stagefright aacenc: Make the bits to write in WriteBits unsigned

They shouldn't, as far as I know, ever be a signed value.

Change-Id: I64429c7c0b2b52bec768a04d3c3eb0eb252955fa

stagefright aacenc/amrwbenc: Remove trailing whitespace

This was applied in AOSP master earlier, in commit
b21611e5b0f1797e39e781d91ade023bac87637f, but when merged
into the Google internal tree in
88c2d4d26d79384f32a25bd775cf873cb678b12a, none of these
changes have been brought in. (The diff of this merge commit
and its first parent, d94b71d, is empty.)

Therefore, reapply the rest of these changes on the files
that still are present in the current version.

Change-Id: I645a9b9134769958a11808a06163123d28d83e46

stagefright aacenc: Properly terminate a comment

This avoids a warning about /* within a comment.

Change-Id: I9079909734d35db5ab0fd54b46173d7a1848d0c9

stagefright aacenc: Add missing newlines at the end of files

This avoids compiler warnings about missing newlines.

Change-Id: Ieb2bb7152d794dca47c629588879032d3ba65677

stagefright amrwbenc: Make the mem_malloc function 64-bit safe

Change-Id: Iab0dbfdc6be09c62d353bee46596635686b784a6

stagefright aacenc: Fix inline asm constraints

Output-only parameters should use =r or =&r constrains, never +r.

This fixes a lot of warnings about the variable 'result' being
used uninitialized.

Change-Id: Ie689fce8c6ecd874d4fc66e87687c67551d9ab6a

stagefright aacenc: Fix inline asm

- don't write input-only registers
- use temp variables instead of hardcoded regs
- don't build constants manually, specify as asm inputs
- remove unnecessary volatile qualifiers

Change-Id: I3b9bb2d30768bcf409dc478bde4489135eeb50d7

stagefright aacenc: Add const declarations to some pointers

This avoids some compilation warnings.

Change-Id: Ia89ab94020a9f1ee4c1df48823fb89325cca7d36

stagefright aacenc: Avoid warnings about incompatible pointer types

Change-Id: Ida53cd1030ebb9feb0d6916e42e8ba67a90e86c7

stagefright aacenc: Zero-initialize a struct

This avoids using uninitialized data in some cases, according
to valgrind.

Change-Id: I2eb5242b93c4d83a1cf6a15f022ec9579e0742a4

stagefright amrnb: Fix a bug on architectures where long is 64 bit

Initially, this code gave a warning "comparison is always
false due to limited range of data type" if long was 64 bit.
Additionally, the output from the AMR encoder was mostly noise.

This was committed on the master branch of the opencore
repository in commit f532d145194e474cb30d8644b8eee83873ad24cc,
based on AOSP contribution 10904.

Change-Id: I822dcc74beeae548d3032ffda759de9c8cd1fcfe

stagefright amrnb: Properly negate all values

Initially, input values -32768 weren't negated properly.

This was committed on the master branch of the opencore
repository in commit f532d145194e474cb30d8644b8eee83873ad24cc,
based on AOSP contribution 10906.

Change-Id: I903353c5539a8fe94b7fc5f26b95eaeac57df5f4

stagefright aacenc: Fix an inline asm constraint

Output-only parameters should use =r or =&r constrains, never +r.

This avoids a warning about the variable 'result' being used
uninitialized.

This avoids loading the uninitialized value into the register,
before it is overwritten by the multiplication.

Change-Id: I0ef6179e133c35d290feb8e12bea180ecae11a05

Conflicts:

	tools/aapt/XMLNode.cpp