Parichay Kapoor [Thu, 28 Mar 2019 04:45:01 +0000 (13:45 +0900)]
[IIO] Support device number, filled _finalize()
1. Support device/trigger number as input, added corresponding test case as well
2. Set proper max limit on buffer capacity and frequency
3. Filled _finalize()
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
jijoong.moon [Mon, 1 Apr 2019 08:07:40 +0000 (17:07 +0900)]
[SVACE/414949] Fix
65505047 Warning
Line 448 of unittest_common.cpp has svace warning:
WID:
65505047 Return value of a function 'fopen64' is dereferenced at
unittest_common.cpp:448 without checking, but it is usually checked
for this function (8/9).
**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>
Parichay Kapoor [Thu, 28 Mar 2019 07:49:40 +0000 (16:49 +0900)]
[IIO] removed blocksize, merging with inner dimension
1. Removed blocksize (merging multiple buffers of data together). Use tensor_aggregator for this functionality
2. Merging of tensors is done with innermost dimension (merging on outermost dimension introduced reduntant dimensions)
3. Bugfix:
- buffer size scaled by buffer_capacity
- data rate_d set to buffer_capacity
4. Moved one-shot mode todo - no support for one-shot mode now
V2:
Added direction for merging the tensor
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
jijoong.moon [Fri, 29 Mar 2019 04:36:15 +0000 (13:36 +0900)]
[TENSORS] No need the tests/nnstreamer_tensors
Test case, nnstreamer_tensors are not needed anymore. It was written
just for the temperal check of possibility of meta in the buffer.
**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>
Parichay Kapoor [Wed, 27 Mar 2019 06:35:51 +0000 (15:35 +0900)]
test cases for state change and corresponding bug fixes
1. Created virtual iio device to test against
2. Added test case to test state change from NULL to PLAYING and backwards
3. Bug fixes-
3.1 setting of fixated caps moved to _fixating() from _start()
3.2 channel property list memory issue resolved
3.3 missing sampling frequency file while setting it is now a warning
skip to default frequency if file is not present
3.4 More minor bug fixes
4. IIO base directories moved to header file
These directories are modified to temporary location when testing with simulated device
V2:
- BugFix:
- updated condition check for sampling_frequency
- updated freeing channel list while filtering enabled channels
- declaration following C89
- Moved fixating of caps to _fixate(). This removes unnecessary storage of fixated_caps
and calculating fixated caps in _fixate() makes code more readable
V3:
- replaced stdio.h with glib/gprintf.h
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
jijoong.moon [Wed, 20 Mar 2019 06:58:58 +0000 (15:58 +0900)]
[YOCTO] Modified unittest directory for installation & runn
Because there are test cases incluiding absolute path for library, it
is hard to run unit testcases after installation. In this PR, these
testcases and nnstreamer_example libraries are installed
/usr/lib/nnstreamer/unittest. For the nnstreamer_example, libraries
are in /usr/lib/nnstreamer/unittest/nnstreamer_exampls, and For the
tests, they are installed in /usr/lib/nnstreamer/unittest/tests.
Some unittest executions (unittest_repo, unittest_sink,
unittest_common, unittest_plugins) are installed in
/usr/lib/nnstreamer/unittest.
**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>
MyungJoo Ham [Mon, 1 Apr 2019 08:07:35 +0000 (17:07 +0900)]
[SVACE/414634-5] Fix
65505041/2 Warning
DEREF_OF_NULL.RET.ALLOC
Warning Message
Pointer '↦left[0]' returned from function 'g_strdup_printf' at tensor_filter.c:965 may be null, and it is dereferenced at tensor_filter.c:984.
Warning Message
Pointer '↦right[0]' returned from function 'g_strdup_printf' at tensor_filter.c:974 may be null, and it is dereferenced at tensor_filter.c:986.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 1 Apr 2019 07:59:59 +0000 (16:59 +0900)]
[SVACE/414633] Check malloc return value
Do not proceed if malloc returns null:
Warning Message
Pointer 'output[0].data' returned from function 'malloc' at nnstreamer_customfilter_example_scaler_allocator.c:159 may be null, and it is dereferenced at nnstreamer_customfilter_example_scaler_allocator.c:202.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 1 Apr 2019 07:57:40 +0000 (16:57 +0900)]
[SVACE/414632] Check malloc return value
Do not proceed if malloc returns null:
Warning Message
Pointer 'data' returned from function 'malloc' at nnscustom_framecounter.c:96 may be null, and it is dereferenced at nnscustom_framecounter.c:98.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 1 Apr 2019 07:55:04 +0000 (16:55 +0900)]
[SVACE/414631] Check malloc return value
Do not proceed if malloc returns null:
Warning Message
Pointer 'data' returned from function 'malloc' at nnstreamer_customfilter_example_scaler_allocator.c:65 may be null, and it is dereferenced at nnstreamer_customfilter_example_scaler_allocator.c:68.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 1 Apr 2019 07:53:17 +0000 (16:53 +0900)]
[SVACE/414630] Check malloc return value
Do not proceed if malloc returns null:
Warning Message
Pointer 'data' returned from function 'malloc' at nnstreamer_customfilter_example_scaler.c:45 may be null, and it is dereferenced at nnstreamer_customfilter_example_scaler.c:48.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 1 Apr 2019 07:49:13 +0000 (16:49 +0900)]
[SVACE/414629] Check malloc return value.
If it's NULL, don't proceed:
Warning Message
Pointer 'data' returned from function 'malloc' at nnstreamer_customfilter_example_average.c:36 may be null, and it is dereferenced at nnstreamer_customfilter_example_average.c:38.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 1 Apr 2019 07:25:22 +0000 (16:25 +0900)]
[SVACE/414609] Fix
65505016 Warning
Line 249 of tensordec-boundingbox.c has the following SVACE warning:
Warning Message
Possible integer underflow: left operand is tainted. An integer underflow may occur due to arithmetic operation (unsigned subtraction) between values { [0,
1073741823] } and '1', where the first value comes from the expression 'strlen(line)'
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 1 Apr 2019 06:47:52 +0000 (15:47 +0900)]
[SVACE/414602] Fix
65505007 Warning
Fix: WID:
65505007 Integer value 'width * height' obtained from untrusted source at bmp2png.c:239 by passing as 1st parameter to function 'fread' at bmp2png.c:232 without checking its lower bound is used in a trusted operation at bmp2png.c:254 by calling function 'calloc'.
Add lower limits for height/width.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
jijoong.moon [Mon, 1 Apr 2019 07:43:43 +0000 (16:43 +0900)]
[SVACE/414655] Fix
65505049 Warning
Line 343 of unittest_sink.cpp has svace warning:
WID:
65505049 Use of vulnerable function 'sprintf' at
unittest_sink.cpp:343. For better security, VD recommends NOT to use
sprintf. Use snprintf instead.
**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>
MyungJoo Ham [Fri, 29 Mar 2019 01:45:41 +0000 (10:45 +0900)]
[Filter/TF-Lite] Enable NNAPI with configurations
This rephrases #1013 with nnstreamer configuration support.
Add TRUE or 1 or ON of "enable_nnapi" in .ini file or
Use NNSTREAMER_tensorflowlite_enable_nnapi=1 as an environmental
variable to enable NNAPI for tensorflow-lite.
CC: @daeinki
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Wook Song [Fri, 29 Mar 2019 00:08:30 +0000 (09:08 +0900)]
[IIO] Change functions used for byte order conversion
Without defining _BSD_SOURCE and __USE_BSD macros, the functions such as
be16toh, le16toh, be32toh, le32toh, be64toh and le64toh are not
compatible with c89. In order to fix this issue, this patch replaces
such functions with byte order macros from glib-2.0.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 28 Mar 2019 08:47:42 +0000 (17:47 +0900)]
[README] Add a badge for displaying status of code coverage
This patch adds a badge that displays code coverage status to the main
page of github, i.e., README.md.
Signed-off-by: Wook Song <wook16.song@samsung.com>
MyungJoo Ham [Thu, 28 Mar 2019 02:19:03 +0000 (11:19 +0900)]
Remove tensor_save/load. It's unimplemented skeleton abandoned.
It has been abandoned for too long time that has incorrect skeleton.
To promote better design, remove the whole skeleton.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
jijoong.moon [Wed, 27 Mar 2019 08:32:47 +0000 (17:32 +0900)]
[UNITTEST] Adding queue to prevent unexpected input drop
Add queue element in the test pipeline. For the slow hardware, there
are unexpected input drop, which makes unittests inconsistent.
**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>
MyungJoo Ham [Tue, 26 Mar 2019 08:24:58 +0000 (17:24 +0900)]
[Conf/Testcase] Add UT cases for custom conf
Added a few test cases for custom conf.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
jijoong.moon [Wed, 27 Mar 2019 09:54:04 +0000 (18:54 +0900)]
[TENSORREPO] Fix hanging while waiting pulled signal when eos.
There is hanging error when it is waiting pulled signal. In the case
of EOS(End of Stream), there is no pulling procedure but it is
required to get signal to get out the while loop.
**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>
jijoong.moon [Wed, 27 Mar 2019 01:48:49 +0000 (10:48 +0900)]
[UNITTESTS] Fix binary write
Some of test cases is not appropriate for python3. In this PR, these
are fixed. (wirte binary data in to string file write option)
**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>
Geunsik Lim [Wed, 27 Mar 2019 09:32:29 +0000 (18:32 +0900)]
lcov: Changed the default time zone from UTC to KST
Fixed the issue #1193 and #1275 finally.
https://github.com/nnsuite/nnstreamer/issues/1193#issuecomment-
469635177
https://github.com/nnsuite/nnstreamer/issues/1275
This commit is to replace UTC with KST by default in order to display the date format
with Seoul time. The 'lcov' generates the date format with UTC time zone by default.
So, let's replace UTC with KST.
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Sangjung Woo [Wed, 27 Mar 2019 08:01:30 +0000 (17:01 +0900)]
[Tizen] fix the typos in doc header
This patch fixes the minor typos in doc header file.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Mon, 11 Mar 2019 08:23:23 +0000 (17:23 +0900)]
[Common] remove media type header
Only tensor-converter needs media format header.
Remove unnecessary header include in common files.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Fri, 22 Mar 2019 05:54:38 +0000 (14:54 +0900)]
[Test/Unit-test-coverage] Add Tizen/API into unittest coverage
Count test-coverage of Tizen/API.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Fri, 22 Mar 2019 05:53:44 +0000 (14:53 +0900)]
[Test:Tizen/API] Test "valve" control Tizen APIs
Test if frames flow only when valve is opened.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Fri, 22 Mar 2019 05:52:17 +0000 (14:52 +0900)]
[Tizen/API] Bugfix on get_state
gst_state should not wait indefinitely. Let's give 100us as the "deadline".
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Parichay Kapoor [Tue, 26 Mar 2019 06:41:48 +0000 (15:41 +0900)]
[IIO] enable automated tests for src IIO
1. Added IIO test check in debian rules auto tests
2. Added IIO test in nnstreamer.spec unit tests
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Parichay Kapoor [Mon, 25 Mar 2019 06:50:49 +0000 (15:50 +0900)]
[IIO] register iio source and add test cases
1. Register plugin as a nnstreamer plugin and initialize it
2. Add test case for setting/getting properties of tensor src iio
3. Bug fixes for the bugs found with the tests
Removed srcpad from properties as it is not needed
V2:
- include tensor source in nnstreamer for android build
V3:
- removed srcpad from properties as it is not needed
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
MyungJoo Ham [Mon, 25 Mar 2019 06:01:51 +0000 (15:01 +0900)]
[Conf] Custom conf keys
Any subplugins (/ext/) may use this to make custom
configuration keys.
To support custom filters, the header should be exported.
However, for now, let's forget about the need from
custom filters.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 18 Mar 2019 09:51:07 +0000 (18:51 +0900)]
Use macro to shorten common codes.
Use macro for init/exit routines that are same in many functions.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 18 Mar 2019 08:29:26 +0000 (17:29 +0900)]
Code clean: use macro for dlog tag name
Use DLOG_TAG instead of "nnstreamer-capi-pipeline".
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Hyoung Joo Ahn [Mon, 25 Mar 2019 05:09:20 +0000 (14:09 +0900)]
[Filter/Tensorflow] fix bug of testcase
Since the STRING input tensor should be processed differently, the logic was fixed.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
MyungJoo Ham [Fri, 15 Mar 2019 00:44:54 +0000 (09:44 +0900)]
[Tizen/API] Implement src/sink/switch/valve handlers
Tizen-API implementation to handle
- tensor_sink
- app_src
- input_selector
- output_selector
- valve
Unit test cases and code clean/compaction commit will follow soon.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Hyoung Joo Ahn [Mon, 25 Mar 2019 05:20:02 +0000 (14:20 +0900)]
[Filter/TFLite] refine the headers
relocate headers at proper position and remove useless headers
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Parichay Kapoor [Thu, 21 Mar 2019 11:09:51 +0000 (20:09 +0900)]
[IIO] minor bug fixes and changes
1. using scale and offset
2. removed unused mutex
3. using GST_ERROR_OBJECT() instead of GST_ERROR()
4. using silent debug properly
5. bug fix for setting generic_name in channel properties
6. using G_UNLIKELY with updated cppcheck
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Jaeyun [Fri, 22 Mar 2019 11:41:53 +0000 (20:41 +0900)]
[Build] build warning
change incorrect header definition
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Wed, 13 Mar 2019 08:11:37 +0000 (17:11 +0900)]
[Tizen/API] Implement start/stop/getstate/destroy with testcases
Implement Tizen-CAPI, "start/stop/getstate/destroy" for a nnstreamer pipeline.
Add testcases for them.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Tue, 19 Mar 2019 02:36:38 +0000 (11:36 +0900)]
[Subplugin] Remove dlsym subplugin loader
We no longer need dlsym subplugin loader, which make it
incompatible with statically built subplugins.
Subplugins have been calling register_subplugin in its
init functions; thus removing dlsym routines is ok.
Fixes #1130
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Parichay Kapoor [Tue, 19 Mar 2019 07:48:54 +0000 (16:48 +0900)]
[IIO] _create() creates the buffer
Create the buffer, allocate memory for the buffer
Enable setting the timestamp for the buffer by base src
Ignore timestamp channel for now - added in todo
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Parichay Kapoor [Mon, 18 Mar 2019 07:47:48 +0000 (16:47 +0900)]
[IIO] scan data and fill buffer
1. Read the data from IIO device
2. Process the raw data
3. Fill the buffer with processed data
4. Fixing type for all channels data to float32
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Parichay Kapoor [Fri, 15 Mar 2019 11:23:16 +0000 (20:23 +0900)]
[IIO] added scale and offset
Added scale and offset to process raw data.
First get channel specific scale/offset, if available. Secondly, try
generic scale/offset, else use default values.
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Hyoung Joo Ahn [Mon, 18 Mar 2019 10:00:39 +0000 (19:00 +0900)]
[Filter/Tensorflow] remove memcpy by getting conf
Through conf, we can avoid the unexpected errors at the specific environment by turning on/off the option(memory optimization).
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
MyungJoo Ham [Wed, 13 Mar 2019 02:33:10 +0000 (11:33 +0900)]
[Tizen/API] Add unittest skeleton for Tizen-CAPI (TCT candidate)
This is to be the basis of TCT (Tizen Compliance Test) in the future.
Testing construction & destruction of nnstreamer pipelines
with different elements.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Thu, 21 Mar 2019 05:15:50 +0000 (14:15 +0900)]
[Build] requirement for orc lib
change dependency of orc lib
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
MyungJoo Ham [Wed, 20 Mar 2019 11:48:53 +0000 (20:48 +0900)]
[Dist] Do not depend on ssat if it's not neeed.
ssat is required only when unit_test is enabled.
We are not going to enable auto-unit-test in Tizen:Unified.
We will execute auto-unit-test only in Github-CI and
personal gbs for now.
We will enable auto-unit-test in Tizen:Unified after
we submit ssat to tizen.org
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Dongju Chae [Wed, 20 Mar 2019 06:46:17 +0000 (15:46 +0900)]
[Test/RepoRnn] handle the uninitialized output buffer
In tizen, this uninitialized output buffer sometimes causes a wrong result
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
MyungJoo Ham [Fri, 8 Mar 2019 06:18:49 +0000 (15:18 +0900)]
[Tizen/API] API implementation skeleton
This includes Tizen API implementation skeleton
and a constructor of a pipeline.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Wed, 20 Mar 2019 05:59:59 +0000 (14:59 +0900)]
Start of 0.1.3 RC development
From here, it's NNStreamer 0.1.3 Release Candidate Development.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Wed, 20 Mar 2019 05:57:09 +0000 (14:57 +0900)]
Release of NNStreamer 0.1.2
After the nnstreamer summit 5,
https://github.com/nnsuite/nnstreamer/wiki/NNStreamer-Mini-Summit-%235
we are releasing 0.1.2
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Dongju Chae [Tue, 19 Mar 2019 07:24:49 +0000 (16:24 +0900)]
Updated the misspelt words
- 'upto' --> 'up to'
- 'there is' --> 'there are'
This commit is for testing my submission envionment.
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
MyungJoo Ham [Tue, 19 Mar 2019 00:57:39 +0000 (09:57 +0900)]
[Conf] Code Clean
- nnsconf_load(FALSE) do not process if it's loaded. We do not need to check it before calling it.
- Do not repeat parsing the configuration string (Raw values). Cache it and read the cached values.
- Processing raw values should be completed in nnsconf_load() for caching.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Tue, 19 Mar 2019 00:45:33 +0000 (09:45 +0900)]
Welcome new member: Dongju Chae
https://github.com/dongju-chae has just joined the group.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Wook Song [Fri, 15 Mar 2019 09:46:47 +0000 (18:46 +0900)]
[Test/Decoder/ImageLabeling] Add test cases for various data types
This patch adds more test cases for checking that the 'image labeling'
sub plug-in of tensor_decoder properly works with various data types.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Hyoung Joo Ahn [Thu, 14 Mar 2019 12:47:09 +0000 (21:47 +0900)]
[CONF] add the new variables and method
to process with int/boolean value, the new variables and method is added.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Hyoung Joo Ahn [Thu, 14 Mar 2019 12:46:44 +0000 (21:46 +0900)]
[CONF] fix a comment of a method
fix the invalid comment for the method
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Parichay Kapoor [Tue, 12 Mar 2019 07:50:14 +0000 (16:50 +0900)]
[IIO] setting caps and data configs
1. Find caps from data configs based on the device channels
2. Fixate the caps for the pad in _start()
3. Filled _set() and _get() for caps
4. Added feature to merge channels data into 1 tensor
5. Filled _fixate()
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Parichay Kapoor [Wed, 13 Mar 2019 04:24:30 +0000 (13:24 +0900)]
[IIO] enable buffers
1. Enabling buffers in _start, disabling buggers in _stop
2. Setting channels data location in buffers
3. Storing only enabled channels
4. Opening the device data buffer file descriptor to be ready to read data
Added some bugfixes and fixes to comments
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
jijoong.moon [Fri, 15 Mar 2019 09:55:03 +0000 (18:55 +0900)]
[YOCTO] Add enable-opencv-test meson option to remove opencv dep
The only place which has opencv dependency is
custom_exampel_opencv. In order to manage more efficient,
enable-opencv-test meson option is added. If it is true, opencv
example is enabled or disabled, if not.
**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>
Wook Song [Fri, 15 Mar 2019 09:58:35 +0000 (18:58 +0900)]
[Decoder] Add GObject vmethod implementation for finalize
In order to clean up private data of each decoder sub plug-in,
corresponding TensorDecDef.exit() should be invoked by the decoder.
To this end, this patch adds GObject 'finalize' vmethod implementation
to the tensor decoder element.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 14 Mar 2019 01:43:18 +0000 (10:43 +0900)]
[Test/Transform/Arithmetic] Add test for dynamically changing option string
This patch adds unit test cases for dynamically changing option string
for the 'arithmetic' mode of tensor_transform.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 13 Mar 2019 06:59:47 +0000 (15:59 +0900)]
[Transform] Handle error due to wrong option string gracefully
This patch replaces assertion code for handling wrong option string with
the code returning error code in order to gracefully terminate the
pipeline with proper error messages.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 13 Mar 2019 06:57:46 +0000 (15:57 +0900)]
[Test/Transform/Arithmetic] Add more test cases
This patch adds more test cases for verifying the 'arithmetic' mode
of the tensor_transform element.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 13 Mar 2019 06:46:34 +0000 (15:46 +0900)]
[Test/Transform/Arithmetic] Remove unused code from checkResult.py
This is a trivial patch that removes unused code from the python script
checking the unit test results.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 13 Mar 2019 06:33:29 +0000 (15:33 +0900)]
[Test/Transform/Arithmetic] Update checkResult script to support integer
Since the python script for checking unit test results has only
supported values of floating-point type until now, this patch updates
the script to support integer so that more test cases using integer
values could be added.
Signed-off-by: Wook Song <wook16.song@samsung.com>
MyungJoo Ham [Thu, 7 Mar 2019 09:55:31 +0000 (18:55 +0900)]
[Tizen] Native API Draft: Main API Prototype
The prototypes of TIZEN-ML-NNSTREAMER-PIPELINE (Main API set of NNStremaer-Tizen) are defined.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Geunsik Lim [Tue, 12 Mar 2019 09:47:15 +0000 (18:47 +0900)]
Android/ARM64: Updated binary path
This commit is trivial. However, the existing statements have to be updated
to give developers a correct instruction. After updating *.mk file, The binary
path is also changed from ../ to ./ folder.
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Parichay Kapoor [Tue, 12 Mar 2019 07:56:10 +0000 (16:56 +0900)]
[IIO] added _get_times
Added _get_times to support syncing of buffer for the live source
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Parichay Kapoor [Wed, 13 Mar 2019 04:58:38 +0000 (13:58 +0900)]
[Common] Updated copy tensor info
Added function to copy tensor_info with variable length
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Wook Song [Tue, 12 Mar 2019 04:45:20 +0000 (13:45 +0900)]
[Test/Transform] Replace existing typecast tests with macro
For convenience, this patch replaces the existing type cast tests (from
typecast_1 to typecast_7) with the macro, TEST_TRANSFORM_TYPECAST.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 12 Mar 2019 04:16:25 +0000 (13:16 +0900)]
[Test/UnittestPlugins/Transform] Add test cases for properties
This patch adds unit test cases for setting and getting properties.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 12 Mar 2019 02:24:15 +0000 (11:24 +0900)]
[Test/Transform/Typecast] Add more test cases
This patch adds more unit test cases for the typecast mode of the
tensor_transform element.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 12 Mar 2019 02:01:21 +0000 (11:01 +0900)]
[Test/UnittestPlugins/Transform] Add a macro to test typecast
This patch adds a macro to test typecast mode of the tensor_transform
element for convenience.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 12 Mar 2019 09:23:51 +0000 (18:23 +0900)]
[Codegen/CustomFilter] Fix typo in boilerplate to be generated
This is a trivial patch which fixes typo in boilerplate to be generated
by the codegen tool for Custom Filter.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 12 Mar 2019 09:05:23 +0000 (18:05 +0900)]
[Git] Update .gitignore to ignore files generated by codegen tests
This patch updates .gitignore to exclude files generated by the test
script of codegen.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Geunsik Lim [Tue, 12 Mar 2019 07:48:52 +0000 (16:48 +0900)]
Android/ARM64: Added how to run CLI app with linker64
This commit is to depict how to run nnstreamer-based test application
with linker64 (the ELF interpreter) on the Android 64bit devices.
We assume that you run your test applications in the `/data/nnstreamer/`
folder on the Android devices based on ARM64 CPU. Note that the 'linker64'
file to interpret ELF files is located in the `/data/nnstreamer/libandroid/`
folder.
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Jaeyun [Mon, 11 Mar 2019 06:45:52 +0000 (15:45 +0900)]
[CodeGen] add tensor name
add lines to set name in tensot-info structure
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 11 Mar 2019 04:52:33 +0000 (13:52 +0900)]
[Converter] media caps definition
move media caps definition to converter.
set template caps for each media type.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Jaeyun [Mon, 11 Mar 2019 04:15:30 +0000 (13:15 +0900)]
[Decoder] media caps string
set media caps string from decoder sub-plugins.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Parichay Kapoor [Fri, 8 Mar 2019 01:55:57 +0000 (10:55 +0900)]
[IIO] updated comments
Updated all comments to be compatible with doxygen
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Parichay Kapoor [Thu, 7 Mar 2019 07:54:55 +0000 (16:54 +0900)]
[IIO] Handling queries
Handling scheduling query and remaining queries handled with basesrc class
All events are handled by basesrc class
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Jaeyun [Fri, 8 Mar 2019 09:48:13 +0000 (18:48 +0900)]
[Converter] move functions to parse media stream
tensor-converter converts all media stream to tensor type.
moves all functions to parse media info into tensor-converter.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Parichay Kapoor [Fri, 8 Mar 2019 10:31:57 +0000 (19:31 +0900)]
[Common] Updated return values
Use return values from function calls while setting up config
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
jijoong.moon [Thu, 7 Mar 2019 09:43:16 +0000 (18:43 +0900)]
[Android] Make concise list of gst plugins for build nnstream & app
Make BUILDING_BLOCK_LIST more concise. If other plugin are needed,
then add plugin library in BUILDING_BLOCK_LIST
**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>
jijoong.moon [Mon, 4 Mar 2019 08:30:49 +0000 (17:30 +0900)]
[Android] Add NO_AUDIO for video only case
There are the cases which has no needs for audio support. In order to
reduce shared library size, NO_AUDIO build Option is added.
**Changes proposed in this PR:**
- Addded NO_AUDIO option for build.
- Modify Android-app.mk and Android-nnstreamer.mk
**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>
Parichay Kapoor [Wed, 6 Mar 2019 07:45:50 +0000 (16:45 +0900)]
[IIO] Added doxygen entries
Added more doxygen entries for the functions
Updated some bugs
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
Parichay Kapoor [Tue, 5 Mar 2019 08:48:13 +0000 (17:48 +0900)]
[IIO] Add start/stop for src IIO
1. Add reading device and its properties
2. Get device ready to data capture, start function (null->ready state)
3. Filled stop function (ready->null state)
Signed-off-by: Parichay Kapoor <pk.kapoor@samsung.com>
MyungJoo Ham [Thu, 7 Mar 2019 05:45:04 +0000 (14:45 +0900)]
Update README: release status & typo correction
We now have Android-NDK build support. Apply the change along with a typofix.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Sangjung Woo [Fri, 8 Mar 2019 06:23:25 +0000 (15:23 +0900)]
[Common] Remove unnecessary init function call
This patch removes the unnecessary gst_tensor_config_init() function call
since init function of each type (i.g. gst_tensor_config_from_[TYPE]_info())
calls gst_tensor_config_init() internally.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Fri, 8 Mar 2019 11:05:15 +0000 (20:05 +0900)]
[Converter] test for converter properties
1. when called get_property, return empty string if converter has invalid tensor info.
2. check each properties iin stream test.
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
Hyoung Joo Ahn [Fri, 8 Mar 2019 08:25:25 +0000 (17:25 +0900)]
[Filter/Tensorflow] remove unused header files
clear unused tensorflow header files
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
MyungJoo Ham [Wed, 6 Mar 2019 10:37:21 +0000 (19:37 +0900)]
[Tizen] Native API Draft: Documentation
This is a draft for Tizen 5.5 NNStreamer Public API.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Wed, 6 Mar 2019 07:41:53 +0000 (16:41 +0900)]
Custom filter CodeGen / unittest
Add unittest cases for codegen
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Mon, 4 Mar 2019 08:52:40 +0000 (17:52 +0900)]
Custom filter CodeGen / Skeleton code
Although the code is far from completion,
this adds a skeleton for the custom filter codegen.
Often, codegen can be more effective than examples.
It is going to provide both .C and .meson files.
This starts implementing for #764
Precondition: nnstreamer is installed:
```
$ meson build && ninja -C build && sudo ninja -C build install
```
Test:
```
$ cd tools/development
$ python nnstreamerCodeGenCustomFilter.py
Please enter the name of the nnstreamer custom filter: abc
Please enter the custom filter name registered to tensor_filter.
Or press enter without name if [abc] is ok: s
Are dimensions of input/output tensors fixed? (yes/no):y
Are you going to allocate output buffer in your code? (yes/no):y
$ meson build
$ ninja -C build
$ gst-launch-1.0 videotestsrc num-buffers=10 ! videoconvert ! videoscale ! video/x-raw,width=224,height=224 ! tensor_converter ! tensor_filter framework=custom model=build/libs.so ! fakesink
```
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Geunsik Lim [Tue, 5 Mar 2019 23:01:00 +0000 (08:01 +0900)]
Build: synchronize vesion info among platforms
This commit is to synchronize the version information among Ubuntu,
Tizen, Android, and Meson.
For example,
1. Ubuntu : ./debian/changelog
2. Tizen : ./packaging/nnstreamer.spec
3. Android: ./jni/Android*.mk
4. Meson : ./meson.build
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
MyungJoo Ham [Thu, 7 Mar 2019 01:45:10 +0000 (10:45 +0900)]
[Filter] Clear & explicit error for missing extensions.
If an extension (e.g., nnstreamer-tensorflow) is missing,
the error message must be explicit and visible even without
GST_DEBUG envvars; most applications developers won't know it.
However, we cannot alarm them at the stage of set-properties.
Thus, delay alarming until it becomes "fatal".
Fixes #1206
Helps https://github.com/nnsuite/nnstreamer-example/issues/21
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
MyungJoo Ham [Thu, 7 Mar 2019 01:03:17 +0000 (10:03 +0900)]
[Workaround] There is no tensorflow deb in the PPA
In Ubuntu PPA, there is tensorflow-dev, not tensorflow, which
includes both devel and libraries.
As a workaround, make it depends on either of the two.
Fixes #1204
Addresses https://github.com/nnsuite/nnstreamer-example/issues/21
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Wed, 6 Mar 2019 07:02:28 +0000 (16:02 +0900)]
[Test/Aggregator] testcase for same in/out frames
add new testcases for aggregator properties and same in/out frames
Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>