DVBv5 Tools: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
No edit summary
No edit summary
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
DVBv5 Tools (not to be confused with the similarly named, but much older, [[DVB tools]] legacy project) is a small set of command line utilities that was developed to be compliant with the newer features provided by [[Development:_Linux_Media_Infrastructure_API|version 5 of the DVB API]].[http://article.gmane.org/gmane.linux.drivers.video-input-infrastructure/43100] The tools should also be backward compatible with the older v3 DVB API.
DVBv5 Tools (not to be confused with the similarly named, but much older, [[DVB tools]] legacy project) is a small set of command line utilities that was developed to be compliant with the newer features provided by [[Development:_Linux_Media_Infrastructure_API|version 5 of the DVB API]].[http://article.gmane.org/gmane.linux.drivers.video-input-infrastructure/43100] The tools should also be backward compatible with the older v3 DVB API.


This DVB toolset suite resides in the [http://git.linuxtv.org/v4l-utils.git v4l-utils git repository], and uses [[DVBv5_library_(libdvbv5) | libdvbv5]].
This DVB toolset suite resides in the [http://git.linuxtv.org/v4l-utils.git v4l-utils git repository], and uses [[DVBv5_library_(libdvbv5) | libdvbv5]], also stored at the v4l-utils git tree.


It is composed of 4 tools::
It is composed of 4 tools:
* [[dvbv5-scan]] - Scans the channel transponders and gets the services available there;
* [[dvbv5-scan]] - Scans the channel transponders and gets the services available there;
* [[dvbv5-zap]] - Locks into a channel (zap), allowing other applications to get the stream at the dvr devices or to monitor the stream;
* [[dvbv5-zap]] - Locks into a channel (zap), allowing other applications to get the stream at the dvr devices or to monitor the stream;
* [[dvb-fe-tool]] - Lists frontend properties and allow to manually set the DVB frontend
* [[dvb-fe-tool]] - Lists frontend properties, allow to manually set the DVB frontend delivery system and monitors the frontend;
* [[dvb-format-convert]] - Converts from/to other formats used by DVBv3 apps into the dvbv5 format.
* [[dvb-format-convert]] - Converts from/to other formats used by DVBv3 apps into the dvbv5 format.


The DVBv5 file format is formed by a channel name, followed by a series of key/value properties.
The DVBv5 default file format is formed by a channel name, followed by a series of key/value properties. Those tools also support the legacy formats used by dvb-apps.


For example, this is a channel file with one DVB-C channel on it:
For example, this is a channel file with one DVB-C channel on it:
Line 21: Line 21:
INVERSION = AUTO
INVERSION = AUTO


And this is (part of) a service (zap) file, produced from the above channel definition using [[dvbv5-scan]]:
== dvbv5-zap ==


[SBT]
The dvbv5-zap tool can be used on several different modes, depending on the parameters used.
SERVICE_ID = 4

VIDEO_PID = 42
The typical use is to tune into a channel and put it into record mode:
AUDIO_PID = 257

PID_f1 = 768
$ dvbv5-zap -c dvb_channel.conf "trilhas sonoras" -r
FREQUENCY = 573000000
using demux '/dev/dvb/adapter0/demux0'
MODULATION = QAM/256
reading channels from file 'dvb_channel.conf'
INVERSION = AUTO
service has pid type 05: 204
SYMBOL_RATE = 5217000
tuning to 573000000 Hz
INNER_FEC = NONE
audio pid 104
DELIVERY_SYSTEM = DVBC/ANNEX_A
dvb_set_pesfilter 104
Lock (0x1f) Quality= Good Signal= 100.00% C/N= -13.80dB UCB= 70 postBER= 3.14x10^-3 PER= 0
DVR interface '/dev/dvb/adapter0/dvr0' can now be opened

The channel can be watched by playing the contents of the DVR interface, with some player that recognizes the MPEG-TS format.

For example (in this specific case, it is an audio only channel, but the same could be used for audio/video):

$ mplayer -cache 800 /dev/dvb/adapter0/dvr0
MPlayer SVN-r37077-4.8.2 (C) 2000-2014 MPlayer Team
TS file format detected.
NO VIDEO! AUDIO MPA(pid=104) NO SUBS (yet)! PROGRAM N. 0
==================================================================
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
AUDIO: 48000 Hz, 2 ch, s16le, 192.0 kbit/12.50% (ratio: 24000->192000)
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...

The dvbv5-zap tool can also be used to monitor a DVB channel:

$ dvbv5-zap -c dvb_channel.conf 573000000 -m
using demux '/dev/dvb/adapter0/demux0'
reading channels from file 'dvb_channel.conf'
service has pid type 05: 204
tuning to 573000000 Hz
Lock (0x1f) Quality= Good Signal= 100.00% C/N= -13.90dB UCB= 384 postBER= 96.8x10^-6 PER= 0
dvb_set_pesfilter to 0x2000

{|
!PID
!FREQ
!SPEED
!TOTAL
|-
| 0000 || 9.88 p/s || 14.5 Kbps || 1 KB
|-
| 0001 || 1.98 p/s || 2.9 Kbps || 376 B
|-
| 0010 || 18.77 p/s || 27.6 Kbps || 3 KB
|-
| 0011 || 48.42 p/s || 71.1 Kbps || 8 KB
|-
| 0012 || 1455.53 p/s || 2137.8 Kbps || 270 KB
|-
| ...
|-
| 1fff || 1033.60 p/s || 1518.1 Kbps || 192 KB
|-
| TOT || 25296.44 p/s || 37154.2 Kbps || 4700 KB
|}
[TNT]
Lock (0x1f) Quality= Good Signal= 100.00% C/N= -13.90dB UCB= 384 postBER= 96.8x10^-6 PER= 0
SERVICE_ID = 48
VIDEO_PID = 336
AUDIO_PID = 337 338 849
PID_86 = 816
FREQUENCY = 573000000
MODULATION = QAM/256
INVERSION = AUTO
SYMBOL_RATE = 5217000
INNER_FEC = NONE
DELIVERY_SYSTEM = DVBC/ANNEX_A


== distro packages ==


Different distros pack the dvbv5-tools on different packages.
== dvb-fe-tool ==


On Fedora, they're part of the '''v4l-utils''' package. The Fedora 20 version 1.4 packages are available at: [[https://mchehab.fedorapeople.org/libdvbv5/ https://mchehab.fedorapeople.org/libdvbv5/]].
== dvb-format-covert ==


On Debian/Ubuntu, they're packaged as '''dvb-tools'''. The Debian SID packages are available at: [[https://packages.debian.org/source/sid/v4l-utils https://packages.debian.org/source/sid/v4l-utils]].


[[Category:Software]][[Category:Apps & Utilities]]
[[Category:Software]][[Category:Apps & Utilities]]

Revision as of 16:06, 14 September 2014

DVBv5 Tools (not to be confused with the similarly named, but much older, DVB tools legacy project) is a small set of command line utilities that was developed to be compliant with the newer features provided by version 5 of the DVB API.[1] The tools should also be backward compatible with the older v3 DVB API.

This DVB toolset suite resides in the v4l-utils git repository, and uses libdvbv5, also stored at the v4l-utils git tree.

It is composed of 4 tools:

  • dvbv5-scan - Scans the channel transponders and gets the services available there;
  • dvbv5-zap - Locks into a channel (zap), allowing other applications to get the stream at the dvr devices or to monitor the stream;
  • dvb-fe-tool - Lists frontend properties, allow to manually set the DVB frontend delivery system and monitors the frontend;
  • dvb-format-convert - Converts from/to other formats used by DVBv3 apps into the dvbv5 format.

The DVBv5 default file format is formed by a channel name, followed by a series of key/value properties. Those tools also support the legacy formats used by dvb-apps.

For example, this is a channel file with one DVB-C channel on it:

[CHANNEL]
	DELIVERY_SYSTEM = DVBC/ANNEX_A
	FREQUENCY = 573000000
	SYMBOL_RATE = 5217000
	INNER_FEC = NONE
	MODULATION = QAM/256
	INVERSION = AUTO

And this is (part of) a service (zap) file, produced from the above channel definition using dvbv5-scan:

[SBT]
	SERVICE_ID = 4
	VIDEO_PID = 42
	AUDIO_PID = 257
	PID_f1 = 768
	FREQUENCY = 573000000
	MODULATION = QAM/256
	INVERSION = AUTO
	SYMBOL_RATE = 5217000
	INNER_FEC = NONE
	DELIVERY_SYSTEM = DVBC/ANNEX_A

[TNT]
	SERVICE_ID = 48
	VIDEO_PID = 336
	AUDIO_PID = 337 338 849
	PID_86 = 816
	FREQUENCY = 573000000
	MODULATION = QAM/256
	INVERSION = AUTO
	SYMBOL_RATE = 5217000
	INNER_FEC = NONE
	DELIVERY_SYSTEM = DVBC/ANNEX_A

distro packages

Different distros pack the dvbv5-tools on different packages.

On Fedora, they're part of the v4l-utils package. The Fedora 20 version 1.4 packages are available at: [https://mchehab.fedorapeople.org/libdvbv5/].

On Debian/Ubuntu, they're packaged as dvb-tools. The Debian SID packages are available at: [https://packages.debian.org/source/sid/v4l-utils].