GStreamer dvbsrc → autovideosink / hlssink pipeline

I’ve just got a Raspberry PI TV-HAT. I thought it’d be fun to play with it using GStreamer.

I’m failing at creating a working pipeline though, and I’m wondering if somebody could please help me out?

TBH I don’t understand all the broadcast parameters right now (but I have managed to get a HTTP stream working using VLC) . I think what would be helpful would be a gst-launch-1.0 pipeline which shows me a TV channel using autovideosink and autoaudiosink. I’d eventually like to stream from this using hlssink, so an example of that would be helpful too.

The interwebs pointed me to w_scan which can generate a file that it says is for GStreamer. Is it possible to feed that to dvbsrc somehow? Or do I have to read it and use the values in there as params on dvbsrc?

1 Like

My way forward on this would be to use dvbv5-scan to create the ~/.config/gstreamer-1.0/dvb-channels.conf file:

dvbv5-scan -o ~/.config/gstreamer-1.0/dvb-channels.conf /usr/share/dvb/dvb-t/uk-CrystalPalace

obviously this command only works for the Crystal Palace transmitter in the UK, which is DVB-T and DVB-T2. You would need to find the transmitter data file for your transmitter. If there is no such file or dvbv5-scan is not available then you would have to use w_scan. But do ensure you use V5 format files not V3 format files.

With the channels file in place, then:

gst-launch-1.0 playbin uri="dvb://BBC%20NEWS"

should open a window and play the chosen channel. Obviously you need to choose a channel that is listed in the dvb-channels.conf file!

I have not tried this using a TV-HAT, this is working with USB devices on a Debian Sid laptop. I bought a TV-HAT 18+ months ago to try and ensure ME TV ( works on it, but stuff got in the way and I have not even opened the box. This exchange may act as a prompt to get me to do something!

1 Like