GStreamer remote-controlled testing application for Android, iOS and more

Today I’ve released a little GStreamer testing application, mostly for iOS and Android. You can find it here: gst-launch-remote.

It starts a TCP server on port 9123 and allows to take commands from there, while the main application is a simple video widget and a play/pause button.

You can use it as following (note that every OK or NOK comes from the application to tell you about the success or failure of a command):

$ nc fancydevice 9123
videotestsrc ! autovideosink
OK
+PLAY
OK
+PAUSE
OK
+SEEK 10000
OK
audiotestsrc ! autoaudiosink
OK
+PLAY

Every GStreamer pipeline string is accepted here, but currently only a single video output is supported. And additionally you can also enable sending GStreamer debug output via UDP to some IP/port with:

+DEBUG bigworkstation:12345
OK

This will for now enable GST_LEVEL_DEBUG as debug level for everything. And you can listen for all the output with

$ nc -l -u 12345

Future ideas

Maybe this is something that could be integrated with gst-validate to be able to run the test scenarios on mobile devices, and get decent test coverage for them too.