platform/upstream/nnstreamer.git
4 years ago[C-API] Support MVNC with Single API
MyungJoo Ham [Tue, 12 Nov 2019 02:05:16 +0000 (11:05 +0900)]
[C-API] Support MVNC with Single API

Let C-API users use Intel NCS.

CC: Wook Song <wook16.song@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[Dist] Add Tizen Sensord (sensor-fw) Option
MyungJoo Ham [Thu, 7 Nov 2019 09:30:22 +0000 (18:30 +0900)]
[Dist] Add Tizen Sensord (sensor-fw) Option

Enable Tizen Sensord (/platform/core/system/sensord.git)

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[Typo] fix typos of tensor_converter.c
HyoungJoo Ahn [Mon, 11 Nov 2019 10:26:14 +0000 (19:26 +0900)]
[Typo] fix typos of tensor_converter.c

fix typos of the `tensor_converter.c` file

Signed-off-by: HyoungJoo Ahn <hello.ahn@samsung.com>
4 years ago[Tests/Source/IIO] Fix defects (CWE-637) found from Coverity
Wook Song [Fri, 8 Nov 2019 15:06:22 +0000 (00:06 +0900)]
[Tests/Source/IIO] Fix defects (CWE-637) found from Coverity

This patch fixes defects related to CWE-637 found from Coverity.

Coverity-scan: CID-263387, CID-263398, CID-263366, CID-263406,
               CID-263410, CID-263372, CID-263390, CID-263361,
       CID-263414

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years agoAdded a badge to display current coverity defects
Geunsik Lim [Fri, 8 Nov 2019 07:26:49 +0000 (16:26 +0900)]
Added a badge to display current coverity defects

This commit is to append a badge to display current defects of Coverity Scan.

**Changelog**
   * Added a badge to display the number of the Coverity Scan defects
   * Added a badge to display the repository size
   * Added a badge to display the Github issues
   * Added a badge to display the PRs

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
4 years ago[android] Added unittests for android API
Parichay Kapoor [Wed, 6 Nov 2019 10:47:07 +0000 (19:47 +0900)]
[android] Added unittests for android API

Added unittests for android API

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[android] Add flexible dimensions support for Android API
Parichay Kapoor [Fri, 25 Oct 2019 10:23:57 +0000 (19:23 +0900)]
[android] Add flexible dimensions support for Android API

Added flexible dimensions support for Android API

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[caffe2] Do first run with try/catch
Parichay Kapoor [Thu, 7 Nov 2019 02:25:25 +0000 (11:25 +0900)]
[caffe2] Do first run with try/catch

First run after configuring the tensor filter with caffe2 framework is now run with a try/catch

Check #180 for more details

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Android] prepare native libs for c-api
Jaeyun [Mon, 4 Nov 2019 10:12:10 +0000 (19:12 +0900)]
[Android] prepare native libs for c-api

update build script to provide native libraries using nnstreamer c-api.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Style] There is a file in DOS format!
MyungJoo Ham [Fri, 8 Nov 2019 03:49:46 +0000 (12:49 +0900)]
[Style] There is a file in DOS format!

Applied dox2unix to a file with DOS text format.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[Test/Api] tc with unavailable nnfw
Jaeyun [Wed, 6 Nov 2019 09:13:16 +0000 (18:13 +0900)]
[Test/Api] tc with unavailable nnfw

Add testcase.
If tensorflow is not supported, opening tf model (single api) returns not-supported.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[CodeClean] reduce complexity
Jaeyun [Wed, 30 Oct 2019 10:08:08 +0000 (19:08 +0900)]
[CodeClean] reduce complexity

1. declare function to iterate the elements in pipeline description
2. fix api declaration (params in same line)

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[android] Updated README.md
Parichay Kapoor [Wed, 6 Nov 2019 08:28:48 +0000 (17:28 +0900)]
[android] Updated README.md

Added updates to README.md for setting up and building nnstreamer API for android

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[filter/nnfw] Unittest for invoke
Parichay Kapoor [Tue, 5 Nov 2019 02:20:47 +0000 (11:20 +0900)]
[filter/nnfw] Unittest for invoke

