Loading media/jni/mediaeditor/Android.mk 0 → 100755 +92 −0 Original line number Diff line number Diff line # # Copyright (C) 2011 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ VideoEditorMain.cpp \ VideoEditorClasses.cpp \ VideoEditorOsal.cpp \ VideoEditorJava.cpp \ VideoEditorPropertiesMain.cpp \ VideoEditorThumbnailMain.cpp \ VideoBrowserMain.c LOCAL_C_INCLUDES += \ $(TOP)/frameworks/base/core/jni \ $(TOP)/frameworks/base/include \ $(TOP)/frameworks/base/include/media \ $(TOP)/frameworks/base/media/libmediaplayerservice \ $(TOP)/frameworks/base/media/libstagefright \ $(TOP)/frameworks/base/media/libstagefright/include \ $(TOP)/frameworks/base/media/libstagefright/rtsp \ $(JNI_H_INCLUDE) \ $(call include-path-for, corecg graphics) \ $(TOP)/external/opencore/extern_libs_v2/khronos/openmax/include \ $(TOP)/external/opencore/android \ $(TOP)/vendor/qcom/proprietary/qdsp6/mm-core/omxcore/inc \ $(TOP)/frameworks/base/core/jni/mediaeditor \ $(TOP)/frameworks/media/libvideoeditor/vss/inc \ $(TOP)/frameworks/media/libvideoeditor/vss/common/inc \ $(TOP)/frameworks/media/libvideoeditor/vss/mcs/inc \ $(TOP)/frameworks/media/libvideoeditor/vss/stagefrightshells/inc \ $(TOP)/frameworks/media/libvideoeditor/lvpp \ $(TOP)/frameworks/media/libvideoeditor/osal/inc LOCAL_SHARED_LIBRARIES := \ libcutils \ libutils \ libandroid_runtime \ libnativehelper \ libmedia \ libbinder \ libstagefright \ libstagefright_omx \ libsurfaceflinger_client \ libvideoeditorplayer LOCAL_CFLAGS += \ -DUSE_STAGEFRIGHT_CODECS \ -DUSE_STAGEFRIGHT_AUDIODEC \ -DUSE_STAGEFRIGHT_VIDEODEC \ -DUSE_STAGEFRIGHT_AUDIOENC \ -DUSE_STAGEFRIGHT_VIDEOENC \ -DUSE_STAGEFRIGHT_READERS \ -DUSE_STAGEFRIGHT_3GPP_READER LOCAL_LDFLAGS += -fuse-ld=bfd LOCAL_STATIC_LIBRARIES := \ libvideoeditor_core \ libstagefright_color_conversion \ libvideoeditor_3gpwriter \ libvideoeditor_mcs \ libvideoeditor_videofilters \ libvideoeditor_stagefrightshells \ libvideoeditor_osal LOCAL_MODULE:= libvideoeditor_jni # Don't prelink this library. For more efficient code, you may want # to add this library to the prelink map and set this to true. LOCAL_PRELINK_MODULE := false LOCAL_MODULE_TAGS := eng development include $(BUILD_SHARED_LIBRARY) media/jni/mediaeditor/VideoBrowserInternal.h 0 → 100755 +131 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef VIDEO_BROWSER_INTERNAL_H #define VIDEO_BROWSER_INTERNAL_H #include "VideoBrowserMain.h" #include "M4READER_Common.h" #include "M4DECODER_Common.h" #define VIDEO_BROWSER_BGR565 #define VIDEO_BROWSER_PREDECODE_TIME 2000 /* In miliseconds */ /*---------------------------- MACROS ----------------------------*/ #define CHECK_PTR(fct, p, err, errValue) \ { \ if (M4OSA_NULL == p) \ { \ err = errValue ; \ M4OSA_TRACE1_1("" #fct "(L%d): " #p " is NULL, returning " #errValue "", __LINE__) ; \ goto fct##_cleanUp; \ } \ } #define CHECK_ERR(fct, err) \ { \ if (M4OSA_ERR_IS_ERROR(err)) \ { \ M4OSA_TRACE1_2("" #fct "(L%d): ERROR 0x%.8x returned", __LINE__,err) ; \ goto fct##_cleanUp; \ } \ else if (M4OSA_ERR_IS_WARNING(err)) \ { \ M4OSA_TRACE2_2("" #fct "(L%d): WARNING 0x%.8x returned", __LINE__,err) ; \ } \ } #define CHECK_STATE(fct, state, pC) \ { \ if (state != pC->m_state) \ { \ M4OSA_TRACE1_1("" #fct " called in bad state %d", pC->m_state) ; \ err = M4ERR_STATE ; \ goto fct##_cleanUp; \ } \ } #define SAFE_FREE(p) \ { \ if (M4OSA_NULL != p) \ { \ M4OSA_free((M4OSA_MemAddr32)p) ; \ p = M4OSA_NULL ; \ } \ } /*--- Video Browser state ---*/ typedef enum { VideoBrowser_kVBCreating, VideoBrowser_kVBOpened, VideoBrowser_kVBBrowsing } VideoBrowser_videoBrowerState; /*--- Video Browser execution context. ---*/ typedef struct { VideoBrowser_videoBrowerState m_state ; VideoBrowser_videoBrowerDrawMode m_drawmode; M4OSA_Context g_hbmp2; M4OSA_Context dc; M4OSA_Int16* g_bmPixels2; /*--- Reader parameters ---*/ M4OSA_FileReadPointer m_fileReadPtr; M4READER_GlobalInterface* m_3gpReader ; M4READER_DataInterface* m_3gpData ; M4READER_MediaType m_mediaType ; M4OSA_Context m_pReaderCtx ; M4_StreamHandler* m_pStreamHandler ; M4_AccessUnit m_accessUnit ; /*--- Decoder parameters ---*/ M4DECODER_VideoInterface* m_pDecoder ; M4OSA_Context m_pDecoderCtx ; /*--- Common display parameters ---*/ M4OSA_UInt32 m_x ; M4OSA_UInt32 m_y ; M4VIFI_ImagePlane m_outputPlane[3] ; /*--- Current browsing time ---*/ M4OSA_UInt32 m_currentCTS ; /*--- Platform dependent display parameters ---*/ M4OSA_Context m_pCoreContext ; /*--- Callback function settings ---*/ videoBrowser_Callback m_pfCallback; M4OSA_Void* m_pCallbackUserData; /*--- Codec Loader core context ---*/ M4OSA_Context m_pCodecLoaderContext; /*--- Required color type ---*/ VideoBrowser_VideoColorType m_frameColorType; } VideoBrowserContext; #endif /* VIDEO_BROWSER_INTERNAL_H */ Loading
media/jni/mediaeditor/Android.mk 0 → 100755 +92 −0 Original line number Diff line number Diff line # # Copyright (C) 2011 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ VideoEditorMain.cpp \ VideoEditorClasses.cpp \ VideoEditorOsal.cpp \ VideoEditorJava.cpp \ VideoEditorPropertiesMain.cpp \ VideoEditorThumbnailMain.cpp \ VideoBrowserMain.c LOCAL_C_INCLUDES += \ $(TOP)/frameworks/base/core/jni \ $(TOP)/frameworks/base/include \ $(TOP)/frameworks/base/include/media \ $(TOP)/frameworks/base/media/libmediaplayerservice \ $(TOP)/frameworks/base/media/libstagefright \ $(TOP)/frameworks/base/media/libstagefright/include \ $(TOP)/frameworks/base/media/libstagefright/rtsp \ $(JNI_H_INCLUDE) \ $(call include-path-for, corecg graphics) \ $(TOP)/external/opencore/extern_libs_v2/khronos/openmax/include \ $(TOP)/external/opencore/android \ $(TOP)/vendor/qcom/proprietary/qdsp6/mm-core/omxcore/inc \ $(TOP)/frameworks/base/core/jni/mediaeditor \ $(TOP)/frameworks/media/libvideoeditor/vss/inc \ $(TOP)/frameworks/media/libvideoeditor/vss/common/inc \ $(TOP)/frameworks/media/libvideoeditor/vss/mcs/inc \ $(TOP)/frameworks/media/libvideoeditor/vss/stagefrightshells/inc \ $(TOP)/frameworks/media/libvideoeditor/lvpp \ $(TOP)/frameworks/media/libvideoeditor/osal/inc LOCAL_SHARED_LIBRARIES := \ libcutils \ libutils \ libandroid_runtime \ libnativehelper \ libmedia \ libbinder \ libstagefright \ libstagefright_omx \ libsurfaceflinger_client \ libvideoeditorplayer LOCAL_CFLAGS += \ -DUSE_STAGEFRIGHT_CODECS \ -DUSE_STAGEFRIGHT_AUDIODEC \ -DUSE_STAGEFRIGHT_VIDEODEC \ -DUSE_STAGEFRIGHT_AUDIOENC \ -DUSE_STAGEFRIGHT_VIDEOENC \ -DUSE_STAGEFRIGHT_READERS \ -DUSE_STAGEFRIGHT_3GPP_READER LOCAL_LDFLAGS += -fuse-ld=bfd LOCAL_STATIC_LIBRARIES := \ libvideoeditor_core \ libstagefright_color_conversion \ libvideoeditor_3gpwriter \ libvideoeditor_mcs \ libvideoeditor_videofilters \ libvideoeditor_stagefrightshells \ libvideoeditor_osal LOCAL_MODULE:= libvideoeditor_jni # Don't prelink this library. For more efficient code, you may want # to add this library to the prelink map and set this to true. LOCAL_PRELINK_MODULE := false LOCAL_MODULE_TAGS := eng development include $(BUILD_SHARED_LIBRARY)
media/jni/mediaeditor/VideoBrowserInternal.h 0 → 100755 +131 −0 Original line number Diff line number Diff line /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef VIDEO_BROWSER_INTERNAL_H #define VIDEO_BROWSER_INTERNAL_H #include "VideoBrowserMain.h" #include "M4READER_Common.h" #include "M4DECODER_Common.h" #define VIDEO_BROWSER_BGR565 #define VIDEO_BROWSER_PREDECODE_TIME 2000 /* In miliseconds */ /*---------------------------- MACROS ----------------------------*/ #define CHECK_PTR(fct, p, err, errValue) \ { \ if (M4OSA_NULL == p) \ { \ err = errValue ; \ M4OSA_TRACE1_1("" #fct "(L%d): " #p " is NULL, returning " #errValue "", __LINE__) ; \ goto fct##_cleanUp; \ } \ } #define CHECK_ERR(fct, err) \ { \ if (M4OSA_ERR_IS_ERROR(err)) \ { \ M4OSA_TRACE1_2("" #fct "(L%d): ERROR 0x%.8x returned", __LINE__,err) ; \ goto fct##_cleanUp; \ } \ else if (M4OSA_ERR_IS_WARNING(err)) \ { \ M4OSA_TRACE2_2("" #fct "(L%d): WARNING 0x%.8x returned", __LINE__,err) ; \ } \ } #define CHECK_STATE(fct, state, pC) \ { \ if (state != pC->m_state) \ { \ M4OSA_TRACE1_1("" #fct " called in bad state %d", pC->m_state) ; \ err = M4ERR_STATE ; \ goto fct##_cleanUp; \ } \ } #define SAFE_FREE(p) \ { \ if (M4OSA_NULL != p) \ { \ M4OSA_free((M4OSA_MemAddr32)p) ; \ p = M4OSA_NULL ; \ } \ } /*--- Video Browser state ---*/ typedef enum { VideoBrowser_kVBCreating, VideoBrowser_kVBOpened, VideoBrowser_kVBBrowsing } VideoBrowser_videoBrowerState; /*--- Video Browser execution context. ---*/ typedef struct { VideoBrowser_videoBrowerState m_state ; VideoBrowser_videoBrowerDrawMode m_drawmode; M4OSA_Context g_hbmp2; M4OSA_Context dc; M4OSA_Int16* g_bmPixels2; /*--- Reader parameters ---*/ M4OSA_FileReadPointer m_fileReadPtr; M4READER_GlobalInterface* m_3gpReader ; M4READER_DataInterface* m_3gpData ; M4READER_MediaType m_mediaType ; M4OSA_Context m_pReaderCtx ; M4_StreamHandler* m_pStreamHandler ; M4_AccessUnit m_accessUnit ; /*--- Decoder parameters ---*/ M4DECODER_VideoInterface* m_pDecoder ; M4OSA_Context m_pDecoderCtx ; /*--- Common display parameters ---*/ M4OSA_UInt32 m_x ; M4OSA_UInt32 m_y ; M4VIFI_ImagePlane m_outputPlane[3] ; /*--- Current browsing time ---*/ M4OSA_UInt32 m_currentCTS ; /*--- Platform dependent display parameters ---*/ M4OSA_Context m_pCoreContext ; /*--- Callback function settings ---*/ videoBrowser_Callback m_pfCallback; M4OSA_Void* m_pCallbackUserData; /*--- Codec Loader core context ---*/ M4OSA_Context m_pCodecLoaderContext; /*--- Required color type ---*/ VideoBrowser_VideoColorType m_frameColorType; } VideoBrowserContext; #endif /* VIDEO_BROWSER_INTERNAL_H */