Hyoung Joo Ahn [Thu, 13 May 2021 10:43:41 +0000 (19:43 +0900)]
[MQTTsink] remove message arrived cb
The callback `on_message_arrived ()` is not required for MQTTsink because it publishes the messages
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Jaeyun [Fri, 23 Apr 2021 11:30:08 +0000 (20:30 +0900)]
[Test] testcases for flex tensor
add testcases about flex-tensor stream.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Fri, 23 Apr 2021 11:28:36 +0000 (20:28 +0900)]
[Converter] support flex tensor
Add pad template to handle flex tensors.
tensor-converter supports changing capability from flex to static, or static to flex if downstream element has flex-tensor caps.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Dongju Chae [Tue, 11 May 2021 09:03:56 +0000 (18:03 +0900)]
[Tools/Parser] Find element name in the pipeline
This patch finds element name in the pipeline.
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Junhwan Kim [Thu, 13 May 2021 04:54:19 +0000 (13:54 +0900)]
[Fix/Filter] Fix tensors info initialization
- Internal tensors-info is not correctly initialized for some sub filters, causing incompatible format error.
Signed-off-by: Junhwan Kim <jejudo.kim@samsung.com>
Hyoung Joo Ahn [Thu, 13 May 2021 03:26:40 +0000 (12:26 +0900)]
[MQTTsink] add mqtt QoS as a property
To activate the delivery_complete callback, the `mqtt-qos` property is required.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Gichan Jang [Thu, 22 Apr 2021 00:29:13 +0000 (09:29 +0900)]
[Converter] Add subplugins for python custom converter
Add subplugins for python custom converter
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Hyoung Joo Ahn [Wed, 12 May 2021 11:40:32 +0000 (20:40 +0900)]
[MQTTsrc] remove cb_mqtt_on_delivery_complete ()
this callbeck is useless for the subscriber
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Hyoung Joo Ahn [Wed, 12 May 2021 11:12:48 +0000 (20:12 +0900)]
[MQTTsrc] add log messages when connection lost
Since the `cause` of cb_connection_lost is always null, IMO, we need to guide user to check the log messages of the broker
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Hyoung Joo Ahn [Wed, 12 May 2021 11:12:38 +0000 (20:12 +0900)]
[MQTTsrc] change the keep alive interval
set the DEFAULT_MQTT_KEEP_ALIVE_INTERVAL to 1 minute.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Jaeyun [Mon, 10 May 2021 09:26:53 +0000 (18:26 +0900)]
[Crop] add tensor-crop
Initial commit to add tensor-crop element.
tensor-crop will crop the incoming buffer with crop info.
TODO: define pads
- 2 sink pads: static tensor for raw data, flexible for crop info
- src pad: flexible with cropped tensor
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Wook Song [Fri, 30 Apr 2021 08:02:10 +0000 (17:02 +0900)]
[Gst/MQTT/Src] Add a new property to control the live source mode
This patch adds a new property to specify whether this element acts as a
live source or not. If this property is set to true, the incoming
buffers' timestamp would be synchronized with the current running time
of the pipeline. Since the defualt value is true, it should be disabled
if you want to listen to messages that could have relatively long jitters
or delays.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 30 Apr 2021 04:43:14 +0000 (13:43 +0900)]
[Gst/MQTT/Src] Handle the GST_QEURY_LATENCY query
This patch overrides the GstBaseSrc virtual method to handl the
GST_QUERY_LATENCY. To this end, the latency calculation procedure is
also added before the incoming buffer is sent the downstream.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Yongjoo Ahn [Wed, 12 May 2021 01:35:55 +0000 (10:35 +0900)]
[fix/trivial] Fix compile warning of g_param_spec_string in gsttensormerge.c
- Set default string value as argument of `g_param_spec_string()`
Signed-off-by: Yongjoo Ahn <yongjoo1.ahn@samsung.com>
Wook Song [Thu, 29 Apr 2021 09:37:01 +0000 (18:37 +0900)]
[Gst/MQTT] Add a new property to enable debugging outputs
This patch adds a new property, 'debug', for controlling the visibility
of debugging outputs.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 28 Apr 2021 07:00:38 +0000 (16:00 +0900)]
[Gst/MQTT/Sink] Add missing g_free to fix memory leaks
This patch fixes memory leaks reported by Valgrind by adding missing
g_free invocations.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 28 Apr 2021 05:45:03 +0000 (14:45 +0900)]
[Gst/MQTT/Src] Fix memory leaks reported by Valgrind
This patch fixes memory leaks reported by Valgrind categorized as
definitely lost.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Yongjoo Ahn [Thu, 6 May 2021 08:39:03 +0000 (17:39 +0900)]
[filter/tflite] Add XNNPACK delegate support
- Support XNNPACK delegate
- XNNPACK is a optimized library of floating point inference operators
for ARM, x86
REF:
- https://github.com/tensorflow/tensorflow/tree/master/tensorflow/lite/delegates/xnnpack
Signed-off-by: Yongjoo Ahn <yongjoo1.ahn@samsung.com>
Dongju Chae [Wed, 28 Apr 2021 00:40:23 +0000 (09:40 +0900)]
[Tools/Parser] Update build script and add top-level program
This patch updates the build script and adds top-level program
to test build process.
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Dongju Chae [Tue, 27 Apr 2021 10:44:04 +0000 (19:44 +0900)]
[Tools/Parser] Remove gstreamer functions and add their substitutes
This patch removes gstreamer functions and add their substitutes.
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Dongju Chae [Wed, 28 Apr 2021 01:14:39 +0000 (10:14 +0900)]
[Tools/Parser] Fix logging messages
This patch fixes logging messages.
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Dongju Chae [Wed, 28 Apr 2021 00:49:22 +0000 (09:49 +0900)]
[Tools/Parser] Remove delayed linking temporally
This patch removes delayed linking temporally
as it requires too much gstreamer-dependent ones.
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Hyoung Joo Ahn [Mon, 10 May 2021 10:50:54 +0000 (19:50 +0900)]
[TensorMerge] change the description of tensor_merge
Since the description of `tensor_merge` is too short to make a pipeline with it.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Hyoung Joo Ahn [Mon, 10 May 2021 10:35:37 +0000 (19:35 +0900)]
[TensorMerge] change the default mode to linear
Currently, if the property `mode` is empty, `tensor_merge` generates an error because the default of the property is ERR. Furthermore, only the mode `linear` is available, it should be a default mode.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Jaeyun [Mon, 10 May 2021 09:57:27 +0000 (18:57 +0900)]
[Transform] change val name in macro
Fix svace issue, change local param in macro.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Wook Song [Mon, 10 May 2021 12:35:29 +0000 (21:35 +0900)]
[Documentation/MQTT] Add a draft explaining the timestamp synchronization
This patch adds a draft that explains the timestamp conversion between
inter-pipelines running on the different devices and the intra-pipeline
timestamp synchronization.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Jaeyun [Tue, 27 Apr 2021 03:13:49 +0000 (12:13 +0900)]
[Test/Util] compare flex tensor info
add testcases to compare flex tensor info.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Fri, 23 Apr 2021 11:16:00 +0000 (20:16 +0900)]
[Common] utils to handle flex tensor
add util functions to handle flexible tensor stream.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Mon, 3 May 2021 07:48:11 +0000 (16:48 +0900)]
[Filter] handle invalid buffer
handle error case if incoming buffer has invalid size or the number of mem blocks is different.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Wook Song [Tue, 27 Apr 2021 04:15:01 +0000 (13:15 +0900)]
[Gst/MQTT/Src] Support GstCaps re-negotiation
To support GstCaps re-negotiation based on the information embedded in
the incoming messages' headers, this patch adds procedures to extract
the GstCaps information from the incoming messages' headers and send a
new Caps event to the downstream. As a result, fixating Caps and
negotiating Caps are done again during the message/buffer processing.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 27 Apr 2021 01:59:31 +0000 (10:59 +0900)]
[Gst/MQTT/Sink] Update the message header at every publish
In order to reduce memory copying overhead, the previous implementation
updates the message header only once at the first publish moment. This
might be a little bit effective but cannot handle the incoming buffers
with variable sizes. To overcome such restriction, the message header
will be updated at every publish moment.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 27 Apr 2021 01:50:17 +0000 (10:50 +0900)]
[Gst/MQTT/Sink] bugfix: Add missing g_free for the message buffer
This patch adds missing g_free for the message buffer,
self->mqtt_msg_buf, dynamically allocated.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Mon, 26 Apr 2021 12:06:59 +0000 (21:06 +0900)]
[Gst/MQTT/Sink] Include a string representing caps in the message header
This patch includes a string representation of the fixated GstCaps into
the message header.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Mon, 10 May 2021 02:31:41 +0000 (11:31 +0900)]
[Tests/Converter] Fix -Werror=sign-compare error
This patch fixes a build error related to -Werror=sign-compare. Note
that this error occurs while building the source code using gcc-7.5.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Jaeyun [Fri, 7 May 2021 10:39:18 +0000 (19:39 +0900)]
[Decoder/BoundingBox] remove unnecessary value
remove unnecessary global value in decoder-subplugin.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Gichan Jang [Fri, 7 May 2021 05:27:43 +0000 (14:27 +0900)]
[TEST] Add set property function
Add set filter property function.
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Hyoung Joo Ahn [Fri, 7 May 2021 05:10:32 +0000 (14:10 +0900)]
[Spec] add the restricted elements
the elements for audio & edgeAI have been added.
to make it clear, the additional macros have been added.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Jaeyun [Thu, 6 May 2021 04:43:59 +0000 (13:43 +0900)]
[Common/CodeClean] function to get pad caps
Code clean, revise function name and remove unnecessary function to check peer caps.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Thu, 6 May 2021 04:35:27 +0000 (13:35 +0900)]
[Filter] error in query caps
In transform-caps function, element should not query caps to peer.
The element should add all possible caps here.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Tue, 4 May 2021 04:38:43 +0000 (13:38 +0900)]
[Test] filters with other/tensor
tensor-filter queries peer caps to check the mimetype.
nnstreamer should handle multi filters connection without an error.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Junhwan Kim [Tue, 27 Apr 2021 04:47:34 +0000 (13:47 +0900)]
[Test/TVM] Add unittest for TVM subplugin
- Add simple model for unittest
Signed-off-by: Junhwan Kim <jejudo.kim@samsung.com>
Jaeyun [Tue, 4 May 2021 10:24:06 +0000 (19:24 +0900)]
[Conf/Subplugin] get registered subplugins
Util function to get registrable subplugins list.
If conf file is not loaded (or does not exists), nnstreamer cannot get the subplugin list from configuration.
In this case (e.g., Android), conveter cannot set the pad template from subplugins, and will make negotiation failure.
To prevent this error, get subplugins from table and conf file.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Gichan Jang [Tue, 4 May 2021 02:19:26 +0000 (11:19 +0900)]
[TEST] Seperate postive and negative tests
Seperate positive and negative tests of the unittest_armnn
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Jaeyun [Fri, 30 Apr 2021 04:53:55 +0000 (13:53 +0900)]
[Test] condition to check file size
In test-util function, set condition to check file size while running a pipeline.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Fri, 30 Apr 2021 03:06:29 +0000 (12:06 +0900)]
[Filter/Prop] parse combination option
1. parse combi option as unsigned int and check the index (less than 16).
2. fix possible mem leak (release combi option list).
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Thu, 29 Apr 2021 10:04:15 +0000 (19:04 +0900)]
[Filter] input combi option
While getting tensor info in caps negotiation, check input combi option and compare info with combined.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Mon, 3 May 2021 08:06:43 +0000 (17:06 +0900)]
[If] invalid map info
memory map info is valid until gst_memory_unmap() is called.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Wook Song [Fri, 23 Apr 2021 09:42:10 +0000 (18:42 +0900)]
[Gst/MQTT/Sink] Support dynamic buffer re-allocation
This patch changes the message buffer allocation mechanism. When the
size of the incoming GStreamer buffer exceeds that of the current
message buffer allocated, the existing buffer would be freed and
re-allocated. Note that in the case the size of the message buffer
is fixed by the max-buffer-size property, this feature is disabled.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 23 Apr 2021 06:16:41 +0000 (15:16 +0900)]
[Gst/MQTT/Sink] Introduce a new property, max-buffer-size
This patch introduces a new property, max-buffer-size, which specifies
the maximum size of a message buffer.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 22 Apr 2021 06:21:05 +0000 (15:21 +0900)]
[Gst/MQTT] Support basic timestamp synchronization
This patch adds a feature for the basic timestamp synchronization
support. Note that this feature works under the assumption that all the
device's system date and time values have been synchronized.
Signed-off-by: Wook Song <wook16.song@samsung.com>
shortcipher3 [Fri, 30 Apr 2021 23:05:59 +0000 (17:05 -0600)]
with GST_PLUGIN_PATH set `gst-inspect-1.0 nnstreamer` works, also renamed Dockerfile to use standard naming convention
Signed-off-by: shortcipher3 <chris.jon.hall@gmail.com>
Jaeyun [Fri, 30 Apr 2021 04:55:19 +0000 (13:55 +0900)]
[Format] clang format for typecast
add space when using c-style typecast.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Hyoung Joo Ahn [Mon, 26 Apr 2021 02:45:03 +0000 (11:45 +0900)]
[Decoders] fix the mem leaks of the external decoders
Since the ref count is raised when `gst_buffer_get_all_memory ()` is used, `gst_memory_unref ()` has to be called after using the memory.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Jaeyun [Thu, 29 Apr 2021 07:03:10 +0000 (16:03 +0900)]
[Test/NNFW] init info in testcase
Initialize tensor-info struct before calling filter callback.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Junhwan Kim [Fri, 16 Apr 2021 12:55:29 +0000 (21:55 +0900)]
[filter/TVM] Add tensor-filter subplugin for TVM
- `dlpack` and either `tvm` or `tvm_runtime` should be included
- Only supports tvm model compiled with relay (graph_executor)
Signed-off-by: Junhwan Kim <jejudo.kim@samsung.com>
Wook Song [Tue, 20 Apr 2021 01:45:38 +0000 (10:45 +0900)]
[Gst/MQTT] bugfix: Change default values for pub/sub-topic and client-id
This patch changes the default values which are used when the values for
the pub/sub-topic and client-id properties are not given.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 2 Apr 2021 15:33:20 +0000 (00:33 +0900)]
[Gst/MQTT/Src] Eliminate unnecessary critical sections
This patch removes unnecessary critical sections. Mutual exclusion
controlling is only needed when trying to change the pipeline's state.
In addition, instead of locking and unlocking the element object itself,
a GMutex variable in the object is used.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 2 Apr 2021 15:16:29 +0000 (00:16 +0900)]
[Gst/MQTT/Src] Remove unnecessary dynamic memory allocations
In order to reduce the burden from memory management, this patch removes
unnecessary dynamic memory allocations.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 2 Apr 2021 14:40:27 +0000 (23:40 +0900)]
[Gst/MQTT/Sink] Revise mqttsink to use the MQTTAsync C client library
This patch revises the mqttsink element to use the Asynchronous MQTT
client library for C. Unnecessary dynamic allocation and lock operations
are also removed.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Fri, 26 Mar 2021 13:18:16 +0000 (22:18 +0900)]
[Gst/MQTT/Src] Support asynchronous subscribe via paho.mqtt.c
This patch enables mqttsrc to support an asynchronous subscribe to the
given topic. In the mqttsrc implementation, the asynchronous MQTT client
library for C has been used instead of the MQTT Client library for C,
used for implementation of mqttsink.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Thu, 18 Mar 2021 07:58:05 +0000 (16:58 +0900)]
[Gst/MQTT/Sink] Support synchronize publish via paho.mqtt.c
This patch updates mqttsink to support synchronize publish using the
MQTT protocol. Note that only basic features required to publish a
topic are currently implemented.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Sangjung Woo [Thu, 29 Apr 2021 06:18:53 +0000 (15:18 +0900)]
[TCM] Rename TCM config file
To run the TCM on AHub infra, the default name of config file should be
'config.yaml'.
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
Jaeyun [Tue, 27 Apr 2021 07:40:03 +0000 (16:40 +0900)]
[Filter] reduce duplicated source
Code clean, add common functions for combi option and set-info callback.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Thu, 29 Apr 2021 03:13:26 +0000 (12:13 +0900)]
[Format] fix format and code style
fix clang format error in taos-ci and code style.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Wed, 28 Apr 2021 08:07:08 +0000 (17:07 +0900)]
[Format] fix clang format
fix clang format error in taos-ci and testcase name rule.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Mon, 26 Apr 2021 04:59:56 +0000 (13:59 +0900)]
[Common] add init-config
Before updating tensor config, initialize config struct.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Wook Song [Mon, 15 Mar 2021 07:06:11 +0000 (16:06 +0900)]
[Meson/MQTT] Add an option to support MQTT
This patch adds a Meson configuration option to support MQTT. In order
to avoid build break, this option is disabled for the Debian and Tizen
packages.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Wed, 10 Mar 2021 09:15:01 +0000 (18:15 +0900)]
[Gst/MQTT/Sink] Make it work as a dummy sink
This patch makes MQTTSink work as a dummy sink that has a single sink
pad with "ANY" caps.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 9 Mar 2021 02:01:28 +0000 (11:01 +0900)]
[Meson/MQTT] Generate libgstmqtt including MQTT GstElements
This patch modifies the meson build scripts to add the skeleton code of
MQTT plugins and generate libgstmqtt, the collection of them.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Wook Song [Tue, 9 Mar 2021 01:52:29 +0000 (10:52 +0900)]
[Gst/MQTT] Add skeleton codes for MQTT plugins
This patch adds skeleton codes of sink and src elements for MQTT support.
Signed-off-by: Wook Song <wook16.song@samsung.com>
Gichan Jang [Tue, 27 Apr 2021 09:51:35 +0000 (18:51 +0900)]
[Filter] python3 helper funciton
nnstreamer_python3 package include python3 helper functiom.
Change it to use by converter and decoder.
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Jaeyun [Fri, 23 Apr 2021 10:58:17 +0000 (19:58 +0900)]
[Sink] accept flex tensor
add pad template to handle flexible tensor stream.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Gichan Jang [Wed, 14 Apr 2021 04:57:14 +0000 (13:57 +0900)]
[Converter] Change external converter param
Change external converter param
- Remove unnecessary param (frames_in, frame_size)
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Jaeyun [Tue, 20 Apr 2021 09:54:18 +0000 (18:54 +0900)]
[Common] predefined mime type
Code clean, compare predefined mime type - other/tensor(s).
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Yongjoo Ahn [Fri, 9 Apr 2021 02:50:01 +0000 (11:50 +0900)]
[filter/tflite] Add enum for tflite delegates
- Add enum for delegates
- Refactor parsing custom props
Signed-off-by: Yongjoo Ahn <yongjoo1.ahn@samsung.com>
Hyoung Joo Ahn [Fri, 23 Apr 2021 02:31:51 +0000 (11:31 +0900)]
[Decoder/BoundingBox] add a testcase for the deprecated modes
To guarantee backward compatibility with the deprecated modes(`tflite-ssd`, `tf-ssd`), some test cases are required.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
MyungJoo Ham [Wed, 16 Dec 2020 08:26:00 +0000 (17:26 +0900)]
[Tools/Parser] GST Object Emulators
These aux routines emulate GST Objects so that
parsers wouldn't rely on actual GStreamer libraries
and pipeline instances.
This commit is WIP and will be continued by DJ.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Jaeyun [Mon, 19 Apr 2021 11:04:31 +0000 (20:04 +0900)]
[FlexTensors] define mimetype for flexible tensors
add definition to handle flexible tensors stream.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Mon, 19 Apr 2021 10:20:57 +0000 (19:20 +0900)]
[Converter] reduce complexity
code clean, reduce code complexity.
add internal function to parse incoming caps for custom mode.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Hyoung Joo Ahn [Wed, 21 Apr 2021 04:26:55 +0000 (13:26 +0900)]
[Decoder/BoundingBox] revive old modes for backward compatibility
For the old-pipeline, make the previous names are usable.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Hyoung Joo Ahn [Tue, 13 Apr 2021 01:21:21 +0000 (10:21 +0900)]
[Decoder/BoundingBox] change the name of option
The mode of this decoder should be decided according to the model rather than the framework.
Currently, however, some of the modes are decided by the framework: `tf-ssd`, `tflite-ssd`
If we want to use this decoder to run a TFLite model that include the `postprocess`, we have to use `tf-ssd`.
It could occur some confusion.
For this reason, I want to suggest that the name should be changed.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Gichan Jang [Tue, 20 Apr 2021 04:55:27 +0000 (13:55 +0900)]
[indent] Change indent style
Change coding style
- but no space after unary operators:
& * + - ~ ! sizeof typeof alignof __attribute__ defined
reference: https://www.kernel.org/doc/html/v4.10/process/coding-style.html
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Gichan Jang [Tue, 20 Apr 2021 05:39:35 +0000 (14:39 +0900)]
[Docs] Change nnstreamer CI server link
Change nnstreamer CI server link
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Jihoon Lee [Wed, 10 Mar 2021 12:13:20 +0000 (21:13 +0900)]
Enable detection for nntrainer singleshot
This patch maps *.ini as nntrainer to utilize auto detection for
nntrainer.
**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
Jaeyun [Mon, 12 Apr 2021 03:24:40 +0000 (12:24 +0900)]
[Common/Collect] check null param
add condition to check null param (public functions only)
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Jaeyun [Fri, 9 Apr 2021 08:22:09 +0000 (17:22 +0900)]
[Mux/Merge] clear collect pad data
Clear old buffer in collect pad data when received flush event.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Gichan Jang [Mon, 12 Apr 2021 02:00:11 +0000 (11:00 +0900)]
[Converter] Add caps filter
Add caps filter of tensor converter for _NNS_MEDIA_ANY type.
Example launchline:
```
...
tensor_filter silent=false framework=tensorflow-lite model=tflite_model/ssd_mobilenet_v2_coco.tflite ! \
tensor_decoder mode=flexbuf ! other/flexbuf ! tensor_converter silent=false ! \
other/tensors, num_tensors=2, framerate=30/1, dimensions=\"4:1:1917:1\,91:1917:1:1\", types=\"float32\,float32\" ! \
tensor_decoder mode=bounding_boxes option1=tflite-ssd option2=tflite_model/coco_labels_list.txt option3=tflite_model/box_priors.txt option4=640:480 option5=300:300 ! ... \
```
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Gichan Jang [Mon, 12 Apr 2021 07:50:52 +0000 (16:50 +0900)]
[Doc] Change menu tree name of contributing doc.
Change menu tree name of Documentation/contributing.md.
Related issue: #3100
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Hyoung Joo Ahn [Fri, 9 Apr 2021 03:38:02 +0000 (12:38 +0900)]
[Decoder/DirectVideo] add the video format RGBA
To handle various video formats, the available formats are required for the direct video decoder and add an option to handle it.
Signed-off-by: Hyoung Joo Ahn <hello.ahn@samsung.com>
Gichan Jang [Thu, 8 Apr 2021 02:21:45 +0000 (11:21 +0900)]
[TEST] Add converter and decoder subplugins test
Add tensor converter and decoder subplugin test
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Gichan Jang [Thu, 8 Apr 2021 06:38:51 +0000 (15:38 +0900)]
[Test] Add tensor transform mode option test
Add tensor transform mode option test
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Gichan Jang [Wed, 7 Apr 2021 05:18:14 +0000 (14:18 +0900)]
[TEST] Add tensor common unittests
Add unittest for tensor common functions.
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Gichan Jang [Tue, 6 Apr 2021 07:43:59 +0000 (16:43 +0900)]
[TCM] Modify tca config files
- Move android and tizen config file of the TCM to nnstreamer/api repo
- Modify nnstreamer config file of the TCM
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Gichan Jang [Tue, 6 Apr 2021 07:40:06 +0000 (16:40 +0900)]
[Converter/Decoder] Add error handling code and testcases
Add error handling code for tensor converter and decoder subplugins
Add testcases for tensor converter and decoder subplugins
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Gichan Jang [Tue, 6 Apr 2021 04:41:39 +0000 (13:41 +0900)]
[Converter] Define function to find subplugins
Define function to find converter subplugins.
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>
Yongjoo Ahn [Fri, 2 Apr 2021 09:45:41 +0000 (18:45 +0900)]
[aggregator/converter] Fix when GST_EVENT_FLUSH_*
- Do not reset tensor config when flush event occurs, just clear the buffers
Signed-off-by: Yongjoo Ahn <yongjoo1.ahn@samsung.com>
Jaeyun [Tue, 6 Apr 2021 03:22:17 +0000 (12:22 +0900)]
[Mux/Merge] change property name
change property name (sync mode and option), remove underbar in property name.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Dongju Chae [Mon, 5 Apr 2021 11:17:47 +0000 (20:17 +0900)]
[SRNPU/FILTER] Add auto detection for SRNPU subplugin
This patch adds auto detection for SRNPU subplugin.
Signed-off-by: Dongju Chae <dongju.chae@samsung.com>
Jaeyun [Thu, 1 Apr 2021 02:51:16 +0000 (11:51 +0900)]
[Android/AMC] clear looper
Clear looper when media steam is finished.
Signed-off-by: Jaeyun <jy1210.jung@samsung.com>
Gichan Jang [Mon, 5 Apr 2021 04:28:18 +0000 (13:28 +0900)]
Change gboolean comparison
Never directly compare the contents of a gboolean variable with the values TRUE or FALSE.
Use `if (condition)` to check a gboolean is "true", instead of `if (condition == TRUE)`. Likewise use `if (!condition)` to check a gboolean is "false".
There is no validation when assigning to a gboolean variable and so it could contain any value represented by a gint. This is why the use of if (condition) is recommended.
All non-zero values in C evaluate to "true".
Refer: https://developer.gnome.org/glib/stable/glib-Basic-Types.html#gboolean
Signed-off-by: Gichan Jang <gichan2.jang@samsung.com>