Added unittest for invoke for nnfw tensor filter extension
Added unittest for get input/output dimensions
Corresponding bug fixes are also added

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Api/Single] replace single implementation
Jaeyun [Fri, 25 Oct 2019 09:41:36 +0000 (18:41 +0900)]
[Api/Single] replace single implementation

Replace the single api without pipeline, remove old version and clear build script.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[nnfw] Adding nnfw base test for verification
Parichay Kapoor [Tue, 22 Oct 2019 04:49:45 +0000 (13:49 +0900)]
[nnfw] Adding nnfw base test for verification

Added nnfw base testing scenario for verification along with a few bug fixes
NNFW repo has been updated to test with cpu backend
However, that patch has not been uploaded to main tizen repo
So, in order to test this patch, clone nnfw repo and build locally
Also, building nnfw repo installs libbackend_acl_cl.so in /usr/lib in emulator
Delete this file to test nnstreamer with cpu backend with nnfw successfully

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Filter/Custom-Easy-C] Prototype of Custom-Easy Tensor Function
MyungJoo Ham [Thu, 24 Oct 2019 10:51:31 +0000 (19:51 +0900)]
[Filter/Custom-Easy-C] Prototype of Custom-Easy Tensor Function

This allows to define a custom-filter (C) easily.
This will be especially helpful for C/C++ application writers.
The same approach may be implemented for C#/Java for Tizen.NET and Android app writers.

Change-Id: Id1ff43424283c217c0688e91b919ade99e3cc134
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[Doc] Guide: how to write .NET Application
Sangjung Woo [Thu, 17 Oct 2019 07:10:16 +0000 (16:10 +0900)]
[Doc] Guide: how to write .NET Application

This patch newly adds the guide for writing .NET Application with
Machine Learning APIs.

Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
4 years ago[Doc] Update document
gichan-jang [Mon, 28 Oct 2019 05:54:08 +0000 (14:54 +0900)]
[Doc] Update document

Update document for planned feature.

Signed-off-by: gichan-jang <gichan2.jang@samsung.com>
4 years ago[CAPI/DOCS] upload the first version of guide doc
HyoungJoo Ahn [Thu, 17 Oct 2019 12:17:57 +0000 (21:17 +0900)]
[CAPI/DOCS] upload the first version of guide doc

this is the first version of guide doc

Signed-off-by: HyoungJoo Ahn <hello.ahn@samsung.com>
4 years ago[Android/Api] enum for pipeline type
Jaeyun [Tue, 29 Oct 2019 02:29:56 +0000 (11:29 +0900)]
[Android/Api] enum for pipeline type

define enum for pipeline and element type, remove string compare.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Api] error code for no-mem
Jaeyun [Mon, 28 Oct 2019 11:04:32 +0000 (20:04 +0900)]
[Api] error code for no-mem

define error code for no-mem case.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Meson] Refactor the logic that checks dependencies on numpy
Wook Song [Mon, 28 Oct 2019 01:17:53 +0000 (10:17 +0900)]
[Meson] Refactor the logic that checks dependencies on numpy

This patch refactors the logic that checks dependencies on numpy.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[Android] set library name in build script
Jaeyun [Fri, 25 Oct 2019 04:09:56 +0000 (13:09 +0900)]
[Android] set library name in build script

change the build option 'lite' and add library name with given options.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Coverage] source path for coverage report
Jaeyun [Thu, 24 Oct 2019 08:23:56 +0000 (17:23 +0900)]
[Coverage] source path for coverage report

fix the cpp filter-subplugin path for test coverage report.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[single] More inline functions for flexible dimensions
Parichay Kapoor [Mon, 21 Oct 2019 10:28:44 +0000 (19:28 +0900)]
[single] More inline functions for flexible dimensions

Added extra inline funcitons to provide easier API for dyanmic input dimensions

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Filter/Custom] Fix compiler complaints
MyungJoo Ham [Fri, 25 Oct 2019 06:23:08 +0000 (15:23 +0900)]
[Filter/Custom] Fix compiler complaints

Recent TAOS-CI/Android complains:

