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.
Cool! Very handy test app! Thanks!
Thanks for this wonderful app! I’m trying to use the following pipeline but it says syntax error:
tcpclientsrc host=192.168.1.153 port=5000 ! gdpdepay ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink sync=false
Do I have to install h264 codec?
You at least have to include gst-libav for avdec_h264.