In addition, Javox has craeted the development platform jvx-rt which allows to efficiently integrate the Javox signal processing components into full featured signal processing applications that operate on all typical platforms (Windows, Linux, Mac PCs, iOS, Android, embedded Linux and bare metal) and processor types (DSP, MCU, CPU, GPU, FPGA) with either web remote (via HTTP) or native user interface control.
Typically, in projects with customers Javox
- contributes and licenses the outstanding algorithms and
- provides services to build the required application around the algorithms.
With this experience Javox finds and solves problems related to environmental constraints such as memory and computation limitations and proposes innovative and highly efficient workarounds to overcome bottlenecks and other limitations.
For many years, we have provided “classical” solutions for highly efficient digital signal processing due to our outstanding knowledge of theoretical as well as practical aspects such as computational requirements and memory consumption. Recently, we have observed that in some areas, good solutions for various problems can be achieved as well by means of Machine Learning (ML) frameworks without that a profound knowledge of signal processing theory is required.
However, in our products with customers, we have learned that ML based approaches may work reasonably well but typically involve a huge computational complexity and therefore most often must be operated remotely on cloud servers. Often, customers are very disappointed since this is not a realistic option for the underlying use-case.
These customers seek for expertise to adapt their ML solutions to be applicable on small footprint local (embedded) devices. For these customers, Javox provides “classical” signal processing solutions to interact with the ML processing and highly efficient workarounds to optimize computational and hardware costs. And with jvx-rt, Javox also provides a software platform that allows to realize signal processing applications in local heterogenous processing environments, e.g., involving massive parallel processing entities such as GPUs or FPGAs.