.../tensor_filter_custom.c: In function 'custom_loadlib':
.../tensor_filter_custom.c:95:15: warning: assignment discards 'const' qualifier from pointer target type
   dlsym_error = dlerror ();
               ^

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[Build] Include pip include path to find numpy
Injae Kang [Fri, 25 Oct 2019 11:31:29 +0000 (20:31 +0900)]
[Build] Include pip include path to find numpy

When numpy is installed using pip, meson couldn't find
numpy/arrayobject.h

I included pip include path to find numpy.

This patch resolves #1805.

Signed-off-by: Injae Kang <abcinje@gmail.com>
4 years ago[single] unittest for flexible dimension with tflite
Parichay Kapoor [Mon, 21 Oct 2019 04:18:14 +0000 (13:18 +0900)]
[single] unittest for flexible dimension with tflite

Added unittest for flexible dimension with tflite
Added some bug fixes which were missed from previous commits due to commit over-write

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[C-API] Update comment about tizen_error.h
Wook Song [Thu, 24 Oct 2019 14:57:18 +0000 (23:57 +0900)]
[C-API] Update comment about tizen_error.h

This patch updates comment about tizen_error.h in the C-API header.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[API] Remove script and patch files no longer needed
Wook Song [Thu, 24 Oct 2019 14:54:50 +0000 (23:54 +0900)]
[API] Remove script and patch files no longer needed

After the mock tinze_error.h is added, the script and patch files for
modification nnstreamer.h at build time are no longer needed. This patch
removes those files as well.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[API/Android] Modify build script to use the mock tizen_error header
Wook Song [Thu, 24 Oct 2019 14:49:10 +0000 (23:49 +0900)]
[API/Android] Modify build script to use the mock tizen_error header

This patch modifies the build script for Android API to use mock
tizen_error.h, recently added.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[Tests/Meson] Add missing line continuation
Wook Song [Mon, 21 Oct 2019 15:10:35 +0000 (00:10 +0900)]
[Tests/Meson] Add missing line continuation

In the meson build script, there are missing line continuations that
break building. This patch fixes this issue.

Related to https://github.com/mesonbuild/meson/issues/4720
See also: https://github.com/mesonbuild/meson/commit/90c9b868b20b11bb089fc5e0c634d5ed76fea0cb

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[Tests/Sink] Format code style using gst-indent
Wook Song [Mon, 21 Oct 2019 14:16:06 +0000 (23:16 +0900)]
[Tests/Sink] Format code style using gst-indent

This patch formats code style of unittest_sink that contains legacy
using gst-indent.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[Tests/Sink] Add a command-line option to control pipeline's speed
Wook Song [Mon, 21 Oct 2019 14:13:08 +0000 (23:13 +0900)]
[Tests/Sink] Add a command-line option to control pipeline's speed

In order to control the speed of tests made of videotestsrc-based single
pipeline this patch adds a command-line option.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[Tests/Sink] Add jitter between start and stop pipeline
Wook Song [Thu, 17 Oct 2019 06:48:05 +0000 (15:48 +0900)]
[Tests/Sink] Add jitter between start and stop pipeline

In some low performance machine such as VMs in the cloud, test cases in
unittest_sink are failed since they cannot finish their job until the
pipeline is stopped. To work around this issue, this patch adds jitter
between start and stop pipeline.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[C-API] Use mock header instead of Tizen dependent one
Wook Song [Thu, 24 Oct 2019 09:02:49 +0000 (18:02 +0900)]
[C-API] Use mock header instead of Tizen dependent one

In order to build C-API for Non-Tizen platforms, nnstreamer.h should be
modified at build time to emulate some Tizen-dependent symbols.
Instead, this patch adds a mock header, tizen_error.h, which emulates
those symbols and includes needed system header. Therefore, it is
possible to build C-API by adding this header to the build tree when
enabling C-API for Non-Tizen platform.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[C-API] Add a platform-dependent header emulating tizen-error.h
Wook Song [Thu, 24 Oct 2019 07:33:12 +0000 (16:33 +0900)]
[C-API] Add a platform-dependent header emulating tizen-error.h

This patch adds a platform-dependent header which emulates tizen-error.h
for Non-Tizen platforms. Note that any files under the platform
directory in API's include are filtered out from Tizen packages.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[Dist/Tizen] Add a script that generates tarball for source package
Wook Song [Thu, 24 Oct 2019 07:12:10 +0000 (16:12 +0900)]
[Dist/Tizen] Add a script that generates tarball for source package

