След повече от година чакане някой да подкара Abermedia A700 Hybrid +FM, (имам и пусната от мен тема за този тунер във форума) аз се заех с разучаване на кода на драйвера. Намерих грешките, подкарах аналоговата телевизия, радио, пуснах и звука, макар и хамалски успях да ресетна тунера XC2028, за да си зареди по нормален начин firmware-а (нещо което ме мъчи цяла година а се оказа елементарно) и се свързах със създателя на пача за тази карта за да нанесе съответните корекции. След 2 седмици търсена как "интелигетно" да ресетнем тунера пача е готов. От март месец Mercurial подържа DVB частта на този тунер официално. За аналоговата - само с допълнителния пач от
http://dev.gentoo.org/~zzam/dvb/Картата се разпознава автоматично от Линукс, но след прилагане на пача ръчно може да се стартира в конзола с:
sudo modprobe saa7134 card=141 tuner=71
На пича му изпратих и информация как да подкара и дистанционното, но незнам кога ще направи самия пач, въпреки че трябва да се добавят само 2 реда. Може да ги добавите ръчно (редовете, които са с "+" в началото на реда, като "+"-са не го добавяте в кода):
1. Във файла /v4l-dvb-df7a51ffa2ba/linux/drivers/media/video/saa7134/saa7134-cards.c търсите този фрагмент от кода:
case SAA7134_BOARD_AVERMEDIA_A700_HYBRID:
case SAA7134_BOARD_AVERMEDIA_A700_PRO:
/* write windows gpio values */
+ dev->has_remote = SAA7134_REMOTE_GPIO;
saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0x80040100, 0x80040100);
saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x80040100, 0x00040100);
2. Във файла /v4l-dvb-df7a51ffa2ba/linux/drivers/media/video/saa7134/saa7134-input.c
case SAA7134_BOARD_AVERMEDIA_A16D:
+ case SAA7134_BOARD_AVERMEDIA_A700_HYBRID:
ir_codes = ir_codes_avermedia_a16d;
mask_keycode = 0x02F200;
mask_keydown = 0x000400;
polling = 50; /* ms */
/* Without this we won't receive key up events */
saa_setb(SAA7134_GPIO_GPMODE1, 0x1);
saa_setb(SAA7134_GPIO_GPSTATUS1, 0x1);
break;
А ако има и още "по-мераклии" може да си предефинирате бутоните на дистанционното от файла /v4l-dvb-df7a51ffa2ba/linux/drivers/media/common/ir-keymaps.c след реда IR_KEYTAB_TYPE ir_codes_avermedia_a16d[IR_KEYTAB_SIZE] и да го използвате като клавиатура. (все пак програми като Xawtv и Tvtime нямат понятие от клавиша KEY_PROGRAMUP или KEY_ZOOM, а работят нормално с KEY_UP и KEY_F)
П.П. v4l-dvb-df7a51ffa2ba в пътя към файла е версията на драйвера, който изтегляте от
http://linuxtv.org/hg/v4l-dvbЗа да чувате звук, обаче трябва допълнително в конзола да напишете:
sox -c 2 -s -w -r 32000 -t ossdsp /dev/dsp1 -t ossdsp -w -r 32000 /dev/dsp &
като dsp е основната ви звукова карта, а dsp1 е звуковия модул на тунера.
П.П.П. В Убунту sox се инсталира с основни модули и допълнително му се инсталират модулите oss и ossdsp, които ни трябват.