/
NNStreamer build configurations
NNStreamer build configurations
- Enable/Disable H/W & Neural Network Framework Adaptation (Tensor-Filter Subplugins)
- option('enable-tensorflow-lite', type: 'boolean', value: false)
- Build tensorflow-lite subplugin
- Tensorflow-lite is required for build.
- We supply "tensorflow-lite devel" packages along with headers and a proper pkgconfig file for Tizen, Ubuntu (PPA), Yocto/OpenEmbedded, and Android for Tensorflow 1.09, 1.13, 1.15.
- option('enable-tensorflow', type: 'boolean', value: false)
- Build tensorflow subplugin
- Tensorflow is required for build
- We supply "tensorflow devel" package along with headers and a proper pkgconfig file for Tizen and Ubuntu (PPA).
- option('enable-caffe2', type: 'boolean', value: false)
- Build caffe2 subplugin
- Requires caffe2 (devel) and ptorobuf (devel)
- We supply proper "caffe2 devel" package for Tizen and Ubuntu(PPA).
- option('enable-pytorch', type: 'boolean', value: false)
- Build pytorch subplugin
- Requires pytorch (devel).
- We supply proper "pytorch devel" package for Tizen and Ubuntu(PPA).
- option('enable-movidius-ncsdk2', type: 'boolean', value: false)
- Build mobidius (ncsdk2) subplugin
- Requires mvnc library.
- option('enable-python', type: 'boolean', value: false)
- Build python-custom-filter support
- This enables to insert a python object as a filter to GStreamer/NNStreamer pipelines.
- option('enable-nnfw-runtime', type: 'boolean', value: false) # true to enable nnfw tensor filter element
- Build nnfw-runtime (neurun) subplugin.
- nnfw-runtime (neurun) is a neural network inference accelerator of Samsung (Apache2.0, opened via Tizen.org)
- option('enable-cppfilter', type: 'boolean', value: true) # Allows C++ custom filters
- Allows to insert C++ class as a filter in a GStreamer/NNStreamer pipeline.
- option('enable-edgetpu', type: 'boolean', value: false)
- Build EDGE-TPU support.
- option('enable-armnn', type: 'boolean', value: false)
- Build ARMNN support
- option('enable-openvino', type: 'boolean', value: false)
- Build OpenVINO support
- option('enable-tensorflow-lite', type: 'boolean', value: false)
- Change behaviors of H/W & Neural Network Framework Adaptation
- option('enable-pytorch-use-gpu', type: 'boolean', value: false) # default value, can be specified at run time
- Enable GPU usage for PyTorch in the .ini file.
- option('enable-tflite-nnapi-delegation', type: 'boolean', value: false) # true to enable tensorflow-lite to delegate nnapi interpretation to nnfw backend in tizen
- Enable NNAPI delegation for tflite by default.
- This can be overridden by each instance of pipelines and their elements.
- option('enable-pytorch-use-gpu', type: 'boolean', value: false) # default value, can be specified at run time
- Test & Examples
- option('enable-test', type: 'boolean', value: true)
- Build unit tests
- option('install-test', type: 'boolean', value: false)
- Install the unit test binaries to ${prefix}/${libdir}/nnstreamer/unittest/ (default: /usr/lib/nnstreamer/unittest)
- Install custom filters used for unit tests to ${prefix}/${libdir}/nnstreamer/customfilters/ (default: /usr/lib/nnstreamer/customfilters)
- option('install-example', type: 'boolean', value: false)
- Install example custom filters after the build even if test is not enabled or installed.
- option('enable-test', type: 'boolean', value: true)
- NNStreamer Core
- option('enable-orc', type: 'boolean', value: true) # default true, use orc when found orc library
- Use ORC for tensor-transform to apply SIMD.
- option('disable-video-support', type: 'boolean', value: false)
- Disable video support in tensor-converter
- You may use this to remove the dependencies on GST-Video. (for video-only lightweight systems)
- option('disable-audio-support', type: 'boolean', value: false)
- Disable audio support in tensor-converter
- You may use this to remove the dependencies on GST-Audio. (for audio-only lightweight systems)
- option('enable-filter-cpp-class', type: 'boolean', value: false) # Allows to accept C++ classes as filter subplugin implementation.
- Allow to implement tensor-filter subplugin (HW / NNFW adaptor) as a C++ class. (WIP: #2194)
- option('enable-orc', type: 'boolean', value: true) # default true, use orc when found orc library
- Configure nnstreamer.ini
- option('enable-env-var', type: 'boolean', value: true)
- Set enable_envvar=false in nnstreamer.ini
- option('enable-symbolic-link', type: 'boolean', value: true)
- Set enable_symlink=false in nnstreamer.ini
- option('enable-env-var', type: 'boolean', value: true)
- API Support
- option('enable-capi', type: 'boolean', value: false)
- Build NNStreamer's C API set.
- This is Tizen Machine Learning C-API, but can be used for other OS as well (e.g., Ubuntu)
- option('framework-priority-tflite', type: 'string', value: 'tensorflow-lite,nnfw,armnn,edgetpu', description: 'A comma separated prioritized list of neural network frameworks to open a .tflite file')
- When a framework name is not specified for .tflite files via APIs, this option tells NNStreamer which frameworks to search.
- There can be multiple candidates with higher priorities from the left.
- option('enable-capi', type: 'boolean', value: false)
- Access Control / OS Specifics
- option('enable-tizen', type: 'boolean', value: false)
- Build NNStreamer for Tizen devices
- Be more strict on access control (C-API); i.e., apply Tizen Privilege Control APIs and restrict a few unwanted behaviors.
- Search for available camera/mic node with Tizen Multimedia APIs automatically w/ C-API usages.
- Use Tizen's "DLOG" for logging instead of GStreamer/GLib logging mechanism.
- Build NNStreamer for Tizen devices
- option('enable-tizen-sensor', type: 'boolean', value: false)
- Add a NNStreamer plugin, "tensor-src-tizensensor".
- This allows accepting Tizen Sensor Framework's output as inputs of GStreamer/NNStreamer pipeline with "tensor-src-tizensensor" elements.
- option('enable-element-restriction', type: 'boolean', value: false) # true to restrict gst-elements in api
- Provide a whitelist of GStreamer elements. Users won't be able to use other GStreamer elements with C-APIs
- option('restricted-elements', type: 'string', value: '')
- The whitelist. (Yes, the name is weird. We need fo update it)
- option('enable-tizen', type: 'boolean', value: false)
Related Code: /meson_options.txt
Updated at 2020-04-07, based on commit 5ed942e6, (NNStreamer 1.5.1)
Related content
NNStreamer run-time configurations
NNStreamer run-time configurations
More like this
Contents preparation for the website
Contents preparation for the website
More like this
Development Roadmap
Development Roadmap
More like this
NNStreamer Home
NNStreamer Home
More like this
Products and Services using NNStreamer
Products and Services using NNStreamer
More like this
Adlik Bear Release (V0.2.0)
Adlik Bear Release (V0.2.0)
More like this