DVB support

Forum member linuxcbon has informed me of a few requirements missing from Puppy

dvb-usb-dib0700-1.20.fw
Linuxcbon reported that this firmware file is needed, so I have placed it in /lib/firmware. It is only 33KB.

DVB device nodes
Linuxcbon reported that they don't get automatically created. This surprises me as the kernel does create nodes on an as-needed basis. Anyway, linuxcbon reported that this script has to be run to generate them: MAKEDEV-DVB.sh
It looks like this script was used back in 2007, in an older version of Puppy, probably a version that did not have dynamic creation of device nodes, and I don't know if it is really required anymore. However, as I am not into DVB I will have to go along with the advice. I have run the script, created the device nodes, and placed them into the Woof skeleton -- meaning they will be present in future builds.
The device nodes are created in folder /dev/dvb.

linuxtv-DVB-apps-1.1.1.pet
Linuxcbon reported that this package is needed, at least the 'scan' utility.
This package is also dated 2007, so I wonder how much "water under the bridge" there has been since then. Perhaps these apps are later versions by now? Most likely. I did the device nodes, but I'm going to put this one on hold. I need to know if there is a later package and also need the source package.


Posted on 29 Jul 2009, 19:19


Comments:

Posted on 30 Jul 2009, 2:50 by linuxcbon
apps sources
apps sources :
http://www.linuxtv.org/downloads/


From http://www.linuxtv.org/wiki/index.php/LinuxTV_dvb-apps