For the purpose of filtering out sources which should not be include in
Tizen packages, this patch adds a script for generating source tarball
at build time.

Signed-off-by: Wook Song <wook16.song@samsung.com>
4 years ago[single] Fix possible svace issue later
Parichay Kapoor [Thu, 24 Oct 2019 05:15:04 +0000 (14:15 +0900)]
[single] Fix possible svace issue later

Fix possible svace issue later
https://github.com/nnsuite/nnstreamer/pull/1787#discussion_r337823705

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Meson] update required meson version
Jaeyun [Wed, 23 Oct 2019 03:39:52 +0000 (12:39 +0900)]
[Meson] update required meson version

Set min meson version 0.50 and cleanup the script.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Coverity] fix coverity issues
Jaeyun [Thu, 24 Oct 2019 04:47:29 +0000 (13:47 +0900)]
[Coverity] fix coverity issues

Update code to fix invalid condition and free functions in nnstreamer plugins.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[single] flexible dimension unittest fail fix
Parichay Kapoor [Thu, 24 Oct 2019 05:38:41 +0000 (14:38 +0900)]
[single] flexible dimension unittest fail fix

Added fix for flexible dimension unittest fail fix

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[single] simplify get_tensors_info in single API
Parichay Kapoor [Mon, 21 Oct 2019 03:00:18 +0000 (12:00 +0900)]
[single] simplify get_tensors_info in single API

Added simplification for get_tensors_info in single API implementation
input and output tensors info is stored in single API
This patch updates to use that information than extracting the info again from element

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[single] Implementation of flexible input dimension
Parichay Kapoor [Thu, 17 Oct 2019 10:32:16 +0000 (19:32 +0900)]
[single] Implementation of flexible input dimension

Added implementation of flexible input dimension at the API level
Handling flexible input dimension at the tensor filter extension
scope to be done.

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Filter] Enable C++ subplugin build
MyungJoo Ham [Tue, 15 Oct 2019 07:47:03 +0000 (16:47 +0900)]
[Filter] Enable C++ subplugin build

Before adding test cases for C++ filter subplugins,
enable build for Tizen/Ubuntu.

Add enable-cppfilter=true for meson build if you
want to use this feature.

Note that the subplugin is not yet fully implemented
and needs further implementation. Thus, we do not have
testcases, yet.

Changes at v2:
- cppfilter is now default
- added isAllocatedBeforeInvoke() virtual function

Change-Id: I5e1942e0b7c957ceb675bd78496041a888978e65
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[pytorch] Do first run with try/catch
Parichay Kapoor [Tue, 22 Oct 2019 04:27:04 +0000 (13:27 +0900)]
[pytorch] Do first run with try/catch

First run after configuring the tensor filter with pytorch framework
is now run with a try/catch.

Check #1809 for more details.

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[TF-Lite] Added setInputDimension
Parichay Kapoor [Fri, 18 Oct 2019 03:41:53 +0000 (12:41 +0900)]
[TF-Lite] Added setInputDimension

Added implementation for setInputDimension
This can allow support for flexible input dimensions
The support is limited to only changing dimensions
Data type for the input or the number of inputs cannot be changed with current TF-Lite API
The rank for the input is allowed to be changed if the model allows
The input dimension can return error if the model does not allow dimension to be changed

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Decoder/Sub] install img segment
Jaeyun [Tue, 22 Oct 2019 10:52:33 +0000 (19:52 +0900)]
[Decoder/Sub] install img segment

Add definition to install image segment subplugin.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Decoder] update callback description
Jaeyun [Tue, 22 Oct 2019 07:21:07 +0000 (16:21 +0900)]
[Decoder] update callback description

Update callback description for decoder sub-plugin.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Decoder/Sub] mem error case in img segment
Jaeyun [Tue, 22 Oct 2019 08:18:00 +0000 (17:18 +0900)]
[Decoder/Sub] mem error case in img segment

1. handle allocation failure case
2. fix possible mem leak to get the out caps
3. add definition to include img segment in android-libray

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Android] add option to build with min plugins
Jaeyun [Mon, 21 Oct 2019 06:28:59 +0000 (15:28 +0900)]
[Android] add option to build with min plugins

