Prelude
- Note
- We can only support these development setups for all platforms in combination with using CMake.
- Warning
- Mixing adtfplugins build with different build types (e.g. optimzed like RelWithDebInfo and non-optimized Debug) will work propably as far as thir dependencies and (3rd party) ABI will fit. This can lead to trouble for example using a Debug adtfplugin consuming Qt (Debug) but try to load it within a Release "ADTF Launcher" consuming Qt (RelWithDebInfo). This won't work and could not be supported !
- Warning
- From ADTF 3.14.0 onwards the Windows platform has been changed from VS 2017 VC141 to VS 2019 VC142 and the Linux platforms has been changed from gcc5 to gcc7 due to issues regarding C++ language support and trouble with Qt 5.12.x. Anyway, loading older adtfplugins build with the former toolchain may work but can neither be guaranteed nor supported for any conditions and combinations ! Please recompile your components using the new VS 2019 VC142 / gcc7 toolchain against at least ADTF 3.14.0 SDK if you facing runtime issues !
Hardware requirements
A hardware requirement specification always has to differ between following two basic questions:
- What is the required hardware to reach a specific use case ?
- What are the possible use cases reached by a specific hardware ?
Thus there is no guaranteed hardware requirement specification possible for using ADTF which is helpful and valid to cover the customers specific needs.
Within ADTF as framework and toolset this depends on the combination of tools, adtfplugins and 3rd party content configured together, especially:
- Combination of used tools and adtfplugins (headless, UI)
- Live, playback (real time or faster) or recording mode (quantity of streams, several recorders, etc)
- Use ADTF Launcher standalone, with 3rd party tools or several instances / distributed setup
- Bare metal, desktop, docker, cloud or virtual images
- Combination, sum and nesting of components within adtfgraph
- Count and nesting of data structures within loaded meta (xml)files
- Data size, amount and rate of processed samples
- Number of requested substreams to be processed and decoded
- Singe-threaded or multithreaded playback
- CPU/Core/thread affinity depended libraries
- Latency, available queues and buffers for devices
- I/O traffic for reading and writing
- GPU for UI algorithms and operations
The ADTF Configuration Editor will require at least 200MB of RAM for basic usage which scales with additional loaded content or several sessions. The ADTF Launcher will consume at least 30MB of RAM and the defined and launched session will also scale with the hardware itself - and vice versa.
The only possible and qualified announcement for pure basic usage and what ADTF requires will be:
- Hardware setup which supported the required software dependencies to be installed
- At least a single-core processor or SoC with 1GHz
- At least 2GB RAM for basic usage of the tools and basic unnested graphs with standard components from base delivery
- At least following free disk space for the ADTF delivery package:
- Monitor using Full-HD (recommended resolution)
- Note
- We also recommend using at least a dual-core CPU, at least 16GB of RAM, a SSD for fast file access and use only Full HD resolution to prevent high-dpi issues regarding Qt/QML. Regarding GPU there is no announcement possible except using a hardware and driver which is compatible to the required use case and 3rd party dependencies (e.g. DirectX, OpenGL, OSG and friends).
Windows Desktop (x86_64)
- We recommend our used and tested platform Microsoft Windows 10 64 Bit
- On any other Windows 64 Bit platform (e.g. Windows 7 or 11) make sure that it fulfills the following requirements
- Runtime requirements
- Visual C++ 2019 Redistributable
- Visual C++ 2019 / Visual C++ 14.2 (for debug libraries and executables)
- Development requirements
- Visual C++ 2019 (at least CXX Compiler MSVC 19.29) / Visual C++ 14.2 (VC142 Toolchain at least 14.29)
- MSBuild Version 16.x (at least 16.11)
- MSBuild Tools only or full Visual Studio IDE installation which covers this requirements
- Windows Kit 10 (at least 10.0.19041.0)
- CMake >= 3.23.2
Linux Desktop (x86_64)
- We recommend our used and tested platform Ubuntu 18.04 LTS 64 Bit
- On any other distributions (e.g. Fedora, Debian) make sure that it fulfills the following requirements
- Requirements
- gcc >= 7
- libc >= 2.27
- libstdc++ >= 6.0.25
- CMake >= 3.23.2
- build-essential libarchive-dev mesa-common-dev mesa-utils libglib2.0-0 libxcb-xinerama0 xterm
Linux for ARMv8 (AArch64)
- Note
- For ARM there is only a headless delivery available, this means a subset of components and tools without UI and its dependencies ! Keep this in mind when designing your sessions running on this platform !
- We recommend our used and tested platform Ubuntu 16.04 ARMv8 AArch64
- On any other distributions (e.g. Fedora, Debian) make sure that it fulfills the following requirements
- Our reference hardware is nVidia Jetson TX2 Board (compatible to e.g. nVidia Drive PX 2 or Jetson AGX XAVIER)
- Requirements
- gcc >= 7
- libc >= 2.27
- libstdc++ >= 6.0.25
- CMake >= 3.23.2
- build-essential libarchive-dev mesa-common-dev mesa-utils libglib2.0-0