summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Vignaud <tvignaud@mandriva.org>2002-08-16 12:33:38 +0000
committerThierry Vignaud <tvignaud@mandriva.org>2002-08-16 12:33:38 +0000
commit3eddf2583b774f928ece9212375b291c3878a478 (patch)
tree8b5e448416dee6f7a47b6ebfeeb1befa40519b7e
parent6defeabbc00f6b5d8bcc2ca587b670d82d35446f (diff)
downloaddrakx-3eddf2583b774f928ece9212375b291c3878a478.tar
drakx-3eddf2583b774f928ece9212375b291c3878a478.tar.gz
drakx-3eddf2583b774f928ece9212375b291c3878a478.tar.bz2
drakx-3eddf2583b774f928ece9212375b291c3878a478.tar.xz
drakx-3eddf2583b774f928ece9212375b291c3878a478.zip
- harddrake::bttv is renamed harddrake::v4l
- harddrake::v4l handle saa7134 too now (and not only bttv) - harddrake::v4l::config need a new driver parameter in order to be able to offer the right cards and tuners list - drakxtv: kill some old comments - add the list of cards supported by saa7134 - add a not to remember a potentiel speedup
-rw-r--r--perl-install/harddrake/bttv.pm221
-rw-r--r--perl-install/harddrake/v4l.pm237
-rw-r--r--perl-install/install_steps_interactive.pm6
-rwxr-xr-xperl-install/standalone/drakxtv31
4 files changed, 255 insertions, 240 deletions
diff --git a/perl-install/harddrake/bttv.pm b/perl-install/harddrake/bttv.pm
deleted file mode 100644
index baf15d2d3..000000000
--- a/perl-install/harddrake/bttv.pm
+++ /dev/null
@@ -1,221 +0,0 @@
-package harddrake::bttv;
-
-use strict;
-
-use standalone;
-use interactive;
-use detect_devices;
-use lang;
-use log;
-use common;
-use modules;
-
-# please update me on bttv update :
-
-my $default = _("Auto-detect");
-my %tuners_lst =
- (
- -1 => $default,
- 0 => "Temic|PAL (4002 FH5)",
- 1 => "Philips|PAL_I (FI1246 and compatibles)",
- 2 => "Philips|NTSC (FI1236 and compatibles)",
- 3 => "Philips|(SECAM+PAL_BG) (FI1216MF, FM1216MF, FR1216MF)",
- 4 => "NoTuner",
- 5 => "Philips|PAL_BG (FI1216 and compatibles)",
- 6 => "Temic|NTSC (4032 FY5)",
- 7 => "Temic|PAL_I (4062 FY5)",
- 8 => "Temic|NTSC (4036 FY5)",
- 9 => "Alps|HSBH1",
- 10 => "Alps|TSBE1",
- 11 => "Alps|TSBB5",
- 12 => "Alps|TSBE5",
- 13 => "Alps|TSBC5",
- 14 => "Temic|PAL_BG (4006FH5)",
- 15 => "Alps|TSCH6",
- 16 => "Temic|PAL_DK (4016 FY5)",
- 17 => "Philips|NTSC_M (MK2)",
- 18 => "Temic|PAL_I (4066 FY5)",
- 19 => "Temic|PAL* auto (4006 FN5)",
- 20 => "Temic|PAL_BG (4009 FR5) or PAL_I (4069 FR5)",
- 21 => "Temic|NTSC (4039 FR5)",
- 22 => "Temic|PAL/SECAM multi (4046 FM5)",
- 23 => "Philips|PAL_DK (FI1256 and compatibles)",
- 24 => "Philips|PAL/SECAM multi (FQ1216ME)",
- 25 => "LG|PAL_I+FM (TAPC-I001D)",
- 26 => "LG|PAL_I (TAPC-I701D)",
- 27 => "LG|NTSC+FM (TPI8NSR01F)",
- 28 => "LG|PAL_BG+FM (TPI8PSB01D)",
- 29 => "LG|PAL_BG (TPI8PSB11D)",
- 30 => "Temic|PAL* auto + FM (4009 FN5)",
- 31 => "SHARP|NTSC_JP (2U5JF5540)",
- 32 => "Samsung|PAL TCPM9091PD27",
- 33 => "MT2032|universal",
- 34 => "Temic|PAL_BG (4106 FH5)",
- 35 => "Temic|PAL_DK/SECAM_L (4012 FY5)",
- 36 => "Temic|NTSC (4136 FY5)",
- 37 => "LG|PAL (newer TAPC series)",
- 38 => "Philips|PAL/SECAM multi (FM1216ME)",
- 39 => "LG NTSC (newer TAPC series)"
- );
-
-# Tweaked from Cardlist
-my %cards_lst =
- (
- _("Auto-detect") => -1,
- _("Unknown|Generic") => 0,
- "M|Miro|PCTV" => 1,
- "Hauppauge|bt848" => 2,
- "S|STB|Hauppauge 878" => 3,
- "I|Intel|Create and Share PCI (bttv type 4)" => 4,
- "I|Intel|Smart Video Recorder III (bttv type 4)" => 4,
- "D|Diamond|DTV2000" => 5,
- "A|AVerMedia|TVPhone" => 6,
- "M|MATRIX-Vision|MV-Delta" => 7,
- "L|Lifeview|FlyVideo II (Bt848) LR26" => 8,
- "G|Genius/Kye|Video Wonder Pro II (848 or 878)" => 8,
- "I|IMS/IXmicro|TurboTV" => 9,
- "Hauppauge|bt878" => 10,
- "M|Miro|PCTV pro" => 11,
- "A|ADS Technologies|Channel Surfer TV (bt848)" => 12,
- "A|AVerMedia|TVCapture 98" => 13,
- "A|Aimslab|Video Highway Xtreme (VHX)" => 14,
- "Z|Zoltrix|TV-Max" => 15,
- "P|Prolink|Pixelview PlayTV (bt878)" => 16,
- "L|Leadtek|WinView 601" => 17,
- "A|AVEC|Intercapture" => 18,
- "L|Lifeview|FlyKit LR38 Bt848 (capture only)" => 19,
- "L|Lifeview|FlyVideo II EZ" => 19,
- "C|CEI|Raffles Card" => 20,
- "L|Lifeview|FlyVideo 98" => 21,
- "L|Lucky Star|Image World ConferenceTV LR50" => 21,
- "A|Askey|CPH050" => 22,
- "P|Phoebe Micro|Tv Master + FM" => 22,
- "M|Modular|Technology MM205 PCTV (bt878)" => 23,
- "A|Askey|CPH06X (bt878)" => 24,
- "G|Guillemot|Maxi TV Video 3" => 24,
- "A|Askey|CPH05X (bt878)" => 24,
- _("Unknown|CPH05X (bt878) [many vendors]") => 24,
- _("Unknown|CPH06X (bt878) [many vendors]") => 24,
- "T|Terratec|Terra TV+ Version 1.0 (Bt848)" => 25,
- "Vobis|TV-Boostar" => 25,
- "T|Terratec|TV-Boostar" => 25,
- "Hauppauge|WinCam newer (bt878)" => 26,
- "L|Lifeview|FlyVideo 98" => 27,
- "G|Guillemot|MAXI TV Video PCI2 LR50" => 27,
- "T|Terratec|TerraTV+" => 28,
- "I|Imagenation|PXC200" => 29,
- "L|Lifeview|FlyVideo 98 LR50" => 30,
- "Formac|iProTV" => 31,
- "I|Intel|Create and Share PCI (bttv type 32)" => 32,
- "I|Intel|Smart Video Recorder III (bttv type 32)" => 32,
- "T|Terratec|TerraTValue" => 33,
- "L|Leadtek|WinFast TV 2000" => 34,
- "L|Leadtek|WinFast VC 100" => 35,
- "L|Lifeview|FlyVideo 98 LR50" => 35,
- "C|Chronos|Video Shuttle II" => 35,
- "L|Lifeview|FlyVideo 98FM LR50" => 36,
- "T|Typhoon|TView TV/FM Tuner" => 36,
- "P|Prolink|PixelView PlayTV pro" => 37,
- "P|Prolink|PixelView PlayTV Theater" => 37,
- "A|Askey|CPH06X TView99" => 38,
- "P|Pinnacle|PCTV Studio/Rave" => 39,
- "S|STB|STB2 TV PCI FM, P/N 6000704" => 40,
- "A|AVerMedia|TVPhone 98" => 41,
- "P|ProVideo|PV951" => 42,
- "L|Little|OnAir TV" => 43,
- "S|Sigma|TVII-FM" => 44,
- "M|MATRIX-Vision|MV-Delta 2" => 45,
- "Z|Zoltrix|Genie TV/FM" => 46,
- "T|Terratec|TV/Radio+" => 47,
- "A|Askey|CPH03x" => 48,
- "D|Dynalink|Magic TView" => 48,
- "I|IODATA|GV-BCTV3/PCI" => 49,
- "P|Prolink|PixelView PlayTV PAK" => 50,
- "L|Lenco|MXTV-9578 CP" => 50,
- "P|Prolink|PV-BT878P+4E" => 50,
- "L|Lenco|MXTV-9578CP (Bt878)" => 50,
- "Eagle|Wireless Capricorn2 (bt878A)" => 51,
- "P|Pinnacle|PCTV Studio Pro" => 52,
- "T|Typhoon|KNC1 TV Station RDS" => 53,
- "T|Typhoon|TV Tuner RDS (black package)" => 53,
- "T|Typhoon|TView RDS + FM Stereo" => 53,
- "L|Lifeview|FlyVideo 2000" => 54,
- "L|Lifeview|FlyVideo A2" => 54,
- "L|Lifetec|LT 9415 TV [LR90]" => 54,
- "A|Askey|CPH031" => 55,
- "L|Lenco|MXR-9571 (Bt848)" => 55,
- "Bestbuy|Easy TV" => 55,
- "L|Lifeview|FlyVideo 98FM LR50" => 56,
- "G|GrandTec|Grand Video Capture (Bt848)" => 57,
- "A|Askey|CPH060" => 58,
- "P|Phoebe Micro|TV Master Only (No FM)" => 58,
- "A|Askey|CPH03x TV Capturer" => 59,
- "M|Modular|Technology MM100 PCTV" => 60,
- "A|AG|Electronics GMV1" => 61,
- "A|Askey|CPH061" => 62,
- "Bestbuy|Easy TV (bt878)" => 62,
- "L|Lifetec|LT9306" => 62,
- "M|Medion|MD9306" => 62,
- "A|ATI|TV-Wonder" => 63,
- "A|ATI|TV-Wonder VE" => 64,
- "L|Lifeview|FlyVideo 2000S LR90" => 65,
- "T|Terratec|TValueRadio" => 66,
- "I|IODATA|GV-BCTV4/PCI" => 67,
- "3Dfx|VoodooTV FM (Euro)" => 68,
- "3Dfx|VoodooTV 200 (USA)" => 68,
- "A|Active|Imaging AIMMS" => 69,
- "P|Prolink|Pixelview PV-BT878P+ (Rev.4C)" => 70,
- "L|Lifeview|FlyVideo 98EZ (capture only) LR51" => 71,
-# "G|Genius/Kye|Video Wonder/Genius Internet Video Kit" => 71,
- "P|Prolink|Pixelview PV-BT878P+ (Rev.9B) (PlayTV Pro rev.9B FM+NICAM)" => 72,
- "T|Typhoon|TV Tuner Pal BG (blue package)" => 72,
- "S|Sensoray|311" => 73,
- "RemoteVision|MX (RV605)" => 74,
- "P|Powercolor|MTV878" => 75,
- "P|Powercolor|MTV878R" => 75,
- "P|Powercolor|MTV878F" => 75,
- "C|Canopus|WinDVR PCI (COMPAQ Presario 3524JP, 5112JP)" => 76,
- "G|GrandTec|Multi Capture Card (Bt878)" => 77,
- "Jetway|TV/Capture JW-TV878-FBK" => 78,
- "Kworld|KW-TV878RF" => 78,
- "D|DSP Design|TCVIDEO" => 79,
- "Hauppauge|WinTV PVR" => 80
- );
-
-my %pll_lst =
- (
- -1 => _("Default"),
- 0 => "don't use pll",
- 1 => "28 Mhz Crystal (X)",
- 2 =>"35 Mhz Crystal"
- );
-
-sub config {
- my ($in) = @_;
- my %conf = (gbuffers => 4, card => $default, tuner => -1, radio => 0, pll => -1);
- if ($in->ask_from("BTTV configuration", _("For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-detect the rights parameters.
-If your card is misdetected, you can force the right tuner and card types here. Just select your tv card parameters if needed"),
- [
- { label => _("Card model :"), val => \$conf{card}, list => [keys %cards_lst], type => 'combo', default => -1, sort =>1, separator => '|'},
- { label => _("PLL setting :"), val => \$conf{pll}, list => [keys %pll_lst], format => sub { $pll_lst{$_[0]} }, sort => 1, default => 0, advanced =>1},
- { label => _("Number of capture buffers :"), val => \$conf{gbuffers}, min=>2, max=>32, sort => 1, default => 0, type=>'range', advanced =>1, help => _("number of capture buffers for mmap'ed capture")},
- { label => _("Tuner type :"), val => \$conf{tuner}, list => [keys %tuners_lst], format => sub { $tuners_lst{$_[0]} }, sort => 1, separator => '|'},
- { label => _("Radio support :"), val => \$conf{radio}, type => "bool", text => _("enable radio support")},
- ]
- ))
- {
- $conf{card}=$cards_lst{$conf{card}};
- my $options =
- 'radio=' . ($conf{radio} ? 1 : 0) . ' '.
- join(' ', map { if_($conf{$_} ne -1, "$_=$conf{$_}") } qw(card pll tuner gbuffers));
- if ($options) {
- log::l("[harddrake::bttv] $options");
- standalone::explanations("modified file /etc/modules.conf ($options)") if $::isStandalone;
- modules::set_options("bttv", $options);
- }
- }
-}
-
-
-
-1;
diff --git a/perl-install/harddrake/v4l.pm b/perl-install/harddrake/v4l.pm
new file mode 100644
index 000000000..0619adb2d
--- /dev/null
+++ b/perl-install/harddrake/v4l.pm
@@ -0,0 +1,237 @@
+package harddrake::v4l;
+
+use strict;
+
+use standalone;
+use interactive;
+use detect_devices;
+use lang;
+use log;
+use common;
+use modules;
+
+# please update me on bttv update :
+
+my $default = _("Auto-detect");
+# TODO: split %tuners_lst in per driver perl source files that get transformed in Storable files
+my %tuners_lst =
+ (
+ -1 => $default,
+ 0 => "Temic|PAL (4002 FH5)",
+ 1 => "Philips|PAL_I (FI1246 and compatibles)",
+ 2 => "Philips|NTSC (FI1236 and compatibles)",
+ 3 => "Philips|(SECAM+PAL_BG) (FI1216MF, FM1216MF, FR1216MF)",
+ 4 => "NoTuner",
+ 5 => "Philips|PAL_BG (FI1216 and compatibles)",
+ 6 => "Temic|NTSC (4032 FY5)",
+ 7 => "Temic|PAL_I (4062 FY5)",
+ 8 => "Temic|NTSC (4036 FY5)",
+ 9 => "Alps|HSBH1",
+ 10 => "Alps|TSBE1",
+ 11 => "Alps|TSBB5",
+ 12 => "Alps|TSBE5",
+ 13 => "Alps|TSBC5",
+ 14 => "Temic|PAL_BG (4006FH5)",
+ 15 => "Alps|TSCH6",
+ 16 => "Temic|PAL_DK (4016 FY5)",
+ 17 => "Philips|NTSC_M (MK2)",
+ 18 => "Temic|PAL_I (4066 FY5)",
+ 19 => "Temic|PAL* auto (4006 FN5)",
+ 20 => "Temic|PAL_BG (4009 FR5) or PAL_I (4069 FR5)",
+ 21 => "Temic|NTSC (4039 FR5)",
+ 22 => "Temic|PAL/SECAM multi (4046 FM5)",
+ 23 => "Philips|PAL_DK (FI1256 and compatibles)",
+ 24 => "Philips|PAL/SECAM multi (FQ1216ME)",
+ 25 => "LG|PAL_I+FM (TAPC-I001D)",
+ 26 => "LG|PAL_I (TAPC-I701D)",
+ 27 => "LG|NTSC+FM (TPI8NSR01F)",
+ 28 => "LG|PAL_BG+FM (TPI8PSB01D)",
+ 29 => "LG|PAL_BG (TPI8PSB11D)",
+ 30 => "Temic|PAL* auto + FM (4009 FN5)",
+ 31 => "SHARP|NTSC_JP (2U5JF5540)",
+ 32 => "Samsung|PAL TCPM9091PD27",
+ 33 => "MT2032|universal",
+ 34 => "Temic|PAL_BG (4106 FH5)",
+ 35 => "Temic|PAL_DK/SECAM_L (4012 FY5)",
+ 36 => "Temic|NTSC (4136 FY5)",
+ 37 => "LG|PAL (newer TAPC series)",
+ 38 => "Philips|PAL/SECAM multi (FM1216ME)",
+ 39 => "LG NTSC (newer TAPC series)"
+ );
+
+# Tweaked from Cardlist
+my $cards_lst = {
+ 'bttv' => {
+ _("Auto-detect") => -1,
+ _("Unknown|Generic") => 0,
+ "M|Miro|PCTV" => 1,
+ "Hauppauge|bt848" => 2,
+ "S|STB|Hauppauge 878" => 3,
+ "I|Intel|Create and Share PCI (bttv type 4)" => 4,
+ "I|Intel|Smart Video Recorder III (bttv type 4)" => 4,
+ "D|Diamond|DTV2000" => 5,
+ "A|AVerMedia|TVPhone" => 6,
+ "M|MATRIX-Vision|MV-Delta" => 7,
+ "L|Lifeview|FlyVideo II (Bt848) LR26" => 8,
+ "G|Genius/Kye|Video Wonder Pro II (848 or 878)" => 8,
+ "I|IMS/IXmicro|TurboTV" => 9,
+ "Hauppauge|bt878" => 10,
+ "M|Miro|PCTV pro" => 11,
+ "A|ADS Technologies|Channel Surfer TV (bt848)" => 12,
+ "A|AVerMedia|TVCapture 98" => 13,
+ "A|Aimslab|Video Highway Xtreme (VHX)" => 14,
+ "Z|Zoltrix|TV-Max" => 15,
+ "P|Prolink|Pixelview PlayTV (bt878)" => 16,
+ "L|Leadtek|WinView 601" => 17,
+ "A|AVEC|Intercapture" => 18,
+ "L|Lifeview|FlyKit LR38 Bt848 (capture only)" => 19,
+ "L|Lifeview|FlyVideo II EZ" => 19,
+ "C|CEI|Raffles Card" => 20,
+ "L|Lifeview|FlyVideo 98" => 21,
+ "L|Lucky Star|Image World ConferenceTV LR50" => 21,
+ "A|Askey|CPH050" => 22,
+ "P|Phoebe Micro|Tv Master + FM" => 22,
+ "M|Modular|Technology MM205 PCTV (bt878)" => 23,
+ "A|Askey|CPH06X (bt878)" => 24,
+ "G|Guillemot|Maxi TV Video 3" => 24,
+ "A|Askey|CPH05X (bt878)" => 24,
+ _("Unknown|CPH05X (bt878) [many vendors]") => 24,
+ _("Unknown|CPH06X (bt878) [many vendors]") => 24,
+ "T|Terratec|Terra TV+ Version 1.0 (Bt848)" => 25,
+ "Vobis|TV-Boostar" => 25,
+ "T|Terratec|TV-Boostar" => 25,
+ "Hauppauge|WinCam newer (bt878)" => 26,
+ "L|Lifeview|FlyVideo 98" => 27,
+ "G|Guillemot|MAXI TV Video PCI2 LR50" => 27,
+ "T|Terratec|TerraTV+" => 28,
+ "I|Imagenation|PXC200" => 29,
+ "L|Lifeview|FlyVideo 98 LR50" => 30,
+ "Formac|iProTV" => 31,
+ "I|Intel|Create and Share PCI (bttv type 32)" => 32,
+ "I|Intel|Smart Video Recorder III (bttv type 32)" => 32,
+ "T|Terratec|TerraTValue" => 33,
+ "L|Leadtek|WinFast TV 2000" => 34,
+ "L|Leadtek|WinFast VC 100" => 35,
+ "L|Lifeview|FlyVideo 98 LR50" => 35,
+ "C|Chronos|Video Shuttle II" => 35,
+ "L|Lifeview|FlyVideo 98FM LR50" => 36,
+ "T|Typhoon|TView TV/FM Tuner" => 36,
+ "P|Prolink|PixelView PlayTV pro" => 37,
+ "P|Prolink|PixelView PlayTV Theater" => 37,
+ "A|Askey|CPH06X TView99" => 38,
+ "P|Pinnacle|PCTV Studio/Rave" => 39,
+ "S|STB|STB2 TV PCI FM, P/N 6000704" => 40,
+ "A|AVerMedia|TVPhone 98" => 41,
+ "P|ProVideo|PV951" => 42,
+ "L|Little|OnAir TV" => 43,
+ "S|Sigma|TVII-FM" => 44,
+ "M|MATRIX-Vision|MV-Delta 2" => 45,
+ "Z|Zoltrix|Genie TV/FM" => 46,
+ "T|Terratec|TV/Radio+" => 47,
+ "A|Askey|CPH03x" => 48,
+ "D|Dynalink|Magic TView" => 48,
+ "I|IODATA|GV-BCTV3/PCI" => 49,
+ "P|Prolink|PixelView PlayTV PAK" => 50,
+ "L|Lenco|MXTV-9578 CP" => 50,
+ "P|Prolink|PV-BT878P+4E" => 50,
+ "L|Lenco|MXTV-9578CP (Bt878)" => 50,
+ "Eagle|Wireless Capricorn2 (bt878A)" => 51,
+ "P|Pinnacle|PCTV Studio Pro" => 52,
+ "T|Typhoon|KNC1 TV Station RDS" => 53,
+ "T|Typhoon|TV Tuner RDS (black package)" => 53,
+ "T|Typhoon|TView RDS + FM Stereo" => 53,
+ "L|Lifeview|FlyVideo 2000" => 54,
+ "L|Lifeview|FlyVideo A2" => 54,
+ "L|Lifetec|LT 9415 TV [LR90]" => 54,
+ "A|Askey|CPH031" => 55,
+ "L|Lenco|MXR-9571 (Bt848)" => 55,
+ "Bestbuy|Easy TV" => 55,
+ "L|Lifeview|FlyVideo 98FM LR50" => 56,
+ "G|GrandTec|Grand Video Capture (Bt848)" => 57,
+ "A|Askey|CPH060" => 58,
+ "P|Phoebe Micro|TV Master Only (No FM)" => 58,
+ "A|Askey|CPH03x TV Capturer" => 59,
+ "M|Modular|Technology MM100 PCTV" => 60,
+ "A|AG|Electronics GMV1" => 61,
+ "A|Askey|CPH061" => 62,
+ "Bestbuy|Easy TV (bt878)" => 62,
+ "L|Lifetec|LT9306" => 62,
+ "M|Medion|MD9306" => 62,
+ "A|ATI|TV-Wonder" => 63,
+ "A|ATI|TV-Wonder VE" => 64,
+ "L|Lifeview|FlyVideo 2000S LR90" => 65,
+ "T|Terratec|TValueRadio" => 66,
+ "I|IODATA|GV-BCTV4/PCI" => 67,
+ "3Dfx|VoodooTV FM (Euro)" => 68,
+ "3Dfx|VoodooTV 200 (USA)" => 68,
+ "A|Active|Imaging AIMMS" => 69,
+ "P|Prolink|Pixelview PV-BT878P+ (Rev.4C)" => 70,
+ "L|Lifeview|FlyVideo 98EZ (capture only) LR51" => 71,
+# "G|Genius/Kye|Video Wonder/Genius Internet Video Kit" => 71,
+ "P|Prolink|Pixelview PV-BT878P+ (Rev.9B) (PlayTV Pro rev.9B FM+NICAM)" => 72,
+ "T|Typhoon|TV Tuner Pal BG (blue package)" => 72,
+ "S|Sensoray|311" => 73,
+ "RemoteVision|MX (RV605)" => 74,
+ "P|Powercolor|MTV878" => 75,
+ "P|Powercolor|MTV878R" => 75,
+ "P|Powercolor|MTV878F" => 75,
+ "C|Canopus|WinDVR PCI (COMPAQ Presario 3524JP, 5112JP)" => 76,
+ "G|GrandTec|Multi Capture Card (Bt878)" => 77,
+ "Jetway|TV/Capture JW-TV878-FBK" => 78,
+ "Kworld|KW-TV878RF" => 78,
+ "D|DSP Design|TCVIDEO" => 79,
+ "Hauppauge|WinTV PVR" => 80
+ },
+ 'saa7134' => {
+ _("Unknown|Generic") => 0,
+ "Proteus|Pro [philips reference design]" => 1,
+ "LifeView|FlyVIDEO3000" => 2,
+ "LifeView|FlyVIDEO2000" => 3,
+ "EMPRESS" => 4,
+ "SKNet|Monster TV" => 5,
+ "Tevion|MD 9717" => 6,
+ "KNC|One TV-Station RDS" => 7,
+ "Terratec|Cinergy 400 TV" => 8,
+ "Medion|5044" => 9
+ }
+ };
+
+my %pll_lst =
+ (
+ -1 => _("Default"),
+ 0 => "don't use pll",
+ 1 => "28 Mhz Crystal (X)",
+ 2 =>"35 Mhz Crystal"
+ );
+
+sub config {
+ my ($in, $driver) = @_;
+ my %conf = (gbuffers => 4, card => $default, tuner => -1, radio => 0, pll => -1);
+ if ($in->ask_from("BTTV configuration", _("For most modern TV cards, the bttv module of the GNU/Linux kernel just auto-detect the rights parameters.
+If your card is misdetected, you can force the right tuner and card types here. Just select your tv card parameters if needed"),
+ [
+ { label => _("Card model :"), val => \$conf{card}, list => [keys %{$cards_lst->{$driver}}], type => 'combo', default => -1, sort =>1, separator => '|'},
+ { label => _("Tuner type :"), val => \$conf{tuner}, list => [keys %tuners_lst], format => sub { $tuners_lst{$_[0]} }, sort => 1, separator => '|'},
+ { label => _("Number of capture buffers :"), val => \$conf{gbuffers}, min=>2, max=>32, sort => 1, default => 0, type=>'range', advanced =>1, help => _("number of capture buffers for mmap'ed capture")},
+ if_($driver eq 'bttv',
+ { label => _("PLL setting :"), val => \$conf{pll}, list => [keys %pll_lst], format => sub { $pll_lst{$_[0]} }, sort => 1, default => 0, advanced =>1},
+ { label => _("Radio support :"), val => \$conf{radio}, type => "bool", text => _("enable radio support")}),
+ ]
+ ))
+ {
+ $conf{card}=$cards_lst->{$driver}{$conf{card}};
+
+ my $options =
+ 'radio=' . ($conf{radio} ? 1 : 0) . ' '.
+ join(' ', map { if_($conf{$_} ne -1, "$_=$conf{$_}") } qw(card pll tuner gbuffers));
+ if ($options) {
+ log::l("[harddrake::bttv] $options");
+ standalone::explanations("modified file /etc/modules.conf ($options)") if $::isStandalone;
+ modules::set_options("bttv", $options);
+ }
+ }
+}
+
+
+
+1;
diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm
index 4c8f6fc63..35000ad15 100644
--- a/perl-install/install_steps_interactive.pm
+++ b/perl-install/install_steps_interactive.pm
@@ -1047,9 +1047,9 @@ sub summary {
if_($isa_sound_card, { label => _("Sound card"), clicked => $isa_sound_card }),
(map {
{ label => _("TV card"), val => $_->{description}, clicked => sub {
- require harddrake::bttv;
- harddrake::bttv::config($o);
-} } } grep { $_->{driver} eq 'bttv' } detect_devices::probeall()),
+ require harddrake::v4l;
+ harddrake::v4l::config($o, $_->{driver});
+} } } grep { $_->{driver} =~ '(bttv|saa7134)' } detect_devices::probeall()),
]);
install_steps::configureTimezone($o); #- do not forget it.
}
diff --git a/perl-install/standalone/drakxtv b/perl-install/standalone/drakxtv
index 745860cca..be29f8966 100755
--- a/perl-install/standalone/drakxtv
+++ b/perl-install/standalone/drakxtv
@@ -18,12 +18,6 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-# If we ever want to autoconf the tv card at install time, we should
-# make a package out of this.
-# Maybe we'll have to for harddrake2
-#
-#package tvdrake;
-
use lib qw(/usr/lib/libDrakX);
use standalone; #- warning, standalone must be loaded very first, for 'explanations'
@@ -55,7 +49,7 @@ sub scan4channels {
formatAlaTeX(_("XawTV isn't installed!
-If you do have a TV card but DrakX has neither detected it (no bttv
+If you do have a TV card but DrakX has neither detected it (no bttv nor saa7134
module in \"/etc/modules\") nor installed xawtv, please send the
results of \"lspcidrake -v -f\" to \"install\@mandrakesoft.com\"
with subject \"undetected TV card\".
@@ -140,16 +134,21 @@ You can install it by typing \"urpmi xawtv\" as root, in a console.")));
}
}
-my @devices = detect_devices::probeall(1);
-if (grep { $_->{media_type} eq 'MULTIMEDIA_VIDEO' } @devices) {
- if (($< == 0) && (grep { $_->{driver} eq 'bttv' } @devices)) {
- require harddrake::bttv;
- modules::read_conf;
- harddrake::bttv::config($in);
- modules::write_conf;
+my @devices = grep { $_->{media_type} eq 'MULTIMEDIA_VIDEO' } detect_devices::probeall(1);
+if (@devices) {
+ # TODO: That need some work for multiples TV cards
+ foreach (@devices) {
+ if (($< == 0) && (grep { $_->{driver} =~ '(bttv|saa7134)' } @devices)) {
+ require harddrake::v4l;
+ require modules;
+ no strict 'subs';
+ modules::read_conf;
+ harddrake::v4l::config($in, $_->{driver});
+ modules::write_conf;
+ }
+ scan4channels();
+ $in->exit(0);
}
- scan4channels();
- $in->exit(0);
} else {
$in->ask_warn(_("No TV Card detected!"), formatAlaTeX(
_("No TV Card has been detected on your machine. Please verify that a Linux-supported Video/TV Card is correctly plugged in.