* [meta-arago][scarthgap][PATCH] meta-arago-extras: Add recipe for NNStreamer
@ 2025-02-22 1:53 Andrew Davis
2025-02-22 2:25 ` Denys Dmytriyenko
0 siblings, 1 reply; 5+ messages in thread
From: Andrew Davis @ 2025-02-22 1:53 UTC (permalink / raw)
To: Denys Dmytriyenko, Ryan Eatmon, Chirag Shilwant, meta-arago; +Cc: Andrew Davis
NNStreamer is an efficient and flexible stream pipeline framework for
complex neural network applications.
NNStreamer provides a set of GStreamer plugins so developers may apply
neural networks, attach related frameworks (including ROS, IIO,
FlatBuffers, and Protocol Buffers), and manipulate tensor data streams
in GStreamer pipelines easily and execute such pipelines efficiently.
It was initially developed by Samsung and then transferred to LF AI
Foundation as an incubation project.
Learn more at https://nnstreamer.ai/
Signed-off-by: Andrew Davis <afd@ti.com>
---
.../nnstreamer/nnstreamer_2.4.0.bb | 68 +++++++++++++++++++
1 file changed, 68 insertions(+)
create mode 100644 meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
diff --git a/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
new file mode 100644
index 00000000..55de11e8
--- /dev/null
+++ b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
@@ -0,0 +1,68 @@
+SUMMARY = "NNStreamer, Stream Pipeline Paradigm for Nerual Network Applications"
+DESCRIPTION = "NNStreamer is a set of Gstreamer plugins that allow Gstreamer developers to adopt neural network models easily and efficiently."
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c25e5c1949624d71896127788f1ba590"
+
+SRC_URI = "git://github.com/nnstreamer/nnstreamer.git;branch=main;protocol=https"
+PV = "2.4.0+git"
+SRCREV = "7c57c288250578cad598f065b6fda6c0ff720cf9"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig
+
+DEPENDS = " \
+ orc-native \
+ glib-2.0 \
+ gstreamer1.0 \
+ gstreamer1.0-plugins-base \
+ python3 \
+ python3-numpy \
+ json-glib \
+"
+
+PACKAGECONFIG ??= " \
+ protobuf \
+ flatbuffers \
+ tests \
+ armnn \
+ onnxruntime \
+ tensorflow-lite \
+"
+
+PACKAGECONFIG[tests] = "-Denable-test=true -Dinstall-test=true, -Denable-test=false, gtest"
+PACKAGECONFIG[protobuf] = "-Dprotobuf-support=enabled, -Dprotobuf-support=disabled, protobuf protobuf-native"
+PACKAGECONFIG[flatbuffers] = "-Dflatbuf-support=enabled, -Dflatbuf-support=disabled, flatbuffers flatbuffers-native"
+PACKAGECONFIG[armnn] = "-Darmnn-support=enabled, -Darmnn-support=disabled, armnn"
+PACKAGECONFIG[onnxruntime] = "-Donnxruntime-support=enabled, -Donnxruntime-support=disabled, onnxruntime"
+PACKAGECONFIG[tensorflow-lite] = "-Dtflite2-support=enabled, -Dtflite2-support=disabled, tensorflow-lite"
+
+do_install:append() {
+ CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership"
+
+ # Install test data
+ install -d ${D}/${bindir}/unittest-nnstreamer/tests
+ cp $CP_ARGS ${S}/tests/test_models ${D}/${bindir}/unittest-nnstreamer/tests
+ rm -f ${D}/${bindir}/unittest-nnstreamer/tests/test_models/models/tvm*
+}
+
+FILES:${PN} += "\
+ ${libdir}/*.so \
+ ${libdir}/gstreamer-1.0/*.so \
+ ${libdir}/nnstreamer/* \
+ ${sysconfdir}/nnstreamer.ini \
+"
+INSANE_SKIP:${PN} += "dev-so"
+
+PACKAGES =+ "${PN}-tests"
+
+FILES:${PN}-tests += "\
+ ${libdir}/nnstreamer/customfilters/* \
+ ${bindir}/unittest-nnstreamer/* \
+"
+
+FILES:${PN}-dev = "\
+ ${includedir}/nnstreamer/* \
+ ${libdir}/*.a \
+ ${libdir}/pkgconfig/*.pc \
+"
--
2.39.2
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [meta-arago][scarthgap][PATCH] meta-arago-extras: Add recipe for NNStreamer
2025-02-22 1:53 [meta-arago][scarthgap][PATCH] meta-arago-extras: Add recipe for NNStreamer Andrew Davis
@ 2025-02-22 2:25 ` Denys Dmytriyenko
2025-02-22 2:53 ` Andrew Davis
0 siblings, 1 reply; 5+ messages in thread
From: Denys Dmytriyenko @ 2025-02-22 2:25 UTC (permalink / raw)
To: afd; +Cc: Denys Dmytriyenko, Ryan Eatmon, Chirag Shilwant, meta-arago
On Fri, Feb 21, 2025 at 07:53:58PM -0600, Andrew Davis via lists.yoctoproject.org wrote:
> NNStreamer is an efficient and flexible stream pipeline framework for
> complex neural network applications.
>
> NNStreamer provides a set of GStreamer plugins so developers may apply
> neural networks, attach related frameworks (including ROS, IIO,
> FlatBuffers, and Protocol Buffers), and manipulate tensor data streams
> in GStreamer pipelines easily and execute such pipelines efficiently.
>
> It was initially developed by Samsung and then transferred to LF AI
> Foundation as an incubation project.
FWIW, nnstreamer project on github has its own meta-neural-network layer with
a corresponding nnstreamer recipe:
https://github.com/nnstreamer/meta-neural-network
https://github.com/nnstreamer/meta-neural-network/blob/master/recipes-nnstreamer/nnstreamer/nnstreamer_2.4.2.bb
> Learn more at https://nnstreamer.ai/
>
> Signed-off-by: Andrew Davis <afd@ti.com>
> ---
> .../nnstreamer/nnstreamer_2.4.0.bb | 68 +++++++++++++++++++
> 1 file changed, 68 insertions(+)
> create mode 100644 meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>
> diff --git a/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
> new file mode 100644
> index 00000000..55de11e8
> --- /dev/null
> +++ b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
> @@ -0,0 +1,68 @@
> +SUMMARY = "NNStreamer, Stream Pipeline Paradigm for Nerual Network Applications"
> +DESCRIPTION = "NNStreamer is a set of Gstreamer plugins that allow Gstreamer developers to adopt neural network models easily and efficiently."
> +LICENSE = "LGPL-2.1-only"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=c25e5c1949624d71896127788f1ba590"
> +
> +SRC_URI = "git://github.com/nnstreamer/nnstreamer.git;branch=main;protocol=https"
> +PV = "2.4.0+git"
> +SRCREV = "7c57c288250578cad598f065b6fda6c0ff720cf9"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit meson pkgconfig
> +
> +DEPENDS = " \
> + orc-native \
> + glib-2.0 \
> + gstreamer1.0 \
> + gstreamer1.0-plugins-base \
> + python3 \
> + python3-numpy \
> + json-glib \
> +"
> +
> +PACKAGECONFIG ??= " \
> + protobuf \
> + flatbuffers \
> + tests \
> + armnn \
> + onnxruntime \
> + tensorflow-lite \
> +"
> +
> +PACKAGECONFIG[tests] = "-Denable-test=true -Dinstall-test=true, -Denable-test=false, gtest"
> +PACKAGECONFIG[protobuf] = "-Dprotobuf-support=enabled, -Dprotobuf-support=disabled, protobuf protobuf-native"
> +PACKAGECONFIG[flatbuffers] = "-Dflatbuf-support=enabled, -Dflatbuf-support=disabled, flatbuffers flatbuffers-native"
> +PACKAGECONFIG[armnn] = "-Darmnn-support=enabled, -Darmnn-support=disabled, armnn"
> +PACKAGECONFIG[onnxruntime] = "-Donnxruntime-support=enabled, -Donnxruntime-support=disabled, onnxruntime"
> +PACKAGECONFIG[tensorflow-lite] = "-Dtflite2-support=enabled, -Dtflite2-support=disabled, tensorflow-lite"
> +
> +do_install:append() {
> + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership"
> +
> + # Install test data
> + install -d ${D}/${bindir}/unittest-nnstreamer/tests
> + cp $CP_ARGS ${S}/tests/test_models ${D}/${bindir}/unittest-nnstreamer/tests
> + rm -f ${D}/${bindir}/unittest-nnstreamer/tests/test_models/models/tvm*
> +}
> +
> +FILES:${PN} += "\
> + ${libdir}/*.so \
> + ${libdir}/gstreamer-1.0/*.so \
> + ${libdir}/nnstreamer/* \
> + ${sysconfdir}/nnstreamer.ini \
> +"
> +INSANE_SKIP:${PN} += "dev-so"
> +
> +PACKAGES =+ "${PN}-tests"
> +
> +FILES:${PN}-tests += "\
> + ${libdir}/nnstreamer/customfilters/* \
> + ${bindir}/unittest-nnstreamer/* \
> +"
> +
> +FILES:${PN}-dev = "\
> + ${includedir}/nnstreamer/* \
> + ${libdir}/*.a \
FWIW, these get automatically packaged into ${PN}-staticdev
> + ${libdir}/pkgconfig/*.pc \
> +"
> --
> 2.39.2
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [meta-arago][scarthgap][PATCH] meta-arago-extras: Add recipe for NNStreamer
2025-02-22 2:25 ` Denys Dmytriyenko
@ 2025-02-22 2:53 ` Andrew Davis
2025-02-25 22:11 ` Ryan Eatmon
0 siblings, 1 reply; 5+ messages in thread
From: Andrew Davis @ 2025-02-22 2:53 UTC (permalink / raw)
To: Denys Dmytriyenko
Cc: Denys Dmytriyenko, Ryan Eatmon, Chirag Shilwant, meta-arago
On 2/21/25 8:25 PM, Denys Dmytriyenko wrote:
> On Fri, Feb 21, 2025 at 07:53:58PM -0600, Andrew Davis via lists.yoctoproject.org wrote:
>> NNStreamer is an efficient and flexible stream pipeline framework for
>> complex neural network applications.
>>
>> NNStreamer provides a set of GStreamer plugins so developers may apply
>> neural networks, attach related frameworks (including ROS, IIO,
>> FlatBuffers, and Protocol Buffers), and manipulate tensor data streams
>> in GStreamer pipelines easily and execute such pipelines efficiently.
>>
>> It was initially developed by Samsung and then transferred to LF AI
>> Foundation as an incubation project.
>
> FWIW, nnstreamer project on github has its own meta-neural-network layer with
> a corresponding nnstreamer recipe:
> https://github.com/nnstreamer/meta-neural-network
> https://github.com/nnstreamer/meta-neural-network/blob/master/recipes-nnstreamer/nnstreamer/nnstreamer_2.4.2.bb
>
I did find that earlier when looking for existing recipes for this
framework, but that recipe needs some work. That layer also pulls
in a bunch of other stuff we don't need/want.
I did use that as a kicking-off point. I'll try to push back my
fixes at some point. Maybe we can work to move that into a more
common layer.
>
>> Learn more at https://nnstreamer.ai/
>>
>> Signed-off-by: Andrew Davis <afd@ti.com>
>> ---
>> .../nnstreamer/nnstreamer_2.4.0.bb | 68 +++++++++++++++++++
>> 1 file changed, 68 insertions(+)
>> create mode 100644 meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>
>> diff --git a/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>> new file mode 100644
>> index 00000000..55de11e8
>> --- /dev/null
>> +++ b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>> @@ -0,0 +1,68 @@
>> +SUMMARY = "NNStreamer, Stream Pipeline Paradigm for Nerual Network Applications"
>> +DESCRIPTION = "NNStreamer is a set of Gstreamer plugins that allow Gstreamer developers to adopt neural network models easily and efficiently."
>> +LICENSE = "LGPL-2.1-only"
>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=c25e5c1949624d71896127788f1ba590"
>> +
>> +SRC_URI = "git://github.com/nnstreamer/nnstreamer.git;branch=main;protocol=https"
>> +PV = "2.4.0+git"
>> +SRCREV = "7c57c288250578cad598f065b6fda6c0ff720cf9"
>> +
>> +S = "${WORKDIR}/git"
>> +
>> +inherit meson pkgconfig
>> +
>> +DEPENDS = " \
>> + orc-native \
>> + glib-2.0 \
>> + gstreamer1.0 \
>> + gstreamer1.0-plugins-base \
>> + python3 \
>> + python3-numpy \
>> + json-glib \
>> +"
>> +
>> +PACKAGECONFIG ??= " \
>> + protobuf \
>> + flatbuffers \
>> + tests \
>> + armnn \
>> + onnxruntime \
>> + tensorflow-lite \
>> +"
>> +
>> +PACKAGECONFIG[tests] = "-Denable-test=true -Dinstall-test=true, -Denable-test=false, gtest"
>> +PACKAGECONFIG[protobuf] = "-Dprotobuf-support=enabled, -Dprotobuf-support=disabled, protobuf protobuf-native"
>> +PACKAGECONFIG[flatbuffers] = "-Dflatbuf-support=enabled, -Dflatbuf-support=disabled, flatbuffers flatbuffers-native"
>> +PACKAGECONFIG[armnn] = "-Darmnn-support=enabled, -Darmnn-support=disabled, armnn"
>> +PACKAGECONFIG[onnxruntime] = "-Donnxruntime-support=enabled, -Donnxruntime-support=disabled, onnxruntime"
>> +PACKAGECONFIG[tensorflow-lite] = "-Dtflite2-support=enabled, -Dtflite2-support=disabled, tensorflow-lite"
>> +
>> +do_install:append() {
>> + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership"
>> +
>> + # Install test data
>> + install -d ${D}/${bindir}/unittest-nnstreamer/tests
>> + cp $CP_ARGS ${S}/tests/test_models ${D}/${bindir}/unittest-nnstreamer/tests
>> + rm -f ${D}/${bindir}/unittest-nnstreamer/tests/test_models/models/tvm*
>> +}
>> +
>> +FILES:${PN} += "\
>> + ${libdir}/*.so \
>> + ${libdir}/gstreamer-1.0/*.so \
>> + ${libdir}/nnstreamer/* \
>> + ${sysconfdir}/nnstreamer.ini \
>> +"
>> +INSANE_SKIP:${PN} += "dev-so"
>> +
>> +PACKAGES =+ "${PN}-tests"
>> +
>> +FILES:${PN}-tests += "\
>> + ${libdir}/nnstreamer/customfilters/* \
>> + ${bindir}/unittest-nnstreamer/* \
>> +"
>> +
>> +FILES:${PN}-dev = "\
>> + ${includedir}/nnstreamer/* \
>> + ${libdir}/*.a \
>
> FWIW, these get automatically packaged into ${PN}-staticdev
>
Let me remove this and see where those go.
Andrew
>
>> + ${libdir}/pkgconfig/*.pc \
>> +"
>> --
>> 2.39.2
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [meta-arago][scarthgap][PATCH] meta-arago-extras: Add recipe for NNStreamer
2025-02-22 2:53 ` Andrew Davis
@ 2025-02-25 22:11 ` Ryan Eatmon
2025-02-25 23:19 ` Andrew Davis
0 siblings, 1 reply; 5+ messages in thread
From: Ryan Eatmon @ 2025-02-25 22:11 UTC (permalink / raw)
To: Andrew Davis, Denys Dmytriyenko
Cc: Denys Dmytriyenko, Chirag Shilwant, meta-arago
On 2/21/2025 8:53 PM, Andrew Davis wrote:
> On 2/21/25 8:25 PM, Denys Dmytriyenko wrote:
>> On Fri, Feb 21, 2025 at 07:53:58PM -0600, Andrew Davis via
>> lists.yoctoproject.org wrote:
>>> NNStreamer is an efficient and flexible stream pipeline framework for
>>> complex neural network applications.
>>>
>>> NNStreamer provides a set of GStreamer plugins so developers may apply
>>> neural networks, attach related frameworks (including ROS, IIO,
>>> FlatBuffers, and Protocol Buffers), and manipulate tensor data streams
>>> in GStreamer pipelines easily and execute such pipelines efficiently.
>>>
>>> It was initially developed by Samsung and then transferred to LF AI
>>> Foundation as an incubation project.
>>
>> FWIW, nnstreamer project on github has its own meta-neural-network
>> layer with
>> a corresponding nnstreamer recipe:
>> https://github.com/nnstreamer/meta-neural-network
>> https://github.com/nnstreamer/meta-neural-network/blob/master/recipes-nnstreamer/nnstreamer/nnstreamer_2.4.2.bb
>>
>
> I did find that earlier when looking for existing recipes for this
> framework, but that recipe needs some work. That layer also pulls
> in a bunch of other stuff we don't need/want.
>
> I did use that as a kicking-off point. I'll try to push back my
> fixes at some point. Maybe we can work to move that into a more
> common layer.
>
>>
>>> Learn more at https://nnstreamer.ai/
>>>
>>> Signed-off-by: Andrew Davis <afd@ti.com>
>>> ---
>>> .../nnstreamer/nnstreamer_2.4.0.bb | 68 +++++++++++++++++++
>>> 1 file changed, 68 insertions(+)
>>> create mode 100644
>>> meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>>
>>> diff --git
>>> a/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>> b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>> new file mode 100644
>>> index 00000000..55de11e8
>>> --- /dev/null
>>> +++
>>> b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>> @@ -0,0 +1,68 @@
>>> +SUMMARY = "NNStreamer, Stream Pipeline Paradigm for Nerual Network
>>> Applications"
>>> +DESCRIPTION = "NNStreamer is a set of Gstreamer plugins that allow
>>> Gstreamer developers to adopt neural network models easily and
>>> efficiently."
>>> +LICENSE = "LGPL-2.1-only"
>>> +LIC_FILES_CHKSUM =
>>> "file://LICENSE;md5=c25e5c1949624d71896127788f1ba590"
>>> +
>>> +SRC_URI =
>>> "git://github.com/nnstreamer/nnstreamer.git;branch=main;protocol=https"
>>> +PV = "2.4.0+git"
>>> +SRCREV = "7c57c288250578cad598f065b6fda6c0ff720cf9"
>>> +
>>> +S = "${WORKDIR}/git"
>>> +
>>> +inherit meson pkgconfig
>>> +
>>> +DEPENDS = " \
>>> + orc-native \
>>> + glib-2.0 \
>>> + gstreamer1.0 \
>>> + gstreamer1.0-plugins-base \
>>> + python3 \
>>> + python3-numpy \
>>> + json-glib \
>>> +"
>>> +
>>> +PACKAGECONFIG ??= " \
>>> + protobuf \
>>> + flatbuffers \
>>> + tests \
>>> + armnn \
>>> + onnxruntime \
>>> + tensorflow-lite \
>>> +"
>>> +
>>> +PACKAGECONFIG[tests] = "-Denable-test=true -Dinstall-test=true,
>>> -Denable-test=false, gtest"
>>> +PACKAGECONFIG[protobuf] = "-Dprotobuf-support=enabled,
>>> -Dprotobuf-support=disabled, protobuf protobuf-native"
>>> +PACKAGECONFIG[flatbuffers] = "-Dflatbuf-support=enabled,
>>> -Dflatbuf-support=disabled, flatbuffers flatbuffers-native"
>>> +PACKAGECONFIG[armnn] = "-Darmnn-support=enabled,
>>> -Darmnn-support=disabled, armnn"
>>> +PACKAGECONFIG[onnxruntime] = "-Donnxruntime-support=enabled,
>>> -Donnxruntime-support=disabled, onnxruntime"
>>> +PACKAGECONFIG[tensorflow-lite] = "-Dtflite2-support=enabled,
>>> -Dtflite2-support=disabled, tensorflow-lite"
>>> +
>>> +do_install:append() {
>>> + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership"
>>> +
>>> + # Install test data
>>> + install -d ${D}/${bindir}/unittest-nnstreamer/tests
>>> + cp $CP_ARGS ${S}/tests/test_models
>>> ${D}/${bindir}/unittest-nnstreamer/tests
>>> + rm -f
>>> ${D}/${bindir}/unittest-nnstreamer/tests/test_models/models/tvm*
>>> +}
>>> +
>>> +FILES:${PN} += "\
>>> + ${libdir}/*.so \
>>> + ${libdir}/gstreamer-1.0/*.so \
>>> + ${libdir}/nnstreamer/* \
>>> + ${sysconfdir}/nnstreamer.ini \
>>> +"
>>> +INSANE_SKIP:${PN} += "dev-so"
>>> +
>>> +PACKAGES =+ "${PN}-tests"
>>> +
>>> +FILES:${PN}-tests += "\
>>> + ${libdir}/nnstreamer/customfilters/* \
>>> + ${bindir}/unittest-nnstreamer/* \
>>> +"
>>> +
>>> +FILES:${PN}-dev = "\
>>> + ${includedir}/nnstreamer/* \
>>> + ${libdir}/*.a \
>>
>> FWIW, these get automatically packaged into ${PN}-staticdev
>>
>
> Let me remove this and see where those go.
Are we waiting for a v2 then?
> Andrew
>
>>
>>> + ${libdir}/pkgconfig/*.pc \
>>> +"
>>> --
>>> 2.39.2
--
Ryan Eatmon reatmon@ti.com
-----------------------------------------
Texas Instruments, Inc. - LCPD - MGTS
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [meta-arago][scarthgap][PATCH] meta-arago-extras: Add recipe for NNStreamer
2025-02-25 22:11 ` Ryan Eatmon
@ 2025-02-25 23:19 ` Andrew Davis
0 siblings, 0 replies; 5+ messages in thread
From: Andrew Davis @ 2025-02-25 23:19 UTC (permalink / raw)
To: Ryan Eatmon, Denys Dmytriyenko
Cc: Denys Dmytriyenko, Chirag Shilwant, meta-arago
On 2/25/25 4:11 PM, Ryan Eatmon wrote:
>
>
> On 2/21/2025 8:53 PM, Andrew Davis wrote:
>> On 2/21/25 8:25 PM, Denys Dmytriyenko wrote:
>>> On Fri, Feb 21, 2025 at 07:53:58PM -0600, Andrew Davis via lists.yoctoproject.org wrote:
>>>> NNStreamer is an efficient and flexible stream pipeline framework for
>>>> complex neural network applications.
>>>>
>>>> NNStreamer provides a set of GStreamer plugins so developers may apply
>>>> neural networks, attach related frameworks (including ROS, IIO,
>>>> FlatBuffers, and Protocol Buffers), and manipulate tensor data streams
>>>> in GStreamer pipelines easily and execute such pipelines efficiently.
>>>>
>>>> It was initially developed by Samsung and then transferred to LF AI
>>>> Foundation as an incubation project.
>>>
>>> FWIW, nnstreamer project on github has its own meta-neural-network layer with
>>> a corresponding nnstreamer recipe:
>>> https://github.com/nnstreamer/meta-neural-network
>>> https://github.com/nnstreamer/meta-neural-network/blob/master/recipes-nnstreamer/nnstreamer/nnstreamer_2.4.2.bb
>>>
>>
>> I did find that earlier when looking for existing recipes for this
>> framework, but that recipe needs some work. That layer also pulls
>> in a bunch of other stuff we don't need/want.
>>
>> I did use that as a kicking-off point. I'll try to push back my
>> fixes at some point. Maybe we can work to move that into a more
>> common layer.
>>
>>>
>>>> Learn more at https://nnstreamer.ai/
>>>>
>>>> Signed-off-by: Andrew Davis <afd@ti.com>
>>>> ---
>>>> .../nnstreamer/nnstreamer_2.4.0.bb | 68 +++++++++++++++++++
>>>> 1 file changed, 68 insertions(+)
>>>> create mode 100644 meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>>>
>>>> diff --git a/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>>> new file mode 100644
>>>> index 00000000..55de11e8
>>>> --- /dev/null
>>>> +++ b/meta-arago-extras/recipes-multimedia/nnstreamer/nnstreamer_2.4.0.bb
>>>> @@ -0,0 +1,68 @@
>>>> +SUMMARY = "NNStreamer, Stream Pipeline Paradigm for Nerual Network Applications"
>>>> +DESCRIPTION = "NNStreamer is a set of Gstreamer plugins that allow Gstreamer developers to adopt neural network models easily and efficiently."
>>>> +LICENSE = "LGPL-2.1-only"
>>>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=c25e5c1949624d71896127788f1ba590"
>>>> +
>>>> +SRC_URI = "git://github.com/nnstreamer/nnstreamer.git;branch=main;protocol=https"
>>>> +PV = "2.4.0+git"
>>>> +SRCREV = "7c57c288250578cad598f065b6fda6c0ff720cf9"
>>>> +
>>>> +S = "${WORKDIR}/git"
>>>> +
>>>> +inherit meson pkgconfig
>>>> +
>>>> +DEPENDS = " \
>>>> + orc-native \
>>>> + glib-2.0 \
>>>> + gstreamer1.0 \
>>>> + gstreamer1.0-plugins-base \
>>>> + python3 \
>>>> + python3-numpy \
>>>> + json-glib \
>>>> +"
>>>> +
>>>> +PACKAGECONFIG ??= " \
>>>> + protobuf \
>>>> + flatbuffers \
>>>> + tests \
>>>> + armnn \
>>>> + onnxruntime \
>>>> + tensorflow-lite \
>>>> +"
>>>> +
>>>> +PACKAGECONFIG[tests] = "-Denable-test=true -Dinstall-test=true, -Denable-test=false, gtest"
>>>> +PACKAGECONFIG[protobuf] = "-Dprotobuf-support=enabled, -Dprotobuf-support=disabled, protobuf protobuf-native"
>>>> +PACKAGECONFIG[flatbuffers] = "-Dflatbuf-support=enabled, -Dflatbuf-support=disabled, flatbuffers flatbuffers-native"
>>>> +PACKAGECONFIG[armnn] = "-Darmnn-support=enabled, -Darmnn-support=disabled, armnn"
>>>> +PACKAGECONFIG[onnxruntime] = "-Donnxruntime-support=enabled, -Donnxruntime-support=disabled, onnxruntime"
>>>> +PACKAGECONFIG[tensorflow-lite] = "-Dtflite2-support=enabled, -Dtflite2-support=disabled, tensorflow-lite"
>>>> +
>>>> +do_install:append() {
>>>> + CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership"
>>>> +
>>>> + # Install test data
>>>> + install -d ${D}/${bindir}/unittest-nnstreamer/tests
>>>> + cp $CP_ARGS ${S}/tests/test_models ${D}/${bindir}/unittest-nnstreamer/tests
>>>> + rm -f ${D}/${bindir}/unittest-nnstreamer/tests/test_models/models/tvm*
>>>> +}
>>>> +
>>>> +FILES:${PN} += "\
>>>> + ${libdir}/*.so \
>>>> + ${libdir}/gstreamer-1.0/*.so \
>>>> + ${libdir}/nnstreamer/* \
>>>> + ${sysconfdir}/nnstreamer.ini \
>>>> +"
>>>> +INSANE_SKIP:${PN} += "dev-so"
>>>> +
>>>> +PACKAGES =+ "${PN}-tests"
>>>> +
>>>> +FILES:${PN}-tests += "\
>>>> + ${libdir}/nnstreamer/customfilters/* \
>>>> + ${bindir}/unittest-nnstreamer/* \
>>>> +"
>>>> +
>>>> +FILES:${PN}-dev = "\
>>>> + ${includedir}/nnstreamer/* \
>>>> + ${libdir}/*.a \
>>>
>>> FWIW, these get automatically packaged into ${PN}-staticdev
>>>
>>
>> Let me remove this and see where those go.
>
> Are we waiting for a v2 then?
>
Yeah, seems this one line was not needed, removed it and sending v2 now.
Andrew
>
>> Andrew
>>
>>>
>>>> + ${libdir}/pkgconfig/*.pc \
>>>> +"
>>>> --
>>>> 2.39.2
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-02-25 23:19 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-22 1:53 [meta-arago][scarthgap][PATCH] meta-arago-extras: Add recipe for NNStreamer Andrew Davis
2025-02-22 2:25 ` Denys Dmytriyenko
2025-02-22 2:53 ` Andrew Davis
2025-02-25 22:11 ` Ryan Eatmon
2025-02-25 23:19 ` Andrew Davis
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.