I have used gstreamer for the Dutch Railways, to stream the announcements to passengers in certain types of rolling stock.
The announcements are generated as text, go through a text-to-speech engine and are then streamed to the rolling stock.
As you'd expect, every manufacturer uses a different method to broadcast the announcement.