Skip to content

Commit 6cb3d1d

Browse files
committed
chore: rename the repo's name
1 parent ebd860b commit 6cb3d1d

20 files changed

+195
-285
lines changed

.github/workflows/cmake-x86-platform.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
OUTPUT_FILE="dependency.tgz"
3939
4040
# 将这里的URL替换为您从GitHub Release中复制的链接
41-
RELEASE_URL="https://github.com/sinterwong/android-infer-sdk/releases/download/v0.1.0-alpha/dependency-Linux_x86_64.tgz"
41+
RELEASE_URL="https://github.com/sinterwong/ai-workflow-sdk/releases/download/v0.1.0-alpha/dependency-Linux_x86_64.tgz"
4242
4343
mkdir -p "$DEST_DIR"
4444

3rdparty/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
2-
PROJECT(AndroidInfer3rdparty)
2+
PROJECT(AIWorkflow3rdparty)
33

44
FILE(MAKE_DIRECTORY ${PROJECT_INCLUDE_DIR})
55
FILE(COPY nlohmann DESTINATION ${PROJECT_INCLUDE_DIR})

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ SET(CMAKE_EXPORT_COMPILE_COMMANDS 1)
44
# Project setting
55
INCLUDE(cmake/messagecolor.cmake)
66
INCLUDE(cmake/utils.cmake)
7-
ANDROID_INFER_EXTRACT_VERSION()
7+
AI_WORKFLOW_EXTRACT_VERSION()
88

9-
PROJECT(AndroidInfer VERSION ${ANDROID_INFER_VERSION} LANGUAGES CXX)
9+
PROJECT(AIWorkflow VERSION ${AI_WORKFLOW_VERSION} LANGUAGES CXX)
1010

1111
SET(CMAKE_CXX_STANDARD 17)
1212

@@ -19,7 +19,7 @@ IF(NOT INFER_ENGINE)
1919
ENDIF()
2020

2121
MESSAGE(INFO "--------------------------------")
22-
MESSAGE(STATUS "Build AndroidInfer: ${ANDROID_INFER_VERSION}")
22+
MESSAGE(STATUS "Build AIWorkflow: ${AI_WORKFLOW_VERSION}")
2323
MESSAGE(STATUS "Build with tests: ${BUILD_TESTS}")
2424
MESSAGE(STATUS "CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}")
2525
MESSAGE(STATUS "CMAKE_CXX_STANDARD: ${CMAKE_CXX_STANDARD}")

README.md

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
# android-infer-sdk
2-
This is a cross-platform inference SDK for Android. It supports ONNX Runtime and NCNN.
1+
# ai-workflow-sdk
2+
This is a cross-platform inference SDK for AI. It supports ONNX Runtime and NCNN currently.
33

44
## Features ✨
5-
* **Cross-platform:** Supports Android.
5+
* **Cross-platform:** Supports Android and Linux.
66
* **Multiple backends:** ONNX Runtime and NCNN.
77
* **Easy to use:** Simple API for inference.
88

@@ -19,14 +19,14 @@ This is a cross-platform inference SDK for Android. It supports ONNX Runtime and
1919
1. **Link Libraries:** Symbolically link manually compiled libraries to `/repo/3rdparty/target/${TARGET_OS}_${TARGET_ARCH}` (e.g., `/repo/3rdparty/target/Linux_x86_64/opencv`).
2020
2. **Manage Dependencies:** Use `/repo/load_3rdparty.cmake` to manage the loading of your libraries.
2121
3. You can download dependencies from the following links:
22-
* [Android_aarch64](https://drive.google.com/file/d/1MLYxTwMCKGaWMq-BWhFDSxzDZ2GKy_G5/view?usp=drive_link)
23-
* [Linux_x86_64](https://drive.google.com/file/d/1Z-hRnXSbFrS9pyNn_5mCBRUK5bgQJUs7/view?usp=drive_link)
22+
* [Android_aarch64](https://github.com/sinterwong/ai-workflow-sdk/releases/download/v0.1.0-alpha/dependency-Android_aarch64.tgz)
23+
* [Linux_x86_64](https://github.com/sinterwong/ai-workflow-sdk/releases/download/v0.1.0-alpha/dependency-Linux_x86_64.tgz)
2424
* decompress it to `/repo/3rdparty/target/${TARGET_OS}_${TARGET_ARCH}`
2525

2626
## Project Structure 🏗️
2727

2828
```
29-
android-infer-sdk/
29+
ai-workflow-sdk/
3030
├── src/
3131
│ ├── api/ # interface to be provided externally
3232
│ └── ai_sdk # Implementation of api
@@ -46,5 +46,8 @@ android-infer-sdk/
4646

4747
## Roadmap 🗺️
4848

49-
- [ ] Design and implement pipeline module
50-
- [ ] Build CI
49+
- [x] Design and implement native pipeline module
50+
- [x] Build CI
51+
- [ ] Implement a demo module that combines a complete algorithm module and a pipeline module.
52+
- [ ] Implement the api interface of the SDK
53+
- [ ] Implement a more powerful AlgoManager

cmake/utils.cmake

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FUNCTION(ANDROID_INFER_extract_version)
1+
FUNCTION(AI_WORKFLOW_extract_version)
22
FILE(READ "${CMAKE_CURRENT_LIST_DIR}/src/common/version.hpp" file_contents)
33
STRING(REGEX MATCH "BASIC_VER_MAJOR ([0-9]+)" _ "${file_contents}")
44
IF(NOT CMAKE_MATCH_COUNT EQUAL 1)
@@ -17,6 +17,6 @@ FUNCTION(ANDROID_INFER_extract_version)
1717
ENDIF()
1818
SET(ver_patch ${CMAKE_MATCH_1})
1919

20-
SET(ANDROID_INFER_VERSION_MAJOR ${ver_major} PARENT_SCOPE)
21-
SET (ANDROID_INFER_VERSION "${ver_major}.${ver_minor}.${ver_patch}" PARENT_SCOPE)
20+
SET(AI_WORKFLOW_VERSION_MAJOR ${ver_major} PARENT_SCOPE)
21+
SET (AI_WORKFLOW_VERSION "${ver_major}.${ver_minor}.${ver_patch}" PARENT_SCOPE)
2222
ENDFUNCTION()

src/ai_sdk/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ ENDIF()
4949

5050
# Build Shared Library
5151
ADD_LIBRARY(ai_sdk SHARED ${CURRENT_DIR_SRCS})
52-
TARGET_COMPILE_DEFINITIONS(ai_sdk PRIVATE ANDROID_INFER_BUILD_DLL)
52+
TARGET_COMPILE_DEFINITIONS(ai_sdk PRIVATE AI_WORKFLOW_BUILD_DLL)
5353

5454
TARGET_INCLUDE_DIRECTORIES(ai_sdk PRIVATE ${DEPENDENCY_INCLUDES})
5555
TARGET_LINK_LIBRARIES(ai_sdk PRIVATE ${DEPENDENCY_LIBS})

src/ai_sdk/ai_sdk.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,47 +13,47 @@
1313
#include "ai_sdk_impl.hpp"
1414
#include <string>
1515

16-
namespace android_infer {
16+
namespace ai_workflow {
1717

18-
AndroidSDK::AndroidSDK() : impl_(std::make_unique<AndroidSDKImpl>()) {}
18+
AIWorkflowSDK::AIWorkflowSDK() : impl_(std::make_unique<AIWorkflowSDKImpl>()) {}
1919

20-
AndroidSDK::~AndroidSDK() {}
20+
AIWorkflowSDK::~AIWorkflowSDK() {}
2121

22-
ErrorCode AndroidSDK::initialize(const SDKConfig &config) {
22+
ErrorCode AIWorkflowSDK::initialize(const SDKConfig &config) {
2323
if (!impl_) {
2424
return ErrorCode::INITIALIZATION_FAILED;
2525
}
2626
return impl_->initialize(config);
2727
}
2828

29-
ErrorCode AndroidSDK::pushInput(const InputPacket &input) {
29+
ErrorCode AIWorkflowSDK::pushInput(const InputPacket &input) {
3030
if (!impl_) {
3131
return ErrorCode::INVALID_STATE;
3232
}
3333
return impl_->pushInput(input);
3434
}
3535

36-
ErrorCode AndroidSDK::calcCurrentROI(const ImageData &input, Rect &roi) {
36+
ErrorCode AIWorkflowSDK::calcCurrentROI(const ImageData &input, Rect &roi) {
3737
if (!impl_) {
3838
return ErrorCode::INVALID_STATE;
3939
}
4040
return impl_->calcCurrentROI(input, roi);
4141
}
4242

43-
ErrorCode AndroidSDK::tryGetNextOutput(OutputPacket &output) {
43+
ErrorCode AIWorkflowSDK::tryGetNextOutput(OutputPacket &output) {
4444
if (!impl_) {
4545
return ErrorCode::INVALID_STATE;
4646
}
4747
return impl_->tryGetNextOutput(output);
4848
}
4949

50-
ErrorCode AndroidSDK::terminate() {
50+
ErrorCode AIWorkflowSDK::terminate() {
5151
if (!impl_) {
5252
return ErrorCode::INVALID_STATE;
5353
}
5454
return impl_->terminate();
5555
}
5656

57-
std::string AndroidSDK::getVersion() { return "1.0.0"; }
57+
std::string AIWorkflowSDK::getVersion() { return "1.0.0"; }
5858

59-
} // namespace android_infer
59+
} // namespace ai_workflow

src/ai_sdk/ai_sdk.hpp

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,21 @@
88
* @copyright Copyright (c) 2025
99
*
1010
*/
11-
#ifndef __ANDROID_INFER_SDK_HPP__
12-
#define __ANDROID_INFER_SDK_HPP__
11+
#ifndef __AI_WORKFLOW_SDK_HPP__
12+
#define __AI_WORKFLOW_SDK_HPP__
1313
#include "api/ai_export.h"
1414
#include "api/ai_types.h"
1515
#include <memory>
1616
#include <string>
1717

18-
namespace android_infer {
18+
namespace ai_workflow {
1919

20-
class AndroidSDKImpl;
20+
class AIWorkflowSDKImpl;
2121

22-
class ANDROID_SDK_API AndroidSDK {
22+
class AI_WORKFLOW_SDK_API AIWorkflowSDK {
2323
public:
24-
AndroidSDK();
25-
~AndroidSDK();
24+
AIWorkflowSDK();
25+
~AIWorkflowSDK();
2626

2727
ErrorCode initialize(const SDKConfig &config);
2828

@@ -37,12 +37,12 @@ class ANDROID_SDK_API AndroidSDK {
3737
static std::string getVersion();
3838

3939
private:
40-
std::unique_ptr<AndroidSDKImpl> impl_;
40+
std::unique_ptr<AIWorkflowSDKImpl> impl_;
4141

42-
AndroidSDK(const AndroidSDK &) = delete;
43-
AndroidSDK &operator=(const AndroidSDK &) = delete;
42+
AIWorkflowSDK(const AIWorkflowSDK &) = delete;
43+
AIWorkflowSDK &operator=(const AIWorkflowSDK &) = delete;
4444
};
4545

46-
} // namespace android_infer
46+
} // namespace ai_workflow
4747

4848
#endif

src/ai_sdk/ai_sdk_c.cpp

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -3,70 +3,70 @@
33
#include "api/ai_types.h"
44
#include <cstring>
55

6-
ANDROID_SDK_API AndroidSDKHandle AndroidSDK_Create() {
7-
android_infer::AndroidSDK *sdk = new android_infer::AndroidSDK();
8-
return (AndroidSDKHandle)sdk;
6+
AI_WORKFLOW_SDK_API AIWorkflowSDKHandle AIWorkflowSDK_Create() {
7+
ai_workflow::AIWorkflowSDK *sdk = new ai_workflow::AIWorkflowSDK();
8+
return (AIWorkflowSDKHandle)sdk;
99
}
1010

11-
ANDROID_SDK_API void AndroidSDK_Destroy(AndroidSDKHandle handle) {
11+
AI_WORKFLOW_SDK_API void AIWorkflowSDK_Destroy(AIWorkflowSDKHandle handle) {
1212
if (handle) {
13-
android_infer::AndroidSDK *sdk = (android_infer::AndroidSDK *)handle;
13+
ai_workflow::AIWorkflowSDK *sdk = (ai_workflow::AIWorkflowSDK *)handle;
1414
delete sdk;
1515
}
1616
}
1717

18-
ANDROID_SDK_API android_infer::ErrorCode
19-
AndroidSDK_Initialize(AndroidSDKHandle handle,
20-
const android_infer::SDKConfig *config) {
18+
AI_WORKFLOW_SDK_API ai_workflow::ErrorCode
19+
AIWorkflowSDK_Initialize(AIWorkflowSDKHandle handle,
20+
const ai_workflow::SDKConfig *config) {
2121
if (!handle || !config) {
22-
return android_infer::ErrorCode::INITIALIZATION_FAILED;
22+
return ai_workflow::ErrorCode::INITIALIZATION_FAILED;
2323
}
24-
android_infer::AndroidSDK *sdk = (android_infer::AndroidSDK *)handle;
24+
ai_workflow::AIWorkflowSDK *sdk = (ai_workflow::AIWorkflowSDK *)handle;
2525
return sdk->initialize(*config);
2626
}
2727

28-
ANDROID_SDK_API android_infer::ErrorCode
29-
AndroidSDK_PushInput(AndroidSDKHandle handle,
30-
const android_infer::InputPacket *input) {
28+
AI_WORKFLOW_SDK_API ai_workflow::ErrorCode
29+
AIWorkflowSDK_PushInput(AIWorkflowSDKHandle handle,
30+
const ai_workflow::InputPacket *input) {
3131
if (!handle || !input) {
32-
return android_infer::ErrorCode::INVALID_STATE;
32+
return ai_workflow::ErrorCode::INVALID_STATE;
3333
}
34-
android_infer::AndroidSDK *sdk = (android_infer::AndroidSDK *)handle;
34+
ai_workflow::AIWorkflowSDK *sdk = (ai_workflow::AIWorkflowSDK *)handle;
3535
return sdk->pushInput(*input);
3636
}
3737

38-
ANDROID_SDK_API android_infer::ErrorCode
39-
AndroidSDK_CalcCurrentROI(AndroidSDKHandle handle,
40-
const android_infer::ImageData *input,
41-
android_infer::Rect *roi) {
38+
AI_WORKFLOW_SDK_API ai_workflow::ErrorCode
39+
AIWorkflowSDK_CalcCurrentROI(AIWorkflowSDKHandle handle,
40+
const ai_workflow::ImageData *input,
41+
ai_workflow::Rect *roi) {
4242
if (!handle || !input || !roi) {
43-
return android_infer::ErrorCode::INVALID_STATE;
43+
return ai_workflow::ErrorCode::INVALID_STATE;
4444
}
45-
android_infer::AndroidSDK *sdk = (android_infer::AndroidSDK *)handle;
45+
ai_workflow::AIWorkflowSDK *sdk = (ai_workflow::AIWorkflowSDK *)handle;
4646
return sdk->calcCurrentROI(*input, *roi);
4747
}
4848

49-
ANDROID_SDK_API android_infer::ErrorCode
50-
AndroidSDK_TryGetNextOutput(AndroidSDKHandle handle,
51-
android_infer::OutputPacket *result) {
49+
AI_WORKFLOW_SDK_API ai_workflow::ErrorCode
50+
AIWorkflowSDK_TryGetNextOutput(AIWorkflowSDKHandle handle,
51+
ai_workflow::OutputPacket *result) {
5252
if (!handle || !result) {
53-
return android_infer::ErrorCode::INVALID_STATE;
53+
return ai_workflow::ErrorCode::INVALID_STATE;
5454
}
55-
android_infer::AndroidSDK *sdk = (android_infer::AndroidSDK *)handle;
55+
ai_workflow::AIWorkflowSDK *sdk = (ai_workflow::AIWorkflowSDK *)handle;
5656
return sdk->tryGetNextOutput(*result);
5757
}
5858

59-
ANDROID_SDK_API android_infer::ErrorCode
60-
AndroidSDK_Terminate(AndroidSDKHandle handle) {
59+
AI_WORKFLOW_SDK_API ai_workflow::ErrorCode
60+
AIWorkflowSDK_Terminate(AIWorkflowSDKHandle handle) {
6161
if (!handle) {
62-
return android_infer::ErrorCode::INVALID_STATE;
62+
return ai_workflow::ErrorCode::INVALID_STATE;
6363
}
64-
android_infer::AndroidSDK *sdk = (android_infer::AndroidSDK *)handle;
64+
ai_workflow::AIWorkflowSDK *sdk = (ai_workflow::AIWorkflowSDK *)handle;
6565
return sdk->terminate();
6666
}
6767

68-
ANDROID_SDK_API const char *AndroidSDK_GetVersion() {
69-
std::string version = android_infer::AndroidSDK::getVersion();
68+
AI_WORKFLOW_SDK_API const char *AIWorkflowSDK_GetVersion() {
69+
std::string version = ai_workflow::AIWorkflowSDK::getVersion();
7070
char *c_version = (char *)malloc(version.length() + 1);
7171
if (c_version) {
7272
strcpy(c_version, version.c_str());

src/ai_sdk/ai_sdk_impl.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,32 +16,32 @@
1616
#include <opencv2/imgcodecs.hpp>
1717
#include <thread>
1818

19-
namespace android_infer {
19+
namespace ai_workflow {
2020

21-
AndroidSDKImpl::AndroidSDKImpl() {}
21+
AIWorkflowSDKImpl::AIWorkflowSDKImpl() {}
2222

23-
AndroidSDKImpl::~AndroidSDKImpl() {
23+
AIWorkflowSDKImpl::~AIWorkflowSDKImpl() {
2424
if (isRunning) {
2525
terminate();
2626
}
2727
}
2828

29-
ErrorCode AndroidSDKImpl::initialize(const SDKConfig &config) {
29+
ErrorCode AIWorkflowSDKImpl::initialize(const SDKConfig &config) {
3030
isRunning.store(true);
31-
processThread = std::thread(&AndroidSDKImpl::processLoop, this);
31+
processThread = std::thread(&AIWorkflowSDKImpl::processLoop, this);
3232
return ErrorCode::SUCCESS;
3333
}
3434

35-
ErrorCode AndroidSDKImpl::calcCurrentROI(const ImageData &input, Rect &roi) {
35+
ErrorCode AIWorkflowSDKImpl::calcCurrentROI(const ImageData &input, Rect &roi) {
3636
return ErrorCode::SUCCESS;
3737
}
3838

39-
ErrorCode AndroidSDKImpl::pushInput(const InputPacket &input) {
39+
ErrorCode AIWorkflowSDKImpl::pushInput(const InputPacket &input) {
4040
inputQueue.push(input);
4141
return ErrorCode::SUCCESS;
4242
}
4343

44-
ErrorCode AndroidSDKImpl::tryGetNextOutput(OutputPacket &output) {
44+
ErrorCode AIWorkflowSDKImpl::tryGetNextOutput(OutputPacket &output) {
4545
auto output_ = outputQueue.wait_pop_for(std::chrono::milliseconds(1000));
4646
if (!output_) {
4747
return ErrorCode::TRY_GET_NEXT_OVERTIME;
@@ -51,7 +51,7 @@ ErrorCode AndroidSDKImpl::tryGetNextOutput(OutputPacket &output) {
5151
return ErrorCode::SUCCESS;
5252
}
5353

54-
ErrorCode AndroidSDKImpl::terminate() {
54+
ErrorCode AIWorkflowSDKImpl::terminate() {
5555

5656
isRunning.store(false);
5757
processThread.join();
@@ -60,11 +60,11 @@ ErrorCode AndroidSDKImpl::terminate() {
6060
inputQueue.clear();
6161
outputQueue.clear();
6262

63-
LOG_INFOS << "AndroidSDKImpl::terminate success";
63+
LOG_INFOS << "AIWorkflowSDKImpl::terminate success";
6464
return ErrorCode::SUCCESS;
6565
}
6666

67-
void AndroidSDKImpl::processLoop() {
67+
void AIWorkflowSDKImpl::processLoop() {
6868
while (isRunning) {
6969
auto input = inputQueue.wait_pop_for(std::chrono::milliseconds(100));
7070
if (!input) {
@@ -77,4 +77,4 @@ void AndroidSDKImpl::processLoop() {
7777
}
7878
}
7979

80-
} // namespace android_infer
80+
} // namespace ai_workflow

0 commit comments

Comments
 (0)