SSJ is an extensible android framework for social signal processing in an out of lab envirnoment. It packages common signal processing tools in a flexible, mobile friendly Java library which can be easily integrated into Android Apps.
- Realtime signal processing using independent components as processing steps in a pipeline
- Synchronized data streams
- Support for most standard android sensors e.g. Camera, Microphone, Acceleration, GPS
- Support for external sensors via bluetooth e.g. Microsoft Band 2, Myo, Angel Sensor, Empatica
- Advanced signal processing functionality, including machine learning approaches (Neural Networks, SVM, NaiveBayes)
- On device model training capabilities (batch and online learning)
- I/O functionality: local storage, sockets, bluetooth
- Energy efficient processing thanks to advanced sleep state management and support for discrete data propagation
- Live data visualization (using GraphView library)
- SSJ Creator: Android App for building, editing and running SSJ pipelines without writing a single line of code
To use libssj in your own application, download the latest .aar file from the releases section, place it under app/libs/
and include the following line in your app's gradle file:
implementation files('libs/libssj-0.7.8.aar')
The latest version of the SSJ Creator app can be downloaded from the releases section as well. Alternatively, an older version is available in the Google Play Store.
- White-paper: frontiersin.org
- Api (Javadoc): http://hcmlab.github.io/ssj/api
- Example pipeline: Github wiki
The Social Signal Processing for Java/Android (SSJ) framework is being developed at the Lab for Human Centered Multimedia of the University of Augsburg. The authors of the framework are: Ionut Damian, Michael Dietz, Frank Gaibler, Daniel Langerenken, Simon Flutura, Vitalijs Krumins, Antonio Grieco.
SSJ has been inspired by the SSI (http://openssi.net) framework. SSJ is not a one-to-one port of SSI to Java, it is an approximation. Nevertheless, it borrows a lot of programming patterns from SSI and preserves the same vision for signal processing which makes SSI great. It than packages everything in a flexible, mobile friendly Java library which can be easily integrated into Android Apps.
If you use SSJ for a research project, please reference the following papers:
- Ionut Damian, Michael Dietz, Elisabeth André, The SSJ Framework: Augmenting Social Interactions Using Mobile Signal Processing and Live Feedback, Frontiers in ICT, 2018
paper | BibTex - Ionut Damian, Michael Dietz, Frank Gaibler, Elisabeth André, Social Signal Processing for Dummies, In Proceedings of International Conference on Multimodal Interaction (ICMI), ACM, 2016
paper | BibTex | dl.acm.org
This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA