Skip to content

Instantly share code, notes, and snippets.

@allanjos
Last active December 26, 2021 00:39
Show Gist options
  • Save allanjos/ab6c465147d6350a1a02deaf18746408 to your computer and use it in GitHub Desktop.
Save allanjos/ab6c465147d6350a1a02deaf18746408 to your computer and use it in GitHub Desktop.
Playing Digital TV channel in Linux

Playing Digital TV channel in Linux:

ISDB-T Digital TV

It's needed to have a Digital TV receiver plugged in. It's used a MyGica Mac TV S880i device with the steps presented:

dmesg output:

[ 1103.828820] mc: Linux media interface: v0.10
[ 1103.834059] smsusb:smsusb_probe: board id=18, interface number 0
[ 1103.983261] smsusb:siano_media_device_register: media controller created
[ 1104.444273] smsmdtv:smscore_init_ir: IR port has not been detected
[ 1104.444281] smsusb:smsusb_probe: Device initialized with return code 0
[ 1104.459403] dvbdev: DVB: registering new adapter (Siano Rio Digital Receiver)
[ 1104.459430] dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered.
[ 1104.459656] usb 5-1.4: DVB: registering adapter 0 frontend 0 (Siano Mobile Digital MDTV Receiver)...
[ 1104.459660] dvbdev: dvb_create_media_entity: media entity 'Siano Mobile Digital MDTV Receiver' registered.
[ 1104.459715] smsdvb:smsdvb_hotplug: DVB interface registered.
[ 1104.460108] usbcore: registered new interface driver smsusb

Copy channels frequency table from: https://www.linuxtv.org/wiki/index.php/ISDB-T_Frequency_Table

Convert to dvbv5-scan compatible format:

 dvb-format-convert -I CHANNEL -O DVBV5 freq.conf chfreq.conf

Scan channels

 dvbv5-scan -F chfreq.conf

A file named dvb_channel.conf is generated from scan.

Extract channel names from dvb_channel.conf file:

 cat dvb_channel.conf | grep "\(^\\[\\|\\]$\)" | sed 's/\(^\[\|\]$\)//g'

Stream the channel:

dvbv5-zap -ssrc dvb_channel.conf "CHANNEL NAME"

In VLC, go to Media > Open Capture Device... and select the options to play:

Capture mode: TV - digital
Tuner card: /dev/dvb/adapter0, DVB-T

Click Play button.

References

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment