Second part of engineer work (desktop server): https://github.com/Swistusmen/gCosm
Java, Kotlin
C
GStreamer
ffmpeg
-Let member record a video- frame rate is set to 30. Data are save in External video storege
-Switcher on, makes app save position coordinates. Data are collected from sensors at the same time as frame. Data are saved as .txt file, with the same name and location as recordered video
-Let member to select video- also not recorded by this app
-Let member to change container files .mp4 <-> .mkv
-Let member to change video formats .h264 <-> .av1
-After operation ends, application informs member whether it ended successfully or not, and time which it took
-New video has the same name as the origin, what may cause troubles
-Let member to select video to stream
-Let member to select stream protocol and video format. For HLS app demand external HTTP server (you can easily download it from google play store
HLS demand external http server
To build an app yourself, I recommend you to follow official Gstreamer documentation: https://gstreamer.freedesktop.org/documentation/installing/for-android-development.html?gi-language=c
Application has been tested on Xiaomi Mi A2 with android 10. Transcoding video (3 seconds, 30 fps) from MP4(H264, AAC) into MKV(AV1, AAC) took 6 minutes. Purpose of this app is to test oportunities to develop applications with a support of AV1. What is interesting however, is that plyaing such a video was not a problem. Conclusion is,you an easily watch streams in AV1, but live streamming is rather hard