Merge "avcenc: Prepend startcodes to output buffers"
diff --git a/libvideoeditor/osal/inc/M4OSA_Clock.h b/libvideoeditor/osal/inc/M4OSA_Clock.h
index db753a5..52ea696 100755
--- a/libvideoeditor/osal/inc/M4OSA_Clock.h
+++ b/libvideoeditor/osal/inc/M4OSA_Clock.h
@@ -21,7 +21,7 @@
  ************************************************************************
 */
 
-#ifndef M4OSA_CLOCH_H
+#ifndef M4OSA_CLOCK_H
 #define M4OSA_CLOCK_H
 
 #include "M4OSA_Types.h"
diff --git a/media/libeffects/downmix/EffectDownmix.c b/media/libeffects/downmix/EffectDownmix.c
index f17a6e8..f779876 100644
--- a/media/libeffects/downmix/EffectDownmix.c
+++ b/media/libeffects/downmix/EffectDownmix.c
@@ -61,13 +61,13 @@
 // This is the only symbol that needs to be exported
 __attribute__ ((visibility ("default")))
 audio_effect_library_t AUDIO_EFFECT_LIBRARY_INFO_SYM = {
-    tag : AUDIO_EFFECT_LIBRARY_TAG,
-    version : EFFECT_LIBRARY_API_VERSION,
-    name : "Downmix Library",
-    implementor : "The Android Open Source Project",
-    create_effect : DownmixLib_Create,
-    release_effect : DownmixLib_Release,
-    get_descriptor : DownmixLib_GetDescriptor,
+    .tag = AUDIO_EFFECT_LIBRARY_TAG,
+    .version = EFFECT_LIBRARY_API_VERSION,
+    .name = "Downmix Library",
+    .implementor = "The Android Open Source Project",
+    .create_effect = DownmixLib_Create,
+    .release_effect = DownmixLib_Release,
+    .get_descriptor = DownmixLib_GetDescriptor,
 };
 
 
diff --git a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp
index 85232e7..28d239a 100644
--- a/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp
+++ b/media/libeffects/lvm/wrapper/Bundle/EffectBundle.cpp
@@ -3267,13 +3267,13 @@
 // This is the only symbol that needs to be exported
 __attribute__ ((visibility ("default")))
 audio_effect_library_t AUDIO_EFFECT_LIBRARY_INFO_SYM = {
-    tag : AUDIO_EFFECT_LIBRARY_TAG,
-    version : EFFECT_LIBRARY_API_VERSION,
-    name : "Effect Bundle Library",
-    implementor : "NXP Software Ltd.",
-    create_effect : android::EffectCreate,
-    release_effect : android::EffectRelease,
-    get_descriptor : android::EffectGetDescriptor,
+    .tag = AUDIO_EFFECT_LIBRARY_TAG,
+    .version = EFFECT_LIBRARY_API_VERSION,
+    .name = "Effect Bundle Library",
+    .implementor = "NXP Software Ltd.",
+    .create_effect = android::EffectCreate,
+    .release_effect = android::EffectRelease,
+    .get_descriptor = android::EffectGetDescriptor,
 };
 
 }
diff --git a/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp b/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp
index 8a96212..0367302 100644
--- a/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp
+++ b/media/libeffects/lvm/wrapper/Reverb/EffectReverb.cpp
@@ -2149,13 +2149,13 @@
 // This is the only symbol that needs to be exported
 __attribute__ ((visibility ("default")))
 audio_effect_library_t AUDIO_EFFECT_LIBRARY_INFO_SYM = {
-    tag : AUDIO_EFFECT_LIBRARY_TAG,
-    version : EFFECT_LIBRARY_API_VERSION,
-    name : "Reverb Library",
-    implementor : "NXP Software Ltd.",
-    create_effect : android::EffectCreate,
-    release_effect : android::EffectRelease,
-    get_descriptor : android::EffectGetDescriptor,
+    .tag = AUDIO_EFFECT_LIBRARY_TAG,
+    .version = EFFECT_LIBRARY_API_VERSION,
+    .name = "Reverb Library",
+    .implementor = "NXP Software Ltd.",
+    .create_effect = android::EffectCreate,
+    .release_effect = android::EffectRelease,
+    .get_descriptor = android::EffectGetDescriptor,
 };
 
 }
