These days I spend a lot of time dealing with large dynamic GStreamer pipelines. More often than not, I find myself stuck in problems that take some careful analysis of the endless stream of debug logs that GStreamer produces. In these situations, taking a look at how the pipelines of the application look like really helps me with the debugging process. To get this information, GStreamer has the capability of outputing graph files that describe the topology of your pipelines. The information that you get is really well presented, but the process of getting it can be a bit cumbersome when you have to do it over and over. The output files are .dot files that require programs like GraphViz to get a displayable version of the graph. Many GStreamer developers end up writing scripts or creating their own tools to ease this process. My version of this kind of tool is gst-dots, an extremely simple NodeJS server that watches for GStreamer .dot files in the path defined by the GST_DEBUG_DUMP_DOT_DIR environment variable, convert them into SVG images and displays them in a browser with live reload.

This is how it looks in action.