Note: DEVELOPER / MAINTAINER WANTED! Dvb-apps is unmaintained, with the exception of DVB-T scan files which are regularly updated. It is an important set of utilities, and is available in most distros, but releases are not made (at least not since 2006) and there is no roadmap for future development. Hell there aren't even any upstream version numbers and the distros don't agree on what to call the package or the constituent apps. Unsatisfied demand for new features has led to szap-s2 and scan-s2 for example, but it would be best to keep fragmentation under control. If you think you can do better (honestly who can't?) then please jump in and help !! Contact linux-media@vger.kernel.org



Posted on 30 Jul 2009, 8:32 by BarryK
linuxtv-dvb-apps
linuxcbon,
Thanks for the info, I'll check it out today. I got the latest source tarball from packages.ubuntu.com -- need to search "dvb-apps".



Posted on 30 Jul 2009, 8:53 by davids45
linuxtv-dvb-apps - yes please
I will be very happy to see this DVBTV Pet incorporated into future Pups.

linuxcbon's pet and MAKEDEV-DVB.sh are amongst the first additions I do to each new Pup and Puplet. Xine and Gxine happily turn my desktop into a TV set (particularly nice with the Ashes in progress). I haven't found a plug-in for Mplayer but it purports to be a digital TV player as well.

The biggest issue I had was finding and sorting out a channels.conf file for my local reception area (Sydney).




Posted on 30 Jul 2009, 16:31 by tempestuous
DVB with MPlayer
davids45, you need a version of MPlayer which was compiled with DVB support -
"MPlayer-1.0rc2 + mencoder Feb 2008"
http://www.murga-linux.com/puppy/viewtopic.php?t=26511

then MPlayer DVB usage is explained here -
http://www.mplayerhq.hu/DOCS/HTML/en/mpeg_decoders.html#dvb


Posted on 30 Jul 2009, 16:44 by trio
pstreamvid
The biggest issue I had was finding and sorting out a channels.conf file for my local reception area (Sydney).

david,

use pstreamvid http://www.murga-linux.com/puppy/viewtopic.php?p=327671#327671

but it's available in the upcoming 4.3 pre beta


Posted on 30 Jul 2009, 17:51 by linuxcbon
Sydney
For Sydney, copy this in a text file called au-Sydney :

# T freq bw fec_hi fec_lo mod transmission-mode guard-interval hierarchy
# ABC
T 226500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE
# Nine
T 191625000 7MHz 2/3 NONE QAM64 8k 1/8 NONE
# SBS
T 571500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE
# Ten
T 219500000 7MHz 3/4 NONE QAM64 8k 1/16 NONE
# Seven
T 177500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE
# Digital 44
T 578500000 7Mhz 2/3 NONE QAM64 8k 1/8 NONE

type in shell :
scan au-Sydney > channels.conf

Then copy the channels.con in /root/.xine
Run gxine and select File->DVB

See http://www.murga-linux.com/puppy/viewtopic.php?t=29513


Posted on 30 Jul 2009, 24:23 by lucaberta
Eager to help on DVB!
Hello Barry and all the Puppy Linux gang, greetings from Milano, Italy!

I've been an infrequent user of Puppy for a while, but after putting back together bits and pieces of old computers, I need a distro I can rely on for effectively using my "new" P3 850MHz with 512M of RAM. Yeah, not a tiny tiny puppy by all means, but it's good to use bits of hardware, some dating 14 years ago, and making sense of it!

Reason for this message is my thumbs up on the revamp of DVB you're working on 4.3. I am planning to use my "new" P3 with a DVB-S card in order to receive data over DVB, something I have done for quite a few years and am familiar with, so I am definitely in a position to help the development if need be.

First thing, most of the LinuxTV drivers do appear in the stock Linux kernel not long after they've been submitted, though things have gotten more complicated lately with a few DVB-S2 different implementations. But a lot of drivers for cards and their frontends are already in the stock kernel, so there is no need to add external modules in a lot of cases.

My card is a Skystar2, using the b2c2 driver. I would very much welcome any beta build of 4.3 if you need any feedback, also on the dvb-apps.

Thanks, Luca



Posted on 31 Jul 2009, 4:28 by linuxcbon
/dev/dvb/
I read that /dev/dvb/ are created by udev rules.

Example :
# DVB
KERNEL=="dvb", MODE="0660"
SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf
dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0660"

Not sure at all if it works... see http://www.mythtv.org/wiki/Device_Filenames_and_udev#Example_DVB_udev_Rules_file


Posted on 31 Jul 2009, 6:18 by lucaberta
dvb device files
Just finished installing 476 and have found that the Skystar2 card is recognized and the b2c2 module is automagically modprobed, and so the card is seen, and the device files are automatically created:

crw-rw---- 1 root root 212, 7 2009-07-30 22:56 dvb0.net0
crw-rw---- 1 root root 212, 3 2009-07-30 22:56 dvb0.frontend0
crw-rw---- 1 root root 212, 5 2009-07-30 22:56 dvb0.dvr0
crw-rw---- 1 root root 212, 4 2009-07-30 22:56 dvb0.demux0

Only gotcha is that they are dvb0. instead of dvb0/ like I've seen happen in other distros.

Can't locate any references to dvb in the udev rules, though, but I admit that my exposure to Puppy is minimal at this time...



Posted on 31 Jul 2009, 7:44 by BarryK
dvb udev rules
linuxcbon, lucaberta,
4.3pre-beta is finalised, being uploaded today, and has the pre-made device nodes using the script that linuxcbon provided. But perhaps, when you get hold of 4.3pre-beta you could experiment by removing those nodes and put in the udev rules, see if that works.
lucaberta, yes, I thought the nodes would have got auto-created, but I wonder if there is any usage problem with them being different from the others in /dev/dvb/? Like, perhaps some of the utility apps might expect the nodes to have a certain name and path -- yes, most likely, so we had better either use the pre-created nodes or the udev rules. Perhaps without the udev rules, those nodes will still get auto-created even though we have the pre-created ones. ...which means udev is the best way to go.



Posted on 31 Jul 2009, 18:08 by lucaberta
4.2.2 DVB works!
Did a bit of testing on 4.2.2 (4.3 pre-beta) and can share some success with my Skystar2 card (which uses the b2c2 module).

1- the device files are now in /dev/dvb/adapter[0-3] and are correctly recognized by the DVB apps I used

2- I was able to szap to the channel I use, and got a lock immediately, good sign!

3- I then run a scan on the transponder, and got all the services names, so the DVB stream was decoded OK, another good sign

4- using dvbnet I created a new dvb0_0 interface bound to a specific PID on which IP multicast data is sent

5- I found and installed libpcap and tcpdump PET files here:

http://www.dotpups.de/dotpups/Network/

Beware, as the tcpdump binary ends up being in /usr/local/sbin which is not in the default path!

6- I started tcpdump on the dvb0_0 interface and I could confirm reception of the IP multicast data

This was just a quick test, but it gave good results and more tests will be done.

Good job Barry!

Thanks, Luca