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.