Sangjung Woo [Fri, 26 Jul 2019 07:00:49 +0000 (16:00 +0900)]
[C-API] Update the return value of each API
This patch updates the return value of each API by adding
'ML_ERROR_NOT_SUPPORTED' if the device is not supported
'machine_learning.inference'. Moreover, this updates nnstreamer_doc.h
file for doxygen.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Sangjung Woo [Fri, 26 Jul 2019 05:00:54 +0000 (14:00 +0900)]
[C-Api] Check feature before processing API
This patch checks the machine_learning.inference feature before
processing API by calling ml_get_feature_enabled() function. In case of
Unit test, feature checking could be skipped by calling internal API,
ml_set_feature_status().
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
wip
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Mon, 29 Jul 2019 04:00:01 +0000 (13:00 +0900)]
[Android/Api] add custom-filter callback
1. Add custom-filter in java to execute tensors data in the application.
2. Update sample code to set the custom-filter.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 26 Jul 2019 11:14:29 +0000 (20:14 +0900)]
[Android/Api] invalid data conversion
1. Fix wrong conversion of byte buffer in native.
2. Add methods to allocate buffer with native byte order.
3. Fix invalid condition to close handle.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 25 Jul 2019 06:58:21 +0000 (15:58 +0900)]
[Android/Api] refactor code
1. separate native code to each java class.
2. add common functions and definitions.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Hyoung Joo Ahn [Wed, 24 Jul 2019 08:25:59 +0000 (17:25 +0900)]
[Filter/TF] apply c_api at tensor_filter_tensorflow
change the codes of tensorflow filter to use c_api only
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Wook Song [Fri, 26 Jul 2019 06:44:08 +0000 (15:44 +0900)]
[Tests/Filter/Tensorflow] bugfix: Fix a typo and wrong if-logic
This patch fixes a critical typo and wrong if-logic in order to make the
test cases properly run when the '/etc/nnstreamer.ini' is used.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 26 Jul 2019 04:49:11 +0000 (13:49 +0900)]
[Tests/Filter/PyTorch] bugfix: Fix a typo and wrong if-logic
In order to make the test cases properly run when the
'/etc/nnstreamer.ini' is used, this patch fixes a critical typo and
wrong if-logic for such cases.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 26 Jul 2019 04:24:12 +0000 (13:24 +0900)]
[Tests/Filter/Caffer2] bugfix: Rewrite wrong if-logic
Since it is wrong that the if-logic for the test cases using
'/etc/streamer.ini', the tests are always terminated before even
started. This patch fixes this bug.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 26 Jul 2019 04:17:10 +0000 (13:17 +0900)]
[Tests/Filter/Caffe2] bugfix: Fix a typo
This patch fixes a critical typo in the runTest script. In order to run
test cases using '/etc/nnstreamer.ini', 'ini_path' should be replaced
with 'ini_file'.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Jaeyun [Thu, 25 Jul 2019 07:14:17 +0000 (16:14 +0900)]
[Filter] condition to check model
Prevent error case if filter framework does not need a model file.
Add a flag in nnfw struct and change condition to check model in transform callback.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 25 Jul 2019 07:11:33 +0000 (16:11 +0900)]
[Test] free string
free strings after getting the pad list in testcase.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Wook Song [Fri, 24 May 2019 04:45:53 +0000 (13:45 +0900)]
[Conf] Handle the case of using the default 'sysconfdir' value of meson
Since the default value of 'sysconfdir' in the Meson build system is
just 'etc' instead of '/etc', NNSTREAMER_CONF_FILE could be set to wrong
path when the default value is used. This patch fixes this issue.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 25 Jul 2019 02:45:48 +0000 (11:45 +0900)]
[Tests/CustomFilter] Fix a bug in code for checking existence of OpenCV
This patch fixes a minor bug in the code for checking existence of
OpenCV libraries.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Jaeyun [Fri, 19 Jul 2019 09:22:26 +0000 (18:22 +0900)]
[Android/Sample] add sample code to use library
Add sample code to use nnstreamer library.
This sample includes basic example to run the single-shot and pipeline examples repeatedly.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 10 Jul 2019 11:31:14 +0000 (20:31 +0900)]
[Android/Api] api base
Update files for android-java api.
- initial commit to add android java api set.
- single-shot / pipeline functions.
- data callback from sink node in pipeline api.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 19 Jul 2019 06:42:50 +0000 (15:42 +0900)]
[Decoder/Sub] build static lib
change font file in decoder-subplugins to build static library.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jijoong.moon [Fri, 14 Jun 2019 04:23:35 +0000 (13:23 +0900)]
[ANDROID] Built as Shared Library with tensorflow-lite
In order to build nnstreamer shared libraries including
sub-plugins (decoder, filters), the android.mk file is
restructured. Becuse gstreamer building blocks list for nnstreamer might be
required for static build and android application build, it is moved
to nnstreamer.mk.
If you bulid libnnstreamer.so using this android.mk, gstreamer shared
libries should be prepared. Please refere "Build Gstreamer full source
based Android rootFS with Cerbero" in
https://github.com/nnsuite/nnstreamer-example/tree/master/android.
Once the build is finished successfully, you can find libnnstreamer.so
and gstreamer shared libraries in libs/$TARGET_ARCH/ which is listed
in nnstreamer.mk under the name of "NNSTREAMER_BUILDING_BLOCK_LIST".
you can use these to build your own android application.
New script for tensorflow-lite tensor filter library is added. If
there is not tflite source, "prepare_tflite.sh" will download and
prepare the external packages of tflite. Using these source code,
android.mk make tflite static library and use it to build
libnnstreamer_filter_tensorflow-lite.so (which includes static
tensorflowlite.a for android of course)
If you want to build android application statically, you could just use the
macro defined in nnstreamer.mk.
Build NNStreamer as Shared Library.
- Gstreamer Shared Libraries : Cerbero
: Download and build by yourself
- Tensorflow-lite : If TENSORFLOW_LITE Macro is not defined,
NNStreamer is going to download and configure
--> static lib
- NNStreamer : libnnstreamer.so
- NNStreamer tflite : libnnstreamer_filter_tensorflow-lite.so
- NNStreamer decoder: libnnstreamer_decoder_direct_video.so
libnnstreamer_decoder_bounding_boxes.so
libnnstreamer_decoder_image_labeling.so
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Jaeyun [Mon, 22 Jul 2019 09:38:26 +0000 (18:38 +0900)]
[Sink] remove unnecessary functions
use basesink default and remove unnecessary functions.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Fri, 19 Jul 2019 09:45:14 +0000 (18:45 +0900)]
[C-API] check gstreamer initialization status in ml_single_open()
Before calling gstreamer function, this patch checks its initialization
status by calling gst_init_check() in ml_single_open().
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Wook Song [Mon, 22 Jul 2019 05:48:59 +0000 (14:48 +0900)]
[Tests/Filter/TFLite] bugfix: Fix wrong if-logic
This patch fixes wrong if-logic that results in termination of the test
without running the gstTest code when /etc/streamer.ini is used.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Mon, 22 Jul 2019 05:37:41 +0000 (14:37 +0900)]
[Tests/Filter/TFLite] bugfix: Correct a critical typo
This patch corrects a critical typo by replacing 'ini_path' with
'ini_file'. Note that the 'ini_file' variable is required to run the
test case when '/etc/nnstreamer.ini' is used.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Mon, 22 Jul 2019 05:12:10 +0000 (14:12 +0900)]
[Tests/Decoder/ImageLabeling] bugfix: Fix wrong if-logic
This patch fixes wrong if-logic that leads to always skipping the
gstTest code line when /etc/streamer.ini is used.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Mon, 22 Jul 2019 02:26:25 +0000 (11:26 +0900)]
[Tests/Decoder/ImageLabeling] bugfix: Correct critical typo
When the unit tests for image labeling decoder is run using
/etc/nnstreamer.ini, it would be stuck because of a critical typo in
the variable indicating /etc/nnstreamer. This patch fixes this issue.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Hyoung Joo Ahn [Fri, 12 Jul 2019 07:54:57 +0000 (16:54 +0900)]
[Filter/Tensorflow] apply a new constructor for TFBuffer
the different constructor is applied according to the version of TF
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Sangjung Woo [Fri, 19 Jul 2019 09:08:56 +0000 (18:08 +0900)]
[Tizen/Api] add smack label for tensor filter
Tensor filters such as libnnstreamer_filter_tensorflow-lite.so does not
have a smack label, smack deny occurs when accessing it . This patch fixes
that bug.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
MyungJoo Ham [Thu, 18 Jul 2019 10:40:11 +0000 (19:40 +0900)]
[Dist/Tizen] Disable tensorflow (non-lite) for Tizen
With the Tensorflow update from 1.09 to 1.13 @ Tizen,
we have decided to drop tensorflow (non-lite).
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Sangjung Woo [Thu, 18 Jul 2019 10:20:51 +0000 (19:20 +0900)]
[C-Api] fix memory leak bug
Since developers can reduce the number of Tensors by calling
ml_tensors_info_set_count(), it causes the memory leak when invoking
ml_tensors_info_free() and ml_tensors_data_destroy(). This patch fixes
that bug by checking all possible elements (i.e. ML_TENSOR_SIZE_LIMIT).
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Wed, 17 Jul 2019 06:56:30 +0000 (15:56 +0900)]
[C-Api] fix error to run pipeline
1. return valid error code when opening single-shot model.
2. When called destroy() in pipeline, remove all callbacks before changing pipeline state.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 15 Jul 2019 04:58:50 +0000 (13:58 +0900)]
[C-Api] free element handle
Add code to free pipeline element and hash-table.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Hyoung Joo Ahn [Fri, 12 Jul 2019 06:09:45 +0000 (15:09 +0900)]
[Filter/TF] fix build conflict with TF version 1.13.1
overide a specific method at the specific version of TF
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Sangjung Woo [Thu, 11 Jul 2019 05:34:37 +0000 (14:34 +0900)]
[C-Api] Add NNFW enum for future use
This patch newly adds the ML_NNFW_TYPE_NNFW enumeration for future use
of NNFW.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Wed, 10 Jul 2019 08:23:33 +0000 (17:23 +0900)]
[C-Api/Single] validate input data
Add code to validate input data in single-invoke function.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Thu, 11 Jul 2019 02:07:21 +0000 (11:07 +0900)]
[C-API] Update doxygen for Tizen API
This patch updates the feature name of Tizen API and its related
documentation. Detailed information is as below.
* NNStreamer -> Single / Pipeline without NNStreamer
* Newly add the 2 feature keys (machine_learning &
machine_learning.inference)
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Tue, 9 Jul 2019 03:22:25 +0000 (12:22 +0900)]
[C-Api/Android] add build path for c-api
define path of c-api for android build
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 5 Jul 2019 05:57:29 +0000 (14:57 +0900)]
[API] fix typo in doc header
update doc-header file (fix typo and minor changes)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 3 Jul 2019 04:13:48 +0000 (13:13 +0900)]
[Doc] fix typo
Add PR to fix typo (nerual > neural)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Fri, 5 Jul 2019 08:48:49 +0000 (17:48 +0900)]
[C-Api] Update the doc comment about Tizen privilege.
This patch updates the the doc comment about Tizen privilege.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Thu, 4 Jul 2019 07:54:34 +0000 (16:54 +0900)]
[C-Api] callback for pipeline state
Add callback to notify the state change.
If it is required to get the state, add callback when constructing the pipeline.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Thu, 4 Jul 2019 06:52:45 +0000 (15:52 +0900)]
[C-Api] free data handle in src node
If buf policy is auto-free, free data handle for each case.
Also, added code to remove duplicated code when constructung the pipelie.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Thu, 4 Jul 2019 02:40:20 +0000 (11:40 +0900)]
[C-Api] Modify API names and its comments
This patch modify API names and its comments to comply with API Guide.
Detailed items are as below.
* Modify the comments to comply with API Guide
* ml_single_inference() -> ml_single_invoke()
* ml_pipeline_src_put_handle () -> ml_pipeline_src_release_handle ()
* ml_pipeline_switch_put_handle () -> ml_pipeline_switch_release_handle ()
* ml_pipeline_valve_put_handle () -> ml_pipeline_valve_release_handle ()
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Wed, 3 Jul 2019 11:06:54 +0000 (20:06 +0900)]
[C-Api] change function name
Change function name rule.
(remove _util and add prefix _info/_data)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 3 Jul 2019 04:25:02 +0000 (13:25 +0900)]
[C-API] Update the comments and the name of parameter
This patch updates the comments and the name of parameter to comply with
C-API review process.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Wed, 3 Jul 2019 09:04:37 +0000 (18:04 +0900)]
[C-Api] remove unnecessary local value
1. remove unnecessary local variable in pipe api
2. remove unnecessary buffer count in testcases
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 28 Jun 2019 11:34:36 +0000 (20:34 +0900)]
[C-Api] handle for tensors data instance
1. Moved tensors-data structure to private header.
2. Add handle for tensors-data instance and refactor related functions.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 26 Jun 2019 08:25:32 +0000 (17:25 +0900)]
[C-Api] tensor meta handle
As we discussed, tensors metadata in c-api changed with info-handle instance.
1. alloc and destory functions are added for tensors-info handle.
2. refactors all functions and testcases with metadata handle.
3. update api description.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 26 Jun 2019 06:53:03 +0000 (15:53 +0900)]
[C-Api] check nnfw with file extension
Check given model file has valid file extension.
If the param nnfw is unknown and file ext is valid, determine fw with the ext.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 17 Jun 2019 08:10:29 +0000 (17:10 +0900)]
[C-Api/Deb] build c-api
add capi in nnstreamer debpkg.
TODO : consider to separate api pkg
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 17 Jun 2019 04:18:19 +0000 (13:18 +0900)]
[Test/C-Api] test failure case
Fix test fail cases in local.
1. caps string to appsrc (sets invalid caps)
2. set default root dir in c-api testcases
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
jijoong.moon [Tue, 14 May 2019 04:58:49 +0000 (13:58 +0900)]
[DECODER] Add Pose Estimation Decoder
In order to display the result from pose estimaition, we may need
decoder. The output format of pose estimation is [14, o_Width,
o_Height, 1]. 14 means number of joint of human bone structure, top,
neck, r_shoulder, r_elbow, r_wrist, l_shoulder, l_elbow, l_wrist,
r_hip, r_knee, r_ankle, l_hip, l_knee, l_ankle.
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: jijoong.moon <jijoong.moon@samsung.com>
Jaeyun [Wed, 12 Jun 2019 03:43:11 +0000 (12:43 +0900)]
[Tizen/Api] support tensorflow model in singleshot
1. add tensorflow pipeline in singleshot
2. testcase with tensorflow speech cmd model
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 14 Jun 2019 11:37:17 +0000 (20:37 +0900)]
[C-API] appsink function in old version
gst_app_sink_try_pull_sample is available at ver 1.10.
check minor version and get buffer from appsink with gst_app_sink_pull_sample.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Fri, 14 Jun 2019 02:18:06 +0000 (11:18 +0900)]
[Conf] If CONFFILE path is not available, use the default
If conffile path is not available in envvar, use the default.
We had this feature before and... somehow, this feature
has been removed at some point.
I'm reviving this feature as this makes errors in some systems.
I've added g_assert to avoid similar errors without
detected at the point of failure.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Fri, 21 Jun 2019 02:31:36 +0000 (11:31 +0900)]
[Common] parse empty name string
if name string is empty, set null str.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Fri, 21 Jun 2019 04:51:25 +0000 (13:51 +0900)]
[Meson] protobuf dependency
define protobuf dependency and check this dep with tf and caffe2 option.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Hyoung Joo Ahn [Mon, 17 Jun 2019 12:40:05 +0000 (21:40 +0900)]
[Unittest/Caffe2] add the unittest of caffe2
with the toy example, test caffe2 as the framework of tensor_filter
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Hyoung Joo Ahn [Mon, 17 Jun 2019 05:46:58 +0000 (14:46 +0900)]
[Filter/Caffe2] add caffe2 at the nnstreamer build process
make nnstreamer build process include the caffe2.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Sangjung Woo [Mon, 17 Jun 2019 10:00:05 +0000 (19:00 +0900)]
[Tizen/API] Fix the error list of ACR check script.
This patch fixes the error list of ACR check script.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Fri, 14 Jun 2019 06:32:00 +0000 (15:32 +0900)]
[Svace] fix svace issues
update files to fix svace issues
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Dongju Chae [Mon, 17 Jun 2019 02:09:23 +0000 (11:09 +0900)]
[Svace] fix save issues for python filter
Update files to fix svace issue
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
MyungJoo Ham [Mon, 17 Jun 2019 09:34:59 +0000 (18:34 +0900)]
Unittest-coverage: apply the changed paths of CAPI files
CAPI files have been moved from tizen-capi to api/capi.
Note that C-API will support all other general Linux distros
and we will support C# and Java APIs as well.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Fri, 14 Jun 2019 02:16:54 +0000 (11:16 +0900)]
[Filters] Emit more friendly error messages.
When they cannot load a model file due to file types,
don't just tell you cannot load it.
Tell more about it along with the file path.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Wed, 12 Jun 2019 03:33:44 +0000 (12:33 +0900)]
[Common/Test] minor update
1. check string len while checking data type.
2. unref pad instance in testcases.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Fri, 14 Jun 2019 04:06:38 +0000 (13:06 +0900)]
[CAPI] Beautify CAPI Generality Support
While the default CAPI header is focussed on Tizen,
if "-Denable-tizen=false", the CAPI header becomes
non-Tizen, which does not require any Tizen packages.
1. Beautify by not using .spec for sed (support non-RPM packages)
2. Beautify by not using unnecessary header in nnstreamer.h
3. Beautify by adding enable-tizen meson option.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Fri, 14 Jun 2019 04:05:39 +0000 (13:05 +0900)]
[Test/CAPI] Fix sign-ness mismatch
Add 'U' postfix for numbers required to be unsigned.
This fixes CAPI unittest build errors in Ubuntu.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Thu, 13 Jun 2019 03:29:02 +0000 (12:29 +0900)]
[Subplugin] define function to find subplugin
1. add definition to find filter/decoder sub-plugins instance.
2. check duplicated name when registering sub-plugin.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Thu, 13 Jun 2019 06:20:01 +0000 (15:20 +0900)]
[Tizen/Api] Reorganize API directory
Since previous 'tizen-api' directory only supports Tizen CAPI, this
patch reorganizes directory structure to support multiple platform APIs
as below.
NNStreamer - api - capi
` java
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Sangjung Woo [Thu, 13 Jun 2019 06:01:51 +0000 (15:01 +0900)]
[Tizen/Api] Remove Tizen dependency from CAPI set
Since NNStreamer CAPI will be used for Android, Tizen and Linux distro,
this patch removes the Tizen dependency from API set. Detailed works are
as below.
* Support multiple Log environment such as Android, Tizen and Linux
distro instead of dlog API.
* Use the standard error code instead of that of Tizen.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Hyoung Joo Ahn [Wed, 5 Jun 2019 09:02:45 +0000 (18:02 +0900)]
[Filter/Caffe2] initial commit for caffe2
it will be updated after packaging pytorch properly and example & test also
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Jaeyun [Mon, 10 Jun 2019 06:55:16 +0000 (15:55 +0900)]
[Tizen/Api] add common utilities and change name prefix
1. Define new functions to handle tensor data and refactor api functions.
2. Update api description.
3. Add testcases using custom filter.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 10 Jun 2019 00:57:16 +0000 (09:57 +0900)]
[Tizen/Api] change callback param for tensors
Change tensors data struct and set callback with tensors data (sink and appsrc)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Dongju Chae [Thu, 16 May 2019 03:31:07 +0000 (12:31 +0900)]
[Source/AMC] Source element for Android MediaCodec (AMC)
This commit implements a source element for Android MediaCodec (AMC)
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Hyoung Joo Ahn [Mon, 10 Jun 2019 05:41:50 +0000 (14:41 +0900)]
[Typo] fix a minor typo of comment
fix a minor typo of comment
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
MyungJoo Ham [Thu, 6 Jun 2019 12:49:20 +0000 (08:49 -0400)]
[Dist] typo fix $ --> %
% is the macro character in RPM/spec. $ is a typo.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Tue, 4 Jun 2019 09:45:21 +0000 (18:45 +0900)]
[Test] move data files to model directory
Move files to data directory and remove duplicated.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 5 Jun 2019 11:31:26 +0000 (20:31 +0900)]
[Tizen/Api] change name prefix
change function name and param prefix to ml
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Hyoung Joo Ahn [Mon, 27 May 2019 07:37:15 +0000 (16:37 +0900)]
[Filter] add the model path parser
Since caffe2 require 2 model files(init, prediction) the model path option should handle the complicated input string
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Parichay Kapoor [Wed, 15 May 2019 04:50:57 +0000 (13:50 +0900)]
[pytorch] Added pytorch subplugin support
1. Added pytorch subplugin support to run inference of networks
2. Added support to run on gpu for the inference
3. Added test cases for the subplugin
Added a sample file torch saved file used to test the code
V2:
Add pytorch in nnstreamer.mk
install pytorch tests
add nnstreamer-pytorch package
V3:
Disable pytorch for tizen build until its supported
V4:
Disable pytorch tests when disabling pytorch builda
V5:
Corrected variable in spec file
Explanation for enable-pytorch-use-gpu option
V6:
Using mnist based unit-test case instead of imagenet based model
to reduce the model file size in use
V7:
Using input and output properties of tensorfilter than specify in
the model file
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Sangjung Woo [Wed, 5 Jun 2019 08:10:32 +0000 (17:10 +0900)]
Update .gitignore to ignore files generated by Visual Studio
This patch updates .gitignore to exclude files generated by Visual
Studio for C# APIs.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Tue, 4 Jun 2019 07:49:55 +0000 (16:49 +0900)]
[Tizen/Api] basic implementation for single shot
Add base code for single shot model.
Update .spec and add simple testcases.
TODO: update name rules (function names and common util)
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Mon, 3 Jun 2019 07:58:49 +0000 (16:58 +0900)]
[Tizen/API] Use function instead of API in documentation
API review scripts recommands to use the word 'function' instead of
'API' in documentation as below. So this patch fixes this issue.
Are you sure "API" in this case shouldn't be "function"? If this
sentence refers to a single function, not a set of functions, it should
be "function".
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Sangjung Woo [Mon, 3 Jun 2019 07:48:33 +0000 (16:48 +0900)]
[Tizen/API] Fix the broken link
This patch fixes broken links on the doxygen documentation.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Mon, 3 Jun 2019 11:16:56 +0000 (20:16 +0900)]
[Tizen/Api] add appsink to handle sink event
1. Register the appsink as a sink element. User can register appsink and tensor-sink as a sink element.
2. Move logging macro to private header.
3. Add testcases to test appsink element.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Wook Song [Thu, 30 May 2019 07:52:12 +0000 (16:52 +0900)]
[Filter/MvNCSDK] Write callbacks for framework invocation
This patch fills the body of the callback function for invoke_NN, which
invokes the framework with the given network model.
Signed-off-by: Wook Song <wook16.song@samsung.com>
MyungJoo Ham [Fri, 29 Mar 2019 05:00:35 +0000 (14:00 +0900)]
[WIP. Tizen/API] Simple Single-Shot Inference Low-Level API
This is quite similar with CoreML/MLModel API, which is the
low-level API for iOS CoreML.
With this, application developers may invoke "inferences"
of a given model with a single data frame without
any pre/post-processings.
The corresponding pipeline will be:
app_src --> tensor_filter --> tensor_sink
with 0/1 framerate.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Fri, 29 Mar 2019 05:00:04 +0000 (14:00 +0900)]
[Typdef] Update doxygen for GstTensorInfo
name entry is not mandatory for all cases.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Thu, 30 May 2019 08:27:45 +0000 (17:27 +0900)]
[Meson] update version info
update required meson version to 0.42
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Dongju Chae [Fri, 31 May 2019 05:03:24 +0000 (14:03 +0900)]
[Filter/Python] Fix missing initialization of class members
This commit updates missing initializations of class member variables
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Jaeyun [Thu, 30 May 2019 07:49:00 +0000 (16:49 +0900)]
[Test/Api/Tizen] add testcases for params and element
Add testcases for function params and element switch
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Sangjung Woo [Thu, 30 May 2019 05:58:16 +0000 (14:58 +0900)]
[Tizen/API] Remove unnecessary todo and TBD items
In order to pass the ACR process, unnecessary information such as `TBD`
or `todo` should be removed in Public header. This patch removes those
things.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Wed, 29 May 2019 08:01:02 +0000 (17:01 +0900)]
[Api/Tizen] handle invalid param
check the error case of invalid params.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Wed, 29 May 2019 04:49:53 +0000 (13:49 +0900)]
[Api/Tizen] change param and enum
change function param names and enums for acr process
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Wed, 29 May 2019 18:53:21 +0000 (14:53 -0400)]
Development of 0.2.1 RC1 started
After the release of 0.2.0, 0.2.1-rc1 is started.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 27 May 2019 10:09:30 +0000 (19:09 +0900)]
Release of NNStreamer 0.2.0
0.1.3 RC has become 0.2.0 as this version is accepted by Tizen 5.5 M1.
- A lot of security issues and bugs fixed (for Tizen 5.5 M1 release)
- Tizen Public C-API Pipeline for 5.5 M1
- Tizen Public C-API SingleShot Prototype
- Yocto/Openembedded layer released
- ROS sink/src
- IIO support
- Android source draft
- Python custom filter
- Android sample application released
- Tensorflow-lite / NNAPI support
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Tue, 28 May 2019 09:38:20 +0000 (18:38 +0900)]
[Api/Tizen] unref object after usage
unref caps and pad data after getting each object
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Tue, 28 May 2019 08:56:44 +0000 (17:56 +0900)]
[Api/Tizen] add macro for logging
add macros for dlog message and replace all dlog_print()
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Tue, 28 May 2019 08:30:47 +0000 (17:30 +0900)]
[Api/Tizen] change function name
change function name and indent rule in tizen-capi.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Wook Song [Mon, 27 May 2019 05:22:13 +0000 (14:22 +0900)]
[Filter/MvNCSDK] Write callbacks for getting dimensions of in/out tensor
This patch fills the bodies of callback functions, getInputDimension and
getOutputDimensions, which return the dimension information of input and
output tensor of this filter.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 23 May 2019 08:55:22 +0000 (17:55 +0900)]
[Filter/MvNCSDK] Implement callbacks for open/close of filter framework
This patch implements callback functions for opening and closing
GstTensorFilterFramework for the Intel Movidius Neural Compute Stick
sub-plugin of tensor_filter.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Jaeyun [Mon, 13 May 2019 06:42:39 +0000 (15:42 +0900)]
[Conf] add option to enable symbolic link
In nnstreamer ini, add new option to enable/disable symbolic link.
Add internal function to check a library is available with symlink option.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>