Add build option to set target abi and core gstreamer plugins.

For example, to build library with core plugins for arm64
./build-android-lib.sh --api_option=core --target_abi=arm64

This only includes gstreamer core plugins, so library size is under 15MB.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Decoder] Set color to segmented image accoring to label_idx
niklasjang [Sun, 20 Oct 2019 13:00:02 +0000 (06:00 -0700)]
[Decoder] Set color to segmented image accoring to label_idx

Each pixel has a probability of 21 labels.
Apply a color of the label with the highest probability.

Signed-off-by: niklasjang <niklasjang@gmail.com>
Signed-off-by: Jihoon Lee <ulla4571@gmail.com>
4 years ago[Android/Doc] update build guide
Jaeyun [Fri, 18 Oct 2019 05:51:34 +0000 (14:51 +0900)]
[Android/Doc] update build guide

Update build guide with prebuilt gstreamer-1.16.1 binaries.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[single] Added API and skeleton for flexible input dimension
Parichay Kapoor [Thu, 17 Oct 2019 07:48:01 +0000 (16:48 +0900)]
[single] Added API and skeleton for flexible input dimension

Adding support for flexible input dimension
Added API and skeleton for setting input dimension via single API

V2:
Added more description for retval of ML_ERROR_NOT_SUPPORTED in documentation

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Decoder/Meson] Meson build for image segmentation decoder
Jihoon Lee [Sun, 20 Oct 2019 10:58:00 +0000 (19:58 +0900)]
[Decoder/Meson] Meson build for image segmentation decoder

In order to add tensor decoder for image segmentation to build tree,
updates meson build script.

Signed-off-by: niklasjang <niklasjang@gmail.com>
Signed-off-by: Jihoon Lee <ulla4571@gmail.com>
4 years ago[WIP] Tensor decoder for image segmentation
Jihoon Lee [Sun, 20 Oct 2019 10:57:40 +0000 (19:57 +0900)]
[WIP] Tensor decoder for image segmentation

In order to implement tensor decoder for image segmentation,
this patch composes skeleton code for it.

Signed-off-by: niklasjang <niklasjang@gmail.com>
Signed-off-by: Jihoon Lee <ulla4571@gmail.com>
4 years ago[CodeClean] replace meaningless variables
Dongwon Lee [Sun, 20 Oct 2019 07:09:09 +0000 (16:09 +0900)]
[CodeClean] replace meaningless variables
rename a and b to other more meaningful ones.
a -> from, b -> to

Signed-off-by: Dongwon Lee <dongwon1103@naver.com>
4 years ago[Typo] Fix typo
Injae Kang [Sat, 19 Oct 2019 16:50:56 +0000 (01:50 +0900)]
[Typo] Fix typo

This patch fixes typo in packaging/nnstreamer.spec

Signed-off-by: Injae Kang <abcinje@gmail.com>
4 years ago[CodeClean] combine if statements
Junsang Mo [Thu, 17 Oct 2019 12:46:27 +0000 (21:46 +0900)]
[CodeClean] combine if statements
combine if statements in tensor_transform.c.
I confirmed it worked well in example_image_classification_tflite.

Signed-off-by: Junsang Mo <junsang.mo@samsung.com>
4 years agoAdd execution bit of gradlew
이원준 [Fri, 18 Oct 2019 08:30:13 +0000 (17:30 +0900)]
Add execution bit of gradlew
Added excution bit of gradlew to prevent permission denied error.

Signed-off-by: 이원준 <dldnjs1013@nate.com>
4 years ago[Security] handle returned value
Jaeyun [Thu, 17 Oct 2019 04:18:33 +0000 (13:18 +0900)]
[Security] handle returned value

Check mem allocation failure case and refactor file-close in IIO.

This PR is related with ssms-1016-0006.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[tests] Install models/data with tests
Parichay Kapoor [Wed, 16 Oct 2019 04:25:39 +0000 (13:25 +0900)]
[tests] Install models/data with tests

