[MPlayer-users] Playing trouble with multi-tuner dvb card

Dominique Michel dominique.michel at vtxnet.ch
Wed Sep 5 19:08:03 CEST 2012


Le Tue, 22 Nov 2011 21:05:58 +0100,
Reimar Döffinger <Reimar.Doeffinger at gmx.de> a écrit :

> On Tue, Nov 22, 2011 at 07:46:51PM +0100, Dominique Michel wrote:
> > Le Mon, 21 Nov 2011 19:53:58 +0100,
> > Reimar Döffinger <Reimar.Doeffinger at gmx.de> a écrit :
> > 
> > > On Mon, Nov 21, 2011 at 01:25:13AM +0100, Dominique Michel wrote:
> > > > I think that writing udev rules is behind the capabilities of
> > > > many users. So, are you aware of this issue? and do you have
> > > > any plan in order to solve this into mplayer?
> > > 
> > > The short and honest answer: The DVB maintainer has no time for
> > > MPlayer development, I have only little time and my only DVB
> > > device (DVB-T stick) seems is broken.
> > > So the honest truth unfortunately is that it is unlikely someone
> > > will fix it I am afraid. While the basic idea of fixing it by
> > > changing the syntax to use e.g.
> > > dvb://2:3@
> > > to mean adapter2/frontend3 is simple enough, making sure
> > > everything still works seems quite tricky and few people have a
> > > crazy enough setup to actually be able to test it...
> > > If you or someone else feel up to do a bit of "simple" C
> > > programming I'd be willing to help you getting it implemented.
> > > 
> > 
> > Hi Reimar,
> > 
> > I can try. But you must know that C is not my cup of tee,..

> Maybe on list is better for the moment, I still have hopes that maybe
> others will also help when I am again slow to answer.
> I made a hopefully quite complete but very terse list of what needs to
> be done.
> How to start:
> look at stream/stream_dvb.c in some editor.
> Near the top you will see (with some distance in-between those):
> int card;..
> {"card", ST_OFF(card), CONF_TYPE_INT, M_OPT_RANGE, 1, 4, NULL},
> {"username",    ST_OFF(card), CONF_TYPE_INT, M_OPT_RANGE, 1, 4, NULL},
>         {"card", &stream_defaults.card, CONF_TYPE_INT, M_OPT_RANGE,
> 1, 4, NULL},
> 
> You will want want to duplicate those, replacing "card" by e.g.
> "frontend", and "username" by "password" (better don't ask about that
> one :-) ).
> 
> Then in dvb_get_config you will want to add another loop so instead of
> only looping i from 0 to MAX_CARDS it will also be some j from 0 to
> MAX_FRONTENDS and the filename is generated by
> "/dev/dvb/adapter%d/frontend%i", i, j
> At the end of the loop there is also
> conf->cards[conf->count].devno = i;
> You will want to store the frontend number (j) in that struct, too.
> 
> Then as a last step in dvb_open there is
> if(priv->config->cards[i].devno+1 == p->card)
> here you'll want to extend this to also check the (in the first step)
> newly added p->frontend value.

OK, I did not forget this. I try several things. but the results are not
worth sharing at that time. I did find another tutor that seam to be
the good one for me, but to be sure to miss nothing, I start again from
the beginning. So, it will take some time.

In the main time, I found a solution to use mplayer with a multi-tuner
dvb card without the need of symlinking the dvb devices. It is a 3
steps setup:

- Use scan to get some channel lists (scan is renamed into scan-dvb on
gentoo):

scan-dvb /usr/share/dvb/dvb-t/ch-All -a 0 -f 1 -d 1 -o zap | tee
~/.tzap/channels_ter.conf
scan-dvb /usr/share/dvb/dvb-s/Astra-19.2E -x 0 -t 1 -a 0 -o zap | tee
~/.tzap/channels_sat.conf

In 2 different terminals, run something like the following:

- tune the card
tzap -a 0 -f 1 -d 1 -r "RTS Un" -c channels_ter.conf
or
szap -a 0 -r "Cubavision Internacional" -c channels_sat.conf

- and play it
mplayer /dev/dvb/adapter0/dvr1
or
mplayer /dev/dvb/adapter0/dvr0

Ciao,
Dominique

> _______________________________________________
> MPlayer-users mailing list
> MPlayer-users at mplayerhq.hu
> https://lists.mplayerhq.hu/mailman/listinfo/mplayer-users


-- 
"We have the heroes we deserve."


More information about the MPlayer-users mailing list