mittels dieses Patches kann der Tuner-Typ (Kabel, Satellit) aus /proc ausgelesen werden.
Code: Alles auswählen
# cat /proc/bus/tuxbox/tuner
DVB-C
Was haltet Ihr davon?
Code: Alles auswählen
# cat /proc/bus/tuxbox/tuner
DVB-C
Code: Alles auswählen
#include <dvb/frontend.h>
#include <ioctl.h>
#include <was/sont/noch/fehlt.h>
int main(void) {
struct dvb_frontend_info i;
int fd = (open "/dev/dvb/adapter0/frontend0", O_RDWR);
if (fd < 0)
return 255;
if (ioctl(fd, FE_GET_INFO, &i) < 0)
return 255;
return i.type;
}
Code: Alles auswählen
typedef enum fe_type {
FE_QPSK,
FE_QAM,
FE_OFDM
} fe_type_t;
Code: Alles auswählen
/* feinfo.c */
# include <stdio.h>
# include <unistd.h>
# include <fcntl.h>
# include <sys/ioctl.h>
# include <linux/dvb/frontend.h>
int main(int argc, char * argv[])
{
int fd;
struct dvb_frontend_info info;
if ((fd = open("/dev/dvb/adapter0/frontend0", O_RDONLY)) == -1)
{
perror("feinfo: Can't open device");
return(1);
}
if (ioctl(fd, FE_GET_INFO, &info) == -1)
{
perror("feinfo: Can't get fe infos");
return(1);
}
printf("feinfo: %s\n", info.type == FE_QPSK ? "SAT" : info.type == FE_QAM ? "CABLE": "TERRESTRIAL");
return(0);
}
Könnte man nicht tuxinfo so erweitern, dass es den Tunertyp anzeigt, sofernseife hat geschrieben:werde ich mal, wenn mich niemand überholt, ein "feinfo"-Tool suchen
tuxinfo.c.ziprhabarber1848 hat geschrieben:Könnte man nicht tuxinfo so erweitern, dass es den Tunertyp anzeigt, sofernseife hat geschrieben:werde ich mal, wenn mich niemand überholt, ein "feinfo"-Tool suchen
die DVB-Treiber geladen sind? Darüberhinaus wäre es nicht schlecht, wenn auch
die Zahl der Flashchips in Skripts ohne sed/awk-Akrobatik ermittelbar wäre:
http://forum.tuxbox-cvs.sourceforge.net ... 31#p360631
Erledigt (danke @flasher): http://forum.tuxbox-cvs.sourceforge.net ... 82#p365082rhabarber1848 hat geschrieben:To-Do:
- Anzahl der Flashchips anzeigen: http://forum.tuxbox-cvs.sourceforge.net ... 78#p365078
Code: Alles auswählen
# tuxinfo -e
VENDOR_ID=3
VENDOR=Sagem
MODEL_ID=1
MODEL=D-BOX2
SUBMODEL_ID=1
SUBMODEL=
TUNER=CABLE
FLASHCHIPS=2
Erst testen, pleaseGetAway hat geschrieben:Einchecken please, wenn die Profis nichts dagegen haben.
committedrhabarber1848 hat geschrieben:Hier habe ich den Patch von mohousch etwas angepasst: tuxinfo.diff
- neuer Parameter -f für Flashchips-Anzahl
- neuer Paramater -t für Tunertyp
Was bei meine 2.6er zu einemrhabarber1848 hat geschrieben:committedrhabarber1848 hat geschrieben:Hier habe ich den Patch von mohousch etwas angepasst: tuxinfo.diff
- neuer Parameter -f für Flashchips-Anzahl
- neuer Paramater -t für Tunertyp
Code: Alles auswählen
make[2]: Entering directory `/home/Playground/tuxbox-clean/tuxbox-cvs_K26/apps/tuxbox/tools/tuxinfo'
powerpc-tuxbox-linux-gnu-gcc -Wall -pipe -Os -Wl,-O1 -o tuxinfo tuxinfo.o -L/home/Playground/tuxbox-clean/dbox2_K26/cdkroot/lib -ltuxbox
tuxinfo.o: In function `main':
tuxinfo.c:(.text+0x330): undefined reference to `tuxbox_get_tuner'
tuxinfo.c:(.text+0x360): undefined reference to `tuxbox_get_chipinfo'
collect2: ld returned 1 exit status
make[2]: *** [tuxinfo] Error 1
make[2]: Leaving directory `/home/Playground/tuxbox-clean/tuxbox-cvs_K26/apps/tuxbox/tools/tuxinfo'
/mnt/cf # ./tuxinfo -e
VENDOR_ID=1
VENDOR=Nokia
MODEL_ID=1
MODEL=D-BOX2
SUBMODEL_ID=1
SUBMODEL=
TUNER=CABLE
FLASHCHIPS=2
Ok.. Danke.seife hat geschrieben:Du musst die libtuxbox neu bauen, bevor du tuxinfo neu bauen kannst.
"make libtuxbox", evtl nach einem "rm $CVSDIR/apps/tuxbox/libtuxbox/config.status" sollte reichen.
ein Schönheitsfehlerif ((c = getopt(argc, argv, "cC:tfmMnNsSvVe")) < 0)