Install models/data with tests correctly when needed
Install tizen-capi-unittest with install-test option

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years agoAdded the coverity badge
Geunsik Lim [Fri, 18 Oct 2019 04:33:21 +0000 (13:33 +0900)]
Added the coverity badge

This commit is to append the badge of the Coverity (static analysis tool).
TODO: the Coverity module of TAOS-CI will be soon enabled in the nnstreamer GitHub repository.

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
4 years ago[Security] [Converter] handle text format in chain function
Jaeyun [Thu, 17 Oct 2019 04:39:09 +0000 (13:39 +0900)]
[Security] [Converter] handle text format in chain function

get min block size and use memcpy when input mime-type is text.

This PR is related with ssms-1016-0005.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Security] python lib name format
Jaeyun [Thu, 17 Oct 2019 05:31:30 +0000 (14:31 +0900)]
[Security] python lib name format

Define macro for file format and remove macro(preprocess defines) in the function call.

This PR is related with ssms-1016-0007.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Test] update model in tensor-filter
Jaeyun [Wed, 16 Oct 2019 08:31:31 +0000 (17:31 +0900)]
[Test] update model in tensor-filter

Add testcase to re-open nn model in tensor-filter using gst-harness.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[tests] Locate all models and data together
Parichay Kapoor [Wed, 16 Oct 2019 04:08:53 +0000 (13:08 +0900)]
[tests] Locate all models and data together

Locate all the models and data together for easier management

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[CodeClean]remove duplicates in TFLiteCore::getTensorDim
Junsang Mo [Wed, 16 Oct 2019 11:40:21 +0000 (20:40 +0900)]
[CodeClean]remove duplicates in TFLiteCore::getTensorDim
make a variable for interpreter->tensor (tensor_idx)->dims.
replace interpreter->tensor (tensor_idx)->dims with the variable.

Signed-off-by: Junsang Mo <junsang.mo@samsung.com>
4 years ago[Doc] fix doxygen link
Jaeyun [Wed, 16 Oct 2019 03:52:25 +0000 (12:52 +0900)]
[Doc] fix doxygen link

update doc-doxygen, fix the linked url.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Coverity/1087163] Fix dereference before null check
MyungJoo Ham [Tue, 15 Oct 2019 10:57:48 +0000 (19:57 +0900)]
[Coverity/1087163] Fix dereference before null check

This intends to fix:
```
There may be a null pointer dereference, or else the comparison against null is unnecessary.

In ml_tensors_data_create: All paths that lead to this null pointer comparison already dereference the pointer earlier (CWE-476)
```

It appears that Coverity hates defensive coding.

This adds missing free on _data as well.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[tizen/nnfw] Add invoke for nnfw
Parichay Kapoor [Fri, 11 Oct 2019 04:12:51 +0000 (13:12 +0900)]
[tizen/nnfw] Add invoke for nnfw

Added invoke implementation for nnfw along with some bug fixes

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Security] returned value to compare str
Jaeyun [Tue, 15 Oct 2019 02:33:50 +0000 (11:33 +0900)]
[Security] returned value to compare str

Add one more commit for string compare, check returned value.

EXP20-C. Perform explicit tests to determine success, true and false, and equality

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Android] add log to print version string
Jaeyun [Tue, 15 Oct 2019 03:33:14 +0000 (12:33 +0900)]
[Android] add log to print version string

add log to print nnstreamer, gstreamer and glib version info.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Doc] fix typo and link
Jaeyun [Tue, 15 Oct 2019 04:38:58 +0000 (13:38 +0900)]
[Doc] fix typo and link

Update docs (fix links and typo in document)

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Typecast] Use explicit type casting with g_ascii_strto(u)ll() function
Injae Kang [Mon, 14 Oct 2019 13:24:43 +0000 (22:24 +0900)]
[Typecast] Use explicit type casting with g_ascii_strto(u)ll() function

This patch use explicit type casting between variables and return values of
g_ascii_strtoll() or g_ascii_strtoull() functions.

This resolves issue #1762, which is about potential warnings
from compilers with strict option.

Signed-off-by: Injae Kang <abcinje@gmail.com>
4 years ago[tizen/nnfw] Add get_input/output_dimensions
Parichay Kapoor [Thu, 10 Oct 2019 12:48:59 +0000 (21:48 +0900)]
[tizen/nnfw] Add get_input/output_dimensions

Added implementation for get_input/output_dimensions functions

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[CodeClean] remove redundant check for LLVM compatibility
Niklas Jang [Sat, 12 Oct 2019 06:41:03 +0000 (15:41 +0900)]
[CodeClean] remove redundant check for LLVM compatibility

As bdata->mode  is defined as bounding_box_modes type, it is never lower than zero.
Because find_key_strv()'s return value is definded as 'The count of replaced. (Set NULL if it is unnecessary)',
it does not affect.

And not latest clang complains about this redundance.(LLVM)

Signed-off-by: Niklas Jang <niklasjang@gmail.com>
4 years ago[test]Change num_buffers type from guint to gint
Niklas Jang [Sat, 12 Oct 2019 05:03:31 +0000 (14:03 +0900)]
[test]Change num_buffers type from guint to gint

It is dangerous to cast from gint to guint and vice versa.
According to Gstreamer GstBaseSrc menual, num-buffer's type is  'gint' not 'guint'.
num-buffers means 'Number of buffers to output before sending EOS (-1 = unlimited).
<https://gstreamer.freedesktop.org/documentation/base/gstbasesrc.html?gi-language=c#GstBaseSrc:num-buffers>

Signed-off-by: Niklas Jang <niklasjang@gmail.com>
[test]Change buffer_index type from guint to gint

There is comparison between buffer_index and num_buffers.
So buffer_index must be gint type like num_buffers.

Signed-off-by: Niklas Jang <niklasjang@gmail.com>
4 years ago[Doc] Tizen Native App Guide accepted/tizen_5.5_unified_mobile_hotfix tizen_5.5_mobile_hotfix accepted/tizen/5.5/unified/20191031.011831 accepted/tizen/5.5/unified/mobile/hotfix/20201027.074251 accepted/tizen/unified/20191015.012028 submit/tizen/20191014.081910 submit/tizen/20191023.084816 submit/tizen_5.5/20191031.000007 submit/tizen_5.5_mobile_hotfix/20201026.185107 tizen_5.5.m2_release
MyungJoo Ham [Fri, 11 Oct 2019 16:29:28 +0000 (01:29 +0900)]
[Doc] Tizen Native App Guide

This guide allows developers to start writing Tizen native apps more easily.

This partially resovles #1751.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[Security] cond to compare strings
Jaeyun [Mon, 14 Oct 2019 04:15:04 +0000 (13:15 +0900)]
[Security] cond to compare strings

EXP20-C. Perform explicit tests to determine success, true and false, and equality

This will fix SSMS-0003.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Security] check buffer size
Jaeyun [Mon, 14 Oct 2019 04:01:03 +0000 (13:01 +0900)]
[Security] check buffer size

check the output buffer size before copying the mem block.

This will fix SSMS-0002.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Api/Tizen] handle dpm restriction case
Jaeyun [Thu, 10 Oct 2019 07:23:46 +0000 (16:23 +0900)]
[Api/Tizen] handle dpm restriction case

Check the pipeline with device policy restricted case.
Create dpm handle and when trying to start the pipeline, check device policy and handle error case.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Doc] Guide: writing a new tensor-filter subplugin
MyungJoo Ham [Fri, 11 Oct 2019 15:42:29 +0000 (00:42 +0900)]
[Doc] Guide: writing a new tensor-filter subplugin

With https://github.com/nnsuite/nnstreamer-example/pull/68
this guide helps developer write a new filter subplugin easily.

With that PR in nnstreamer-example, this resovles #1746

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[CodeClean] Apply regular expressions
Injae Kang [Tue, 8 Oct 2019 14:44:21 +0000 (23:44 +0900)]
[CodeClean] Apply regular expressions

Use regular expressions instead of combined if-statements.

Signed-off-by: Injae Kang <abcinje@gmail.com>
4 years ago[Filter/TF-lite] cleanup hw-type string
Jaeyun [Tue, 8 Oct 2019 07:38:46 +0000 (16:38 +0900)]
[Filter/TF-lite] cleanup hw-type string

1. remove duplicated src and fix indent
2. move hw-type string definition

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[API/Tizen] Fix the rootstrap buildbreak issue accepted/tizen/unified/20191011.051921 submit/tizen/20191011.051205
Sangjung Woo [Fri, 11 Oct 2019 04:46:05 +0000 (13:46 +0900)]
[API/Tizen] Fix the rootstrap buildbreak issue

This patch fixes the rootstrap buildbreak issue by using relative path
instead of absolute one.

Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
4 years ago[Api/Tizen] remove code which occurs error
Hyoung Joo Ahn [Tue, 8 Oct 2019 08:30:55 +0000 (17:30 +0900)]
[Api/Tizen] remove code which occurs error

remove code which occurs error.
Since the previous code lock the resource internally,
when another pipeline want to contact to the resource, an error is generated.

Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
4 years ago[Api/Tizen] bug-fix to replace str
Jaeyun [Tue, 8 Oct 2019 06:08:54 +0000 (15:08 +0900)]
[Api/Tizen] bug-fix to replace str

bug-fix to replace element string in pipeline description.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Api/Tizen] update restricted elements
Jaeyun [Tue, 8 Oct 2019 05:53:29 +0000 (14:53 +0900)]
[Api/Tizen] update restricted elements

Add tv-camsrc and pulsesrc as cam input src element.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Filter/Sub] use glib to compare strings
Jaeyun [Tue, 8 Oct 2019 01:54:16 +0000 (10:54 +0900)]
[Filter/Sub] use glib to compare strings

change string util functions to parse and compare strings.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Api/Tizen] Tizen internal API to construct pipeline accepted/tizen/unified/20191008.101521 submit/tizen/20191008.053234
Jaeyun [Wed, 2 Oct 2019 08:06:49 +0000 (17:06 +0900)]
[Api/Tizen] Tizen internal API to construct pipeline

Add Tizen internal API without checking the permission.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[single] Minor updates for modularity
Parichay Kapoor [Mon, 7 Oct 2019 04:27:19 +0000 (13:27 +0900)]
[single] Minor updates for modularity

Added minor updates in C-API single shot implementation for improved modularity

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Android/Test] add tc to check max local ref
Jaeyun [Mon, 7 Oct 2019 04:16:06 +0000 (13:16 +0900)]
[Android/Test] add tc to check max local ref

Add aging test to check local ref table overflow.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Filter/Sub] already loaded case
Jaeyun [Mon, 7 Oct 2019 03:47:26 +0000 (12:47 +0900)]
[Filter/Sub] already loaded case

Check returned value when the nn model file is already loaded.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[Tizen/Api] fix invalid params to parse mm info submit/tizen/20191008.021543
Jaeyun [Mon, 7 Oct 2019 10:28:41 +0000 (19:28 +0900)]
[Tizen/Api] fix invalid params to parse mm info

Add missed param mm-handle to get video cam src element in Tizen.

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
4 years ago[API/Tizen] Remove version number from libcapi-nnstreamer.so
Sangjung Woo [Mon, 7 Oct 2019 09:47:32 +0000 (18:47 +0900)]
[API/Tizen] Remove version number from libcapi-nnstreamer.so

This patch removes the version number from libcapi-nnstreamer shared
object.
* libcapi-nnstreamer.so.0.3 -> libcapi-nnstreamer.so

Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
4 years ago[Tizen/nnfw] Add open/close callbacks for tensor_filter
MyungJoo Ham [Tue, 1 Oct 2019 10:36:47 +0000 (19:36 +0900)]
[Tizen/nnfw] Add open/close callbacks for tensor_filter

This validates integration mechanisms for nnfw-runtime of Tizen.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
4 years ago[android/build] Update build script
Parichay Kapoor [Wed, 2 Oct 2019 07:37:18 +0000 (16:37 +0900)]
[android/build] Update build script

Update build script to be directly used by CI for building

Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
4 years ago[Code Clean] Make example launch line in remark follow convention.
niklasjang [Thu, 3 Oct 2019 12:50:55 +0000 (21:50 +0900)]
[Code Clean] Make example launch line in remark follow convention.
1. Move 'tensor_mux name=mux ! fakesink' from front to back.
2. Add \ for readability
3. Add missing regular expression ']|'

Signed-off-by: niklasjang <niklasajang@gmail.com>