From bc5220ea6e8104f538cd5955dfe5df6cd8d5d0c3 Mon Sep 17 00:00:00 2001 From: WangQiang Date: Tue, 19 Jul 2022 14:14:59 +0800 Subject: [PATCH] ios ok --- .vscode/settings.json | 6 +++++ mediapipe/modules/render_queue/BUILD | 26 ++++++++----------- mediapipe/modules/render_queue/OlaRender.cpp | 4 +-- .../{OlaRender.hpp => OlaRender.h} | 0 .../modules/render_queue/OlaRenderIMP.cpp | 12 ++++----- .../{OlaRenderIMP.hpp => OlaRenderIMP.h} | 2 +- .../modules/render_queue/OlaRenderManager.h | 4 +++ .../modules/render_queue/OlaRenderManager.mm | 14 ++++++++++ mediapipe/modules/render_queue/image.cpp | 8 +++++- mediapipe/modules/render_queue/image.h | 16 ++++++++---- 10 files changed, 62 insertions(+), 30 deletions(-) create mode 100644 .vscode/settings.json rename mediapipe/modules/render_queue/{OlaRender.hpp => OlaRender.h} (100%) rename mediapipe/modules/render_queue/{OlaRenderIMP.hpp => OlaRenderIMP.h} (99%) diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 000000000..e9f3a3a21 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,6 @@ +{ + "files.associations": { + "chrono": "cpp", + "ios": "cpp" + } +} \ No newline at end of file diff --git a/mediapipe/modules/render_queue/BUILD b/mediapipe/modules/render_queue/BUILD index 8182bc9da..bff9a9b79 100644 --- a/mediapipe/modules/render_queue/BUILD +++ b/mediapipe/modules/render_queue/BUILD @@ -15,10 +15,11 @@ cc_library( "image_queue.h", "image.h", "LockFreeQueue.h", - "OlaRender.hpp", - "OlaRenderIMP.hpp", + "OlaRender.h", + "OlaRenderIMP.h", ], # Use -Dverbose=-1 to turn off zlib's trace logging. (#3280) + linkstatic = True, includes = ["."], visibility = ["//visibility:public"], deps = [ @@ -31,23 +32,13 @@ cc_library( ], "//conditions:default": [], }), + alwayslink = True, ) objc_library( name = "OlaRenderLibrary", - srcs = [ - "OlaRenderManager.mm", - "image_queue.cpp", - "image.cpp", - ], - hdrs = [ - "OlaRenderManager.h", - "image_queue.h", - "image.h", - "LockFreeQueue.h", - ], visibility = ["//visibility:public"], deps = [ "//mediapipe/modules/render_queue:ios_olarender", @@ -69,21 +60,26 @@ objc_library( "Foundation", "UIKit", ], + alwayslink = True, ) ios_framework( name = "OlaRenderFramework", hdrs = [ - "OlaRenderManager.h", "image.h", "image_queue.h", "LockFreeQueue.h", + "util.h", + "macros.h", + "OlaRender.h", + "OlaRenderIMP.h", ], + # alwayslink=True, infoplists = ["Info.plist"], bundle_id = "com.ola.dartrenderplugin", families = ["iphone", "ipad"], - minimum_os_version = "11.0", + minimum_os_version = "10.0", deps = [ "//mediapipe/modules/render_queue:OlaRenderLibrary", ], diff --git a/mediapipe/modules/render_queue/OlaRender.cpp b/mediapipe/modules/render_queue/OlaRender.cpp index 28fe0a254..843a74839 100644 --- a/mediapipe/modules/render_queue/OlaRender.cpp +++ b/mediapipe/modules/render_queue/OlaRender.cpp @@ -5,12 +5,12 @@ // Created by 王韧竹 on 2022/6/17. // -#include "OlaRender.hpp" +#include "OlaRender.h" #if USE_OLARENDER #include #include #endif -#include "OlaRenderIMP.hpp" +#include "OlaRenderIMP.h" diff --git a/mediapipe/modules/render_queue/OlaRender.hpp b/mediapipe/modules/render_queue/OlaRender.h similarity index 100% rename from mediapipe/modules/render_queue/OlaRender.hpp rename to mediapipe/modules/render_queue/OlaRender.h diff --git a/mediapipe/modules/render_queue/OlaRenderIMP.cpp b/mediapipe/modules/render_queue/OlaRenderIMP.cpp index e2a4d08d9..b46dafd33 100644 --- a/mediapipe/modules/render_queue/OlaRenderIMP.cpp +++ b/mediapipe/modules/render_queue/OlaRenderIMP.cpp @@ -6,7 +6,7 @@ // -#include "OlaRenderIMP.hpp" +#include "OlaRenderIMP.h" #include "image_queue.h" #if USE_OLARENDER @@ -564,13 +564,13 @@ void OLARenderIMP::_setROI(Vec4 roi) { _mvp_matrix.scale(_roi.z, _roi.w, 1.0); -#if defined(__ANDROID__) || defined(ANDROID) +// #if defined(__ANDROID__) || defined(ANDROID) _mvp_matrix.translate(-realXOffset, realYOffset, 0.0); _mvp_matrix.translate(roiAdjusted.x, -roiAdjusted.y, 0.0); -#else - _mvp_matrix.translate(-realXOffset, -realYOffset, 0.0); - _mvp_matrix.translate(roiAdjusted.x, roiAdjusted.y, 0.0); -#endif +// #else +// _mvp_matrix.translate(-realXOffset, -realYOffset, 0.0); +// _mvp_matrix.translate(roiAdjusted.x, roiAdjusted.y, 0.0); +// #endif } GLuint OLARenderIMP::_loadShader(GLenum shaderType, const std::string &shaderString) { diff --git a/mediapipe/modules/render_queue/OlaRenderIMP.hpp b/mediapipe/modules/render_queue/OlaRenderIMP.h similarity index 99% rename from mediapipe/modules/render_queue/OlaRenderIMP.hpp rename to mediapipe/modules/render_queue/OlaRenderIMP.h index 56baedd24..189075dff 100644 --- a/mediapipe/modules/render_queue/OlaRenderIMP.hpp +++ b/mediapipe/modules/render_queue/OlaRenderIMP.h @@ -10,7 +10,7 @@ #include #include "macros.h" -#include "OlaRender.hpp" +#include "OlaRender.h" #include #if USE_OLARENDER diff --git a/mediapipe/modules/render_queue/OlaRenderManager.h b/mediapipe/modules/render_queue/OlaRenderManager.h index d81635349..c731d52b6 100644 --- a/mediapipe/modules/render_queue/OlaRenderManager.h +++ b/mediapipe/modules/render_queue/OlaRenderManager.h @@ -22,6 +22,10 @@ NS_ASSUME_NONNULL_BEGIN - (void)setRenderView:(UIView *)renderView; ++ (void) addImg; + ++(void) disposeImg; + @end NS_ASSUME_NONNULL_END diff --git a/mediapipe/modules/render_queue/OlaRenderManager.mm b/mediapipe/modules/render_queue/OlaRenderManager.mm index b4d80234c..7d6c528b9 100644 --- a/mediapipe/modules/render_queue/OlaRenderManager.mm +++ b/mediapipe/modules/render_queue/OlaRenderManager.mm @@ -9,6 +9,8 @@ #include "mediapipe/modules/render_queue/OlaRender.hpp" #include "mediapipe/modules/render_queue/image_queue.h" +#include "mediapipe/modules/render_queue/image.h" + USING_NS_OLA @@ -51,6 +53,18 @@ USING_NS_OLA } +// void addImageCache(const uint8_t *img, int len, double startX, double startY, double normalWidth, double normalHeight, + // int width, int height, uint64_t javaTime, uint64_t startT, uint64_t beforeFFi, bool exportFlag); + ++(void)addImg +{ + addImageCache(nullptr, 0, 0.0, 0.0, 0.0, 0.0, 0,0,0,0,0, false); +} ++(void)disposeImg +{ + disposeImage(); +} + - (int)render:(int64_t)frameTime textureId:(NSUInteger)inputTexture renderSize:(CGSize)size { [self resume]; diff --git a/mediapipe/modules/render_queue/image.cpp b/mediapipe/modules/render_queue/image.cpp index 7515d5a53..c1ea4e510 100644 --- a/mediapipe/modules/render_queue/image.cpp +++ b/mediapipe/modules/render_queue/image.cpp @@ -35,7 +35,13 @@ void addImageCache(const uint8_t *img, int len, double startX, double startY, do startT, beforeFFi, exportFlag); } + extern "C" __attribute__((visibility("default"))) __attribute__((used)) -void dispose() { +void disposeImage() { ImageQueue::getInstance()->dispose(); +} + +extern "C" __attribute__((visibility("default"))) __attribute__((used)) +void test() { + } \ No newline at end of file diff --git a/mediapipe/modules/render_queue/image.h b/mediapipe/modules/render_queue/image.h index 1e373d751..1b00a0a41 100644 --- a/mediapipe/modules/render_queue/image.h +++ b/mediapipe/modules/render_queue/image.h @@ -4,19 +4,25 @@ #include "image_queue.h" #include "image_queue.h" +#include -#ifdef __cplusplus +// #ifdef __cplusplus extern "C" { -#endif +// #endif + __attribute__((visibility("default"))) __attribute__((used)) void addImageCache(const uint8_t *img, int len, double startX, double startY, double normalWidth, double normalHeight, int width, int height, uint64_t javaTime, uint64_t startT, uint64_t beforeFFi, bool exportFlag); __attribute__((visibility("default"))) __attribute__((used)) -void dispose(); -#ifdef __cplusplus +void disposeImage(); + +__attribute__((visibility("default"))) __attribute__((used)) +void test(); + +// #ifdef __cplusplus } -#endif +// #endif #endif \ No newline at end of file