diff --git a/media/libeffects/preprocessing/PreProcessing.cpp b/media/libeffects/preprocessing/PreProcessing.cpp
index 25586e8..d72eaf5 100644
--- a/media/libeffects/preprocessing/PreProcessing.cpp
+++ b/media/libeffects/preprocessing/PreProcessing.cpp
@@ -1892,13 +1892,13 @@
 // This is the only symbol that needs to be exported
 __attribute__ ((visibility ("default")))
 audio_effect_library_t AUDIO_EFFECT_LIBRARY_INFO_SYM = {
-    tag : AUDIO_EFFECT_LIBRARY_TAG,
-    version : EFFECT_LIBRARY_API_VERSION,
-    name : "Audio Preprocessing Library",
-    implementor : "The Android Open Source Project",
-    create_effect : PreProcessingLib_Create,
-    release_effect : PreProcessingLib_Release,
-    get_descriptor : PreProcessingLib_GetDescriptor
+    .tag = AUDIO_EFFECT_LIBRARY_TAG,
+    .version = EFFECT_LIBRARY_API_VERSION,
+    .name = "Audio Preprocessing Library",
+    .implementor = "The Android Open Source Project",
+    .create_effect = PreProcessingLib_Create,
+    .release_effect = PreProcessingLib_Release,
+    .get_descriptor = PreProcessingLib_GetDescriptor
 };
 
 }; // extern "C"
diff --git a/media/libeffects/visualizer/EffectVisualizer.cpp b/media/libeffects/visualizer/EffectVisualizer.cpp
index e7eccf1..9f8139c 100644
--- a/media/libeffects/visualizer/EffectVisualizer.cpp
+++ b/media/libeffects/visualizer/EffectVisualizer.cpp
@@ -560,13 +560,13 @@
 // This is the only symbol that needs to be exported
 __attribute__ ((visibility ("default")))
 audio_effect_library_t AUDIO_EFFECT_LIBRARY_INFO_SYM = {
-    tag : AUDIO_EFFECT_LIBRARY_TAG,
-    version : EFFECT_LIBRARY_API_VERSION,
-    name : "Visualizer Library",
-    implementor : "The Android Open Source Project",
-    create_effect : VisualizerLib_Create,
-    release_effect : VisualizerLib_Release,
-    get_descriptor : VisualizerLib_GetDescriptor,
+    .tag = AUDIO_EFFECT_LIBRARY_TAG,
+    .version = EFFECT_LIBRARY_API_VERSION,
+    .name = "Visualizer Library",
+    .implementor = "The Android Open Source Project",
+    .create_effect = VisualizerLib_Create,
+    .release_effect = VisualizerLib_Release,
+    .get_descriptor = VisualizerLib_GetDescriptor,
 };
 
 }; // extern "C"
diff --git a/media/libstagefright/MediaCodec.cpp b/media/libstagefright/MediaCodec.cpp
index f412dc8..674e6e5 100644
--- a/media/libstagefright/MediaCodec.cpp
+++ b/media/libstagefright/MediaCodec.cpp
@@ -729,6 +729,10 @@
                             CHECK(msg->findInt32("width", &width));
                             CHECK(msg->findInt32("height", &height));
 
+                            int32_t cropLeft, cropTop, cropRight, cropBottom;
+                            CHECK(msg->findRect("crop",
+                                &cropLeft, &cropTop, &cropRight, &cropBottom));
+
                             int32_t colorFormat;
                             CHECK(msg->findInt32(
                                         "color-format", &colorFormat));
@@ -736,6 +740,8 @@
                             sp<MetaData> meta = new MetaData;
                             meta->setInt32(kKeyWidth, width);
                             meta->setInt32(kKeyHeight, height);
+                            meta->setRect(kKeyCropRect,
+                                cropLeft, cropTop, cropRight, cropBottom);
                             meta->setInt32(kKeyColorFormat, colorFormat);
 
                             mSoftRenderer =
diff --git a/media/libstagefright/WVMExtractor.cpp b/media/libstagefright/WVMExtractor.cpp
index 5ae80cc..bc48272 100644
--- a/media/libstagefright/WVMExtractor.cpp
+++ b/media/libstagefright/WVMExtractor.cpp
@@ -76,7 +76,7 @@
 {
     gVendorLibHandle = dlopen("libwvm.so", RTLD_NOW);
     if (gVendorLibHandle == NULL) {
-        ALOGE("Failed to open libwvm.so");
+        ALOGE("Failed to open libwvm.so: %s", dlerror());
     }
 }