platform/upstream/nnstreamer.git
6 years ago[Convert] Tested and fixed with videotestsrc
MyungJoo Ham [Mon, 2 Apr 2018 07:24:06 +0000 (16:24 +0900)]
[Convert] Tested and fixed with videotestsrc

This is not an issue. Don't be alarmed.
- Regardless of videotestsrc framerate, convert2tensor gives ~1000 FPS outputs.
  . This happens when a sink-element attached at the src-pad of this element is not synching. Add sync option to the sink element.

How-to-test:
$ gst-launch-1.0 --gst-plugin-path=/PATH_TO_BUILT_SO videotestsrc ! video/x-raw,width=280,height=40,framerate=1/1 ! convert2tensor ! filesink location="test.log" sync=true

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Convert] Implement two negotiation methods.
MyungJoo Ham [Thu, 29 Mar 2018 08:01:16 +0000 (17:01 +0900)]
[Convert] Implement two negotiation methods.

Implement transform_caps / fixate_caps referring gstvideoconvert.c

set_caps() will be implemented tomorrow.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Convert] Apply x-raw/RGB format data structure.
MyungJoo Ham [Thu, 29 Mar 2018 02:33:30 +0000 (11:33 +0900)]
[Convert] Apply x-raw/RGB format data structure.

Data of x-raw/RGB is:

[height][width][RGB] and width has padding with stride = 4.

Thus, tensor output of convert2tensor generates width = 4 x N with zero-padding.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Convert] Implement Processing part from the document
MyungJoo Ham [Wed, 28 Mar 2018 06:38:24 +0000 (15:38 +0900)]
[Convert] Implement Processing part from the document

From the document, https://gstreamer.freedesktop.org/documentation/design/element-transform.html
implement "Processing" part.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Convert] Added skeletons for GstBaseTransform class
MyungJoo Ham [Wed, 28 Mar 2018 02:03:25 +0000 (11:03 +0900)]
[Convert] Added skeletons for GstBaseTransform class

Added null impementation of virtual methods of GstBaseTransform

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Convert] Change base class from "GstElement" to "GstBaseTransform"
MyungJoo Ham [Wed, 28 Mar 2018 01:44:59 +0000 (10:44 +0900)]
[Convert] Change base class from "GstElement" to "GstBaseTransform"

Let's use more advanced infrastructure, "GstBaseTranform".
Convert2Tensor is a transformer!

https://gstreamer.freedesktop.org/documentation/design/element-transform.html

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Converter] Get tensor metadata from sinkpad when it is created.
MyungJoo Ham [Tue, 27 Mar 2018 10:46:36 +0000 (19:46 +0900)]
[Converter] Get tensor metadata from sinkpad when it is created.

Sinkpad is created when a source element is attached to this filter (convert2filter).
Convert2filter becomes aware of its metadata (dimensions of tensor) at this point.
Thus, configure the metadata with the event handler.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Converter] Converter Core Function Located
MyungJoo Ham [Tue, 27 Mar 2018 07:59:32 +0000 (16:59 +0900)]
[Converter] Converter Core Function Located

Fill in gst_convert2tensor_sink_event to convert media data to tensors.
GST Tensor is to be defined with gst_convert2tensor_configure_tensor

Build Tested.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Converter] GST Plugin Tutorial 1 (Boilerplate) Followed.
MyungJoo Ham [Mon, 26 Mar 2018 12:39:29 +0000 (21:39 +0900)]
[Converter] GST Plugin Tutorial 1 (Boilerplate) Followed.

Standard Tensor Media Type Draft Applied as well.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Converter] GST Plugin Template Created
MyungJoo Ham [Mon, 26 Mar 2018 11:44:34 +0000 (20:44 +0900)]
[Converter] GST Plugin Template Created

An empty template for GST Plugin, "Convert2Tensor".

1. This is to draft & verify "other/tensor" GST type design.
2. Then, this will work as converter from media sources for NN filters.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Gst Example] tutorial-8
MyungJoo Ham [Mon, 26 Mar 2018 11:43:48 +0000 (20:43 +0900)]
[Gst Example] tutorial-8

GST Official Tutorial 8

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Gst Example] tutorial-6 and 7
MyungJoo Ham [Mon, 26 Mar 2018 04:54:36 +0000 (13:54 +0900)]
[Gst Example] tutorial-6 and 7

Added tutorial 6 and 7

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Gst Example] tutorial-3 and 3-exercise
MyungJoo Ham [Thu, 22 Mar 2018 09:46:49 +0000 (18:46 +0900)]
[Gst Example] tutorial-3 and 3-exercise

Dynamic stream construction.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Gst Exmaple] tutorial 2 and 2 + add-filter exercise
MyungJoo Ham [Thu, 22 Mar 2018 04:56:23 +0000 (13:56 +0900)]
[Gst Exmaple] tutorial 2 and 2 + add-filter exercise

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years agoFix typo in the tutorial example with the address
MyungJoo Ham [Thu, 22 Mar 2018 04:55:48 +0000 (13:55 +0900)]
Fix typo in the tutorial example with the address

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years ago[Gst Example] tutorial 1
MyungJoo Ham [Thu, 22 Mar 2018 02:06:43 +0000 (11:06 +0900)]
[Gst Example] tutorial 1

Learning https://gstreamer.freedesktop.org/documentation/tutorials/basic/hello-world.html

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
6 years agoInitial commit
함명주/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 22 Mar 2018 02:02:26 +0000 (11:02 +0900)]
Initial commit