LINUX.ORG.RU

Ответ на: комментарий от init_6

Преждне чем слать в какую либо тему, нужно актуальна ли она и решилсь ли проблемма. К тому же в той теме я уже был. И от того что я там прочитал тольку 0. А ссылка - труп.

Про копания в ядре вобще ничего не знаю...

NaViKotE
() автор топика
Ответ на: комментарий от athost

Сейчас прочитал и попробовал, результат - снос всех конфигов т.к. после этого скрипта главное меню перестало реагировать на устройства ввода. Видео смог врубить путём долгово загугливания и замены части настроек. Но с драйвером линейного входа проблеммы осталиь. Звука нет.

NaViKotE
() автор топика
Ответ на: комментарий от NaViKotE

После долгих разборов и перебора комбинаций тюнер-карта (а вариантов может быть до 13770) мне удалось его настроить.

Если кому надо, то вот рецепт:

Для начала понадобится ALSA Mixer. Если его нет, то надо установить при помощи этой комманды:

$ sudo apt-get install gnome-alsamixer

Установился? Запускаем.

$ gnome-alsamixer

Убираем все галки (mut'ы) и ставим linear input на полную. Закрываем. Если звуковых карт несколько, то убрать галки нужно либо во всех, либо в той в которую воткнут переходник от тюнера.

Теперь нужна какая-нбудь прога для просмотра. В скрипте используется tvtime, поэтому её и скачаем.

$ sudo apt-get install tvtime

Далее нужно создать скрипт. Допустим cardtuner.sh и внутрь поместить это:

#/bin/sh
 startc=1 # начальное значение card
 MAXCARD=170 # значение card, на котором остановиться
 startt=1 # начальное значение tuner
 MAXTUNER=81 # значение tuner, на котором остановиться
 c=$startc
 while [ $c -lt $MAXCARD ];
 do
 t=$startt
 while [ $t -lt $MAXTUNER ];
 do
 #выгружаем все модули saa7134
 rmmod saa7134_dvb
 rmmod saa7134_empress
 rmmod saa7134_alsa
 rmmod saa7134
 #подставляем новый номер карты
 modprobe saa7134 card=$c tuner=$t
 echo "Текущий card:" $c
 echo "Текущий tuner:" $t
 sleep 2 #пауза для инициализации
 #проверяем как она определилась
 v4l-info /dev/video0 | head -n 9
 #запуск программы просмотра
 tvtime
 echo
 echo "Берем следующий тюнер"
 echo
 t=$(($t+1))
 done
 echo "Берем следующую карту"
 c=$(($t+c))
 done

затем сохраняем куда нибудь сохраняем его, например в /домашняя_папка/scripts/

Переходим в каталог со скриптом:

$ cd ./scripts/

Преждне чем выполнять скрипт, нужно учесть две вещи:

1.Скрипт не получится остановить т.к. он запущен рутом. Только перезагрузкой оси (если всё же знаете как остановить - вам же лучше).

2.При переборе могут встретиться фэйковые варианты. Допустим card=3 tunner=1. При таком раскладе мой тюнер ловит и видео и звук, НО не сканирует каналы.

Выполняем скрипт:

$ sudo cardtuner.sh

Скрипт перебирает все возможные комбинации тюнер-карта. И будет работать на всех версиях системы (во всяком случае на всех версиях дистрибутива ubuntu. Проверял на 10.4, 10.10, 11.4).

Во время выполнения скрипт будет запускать tvtime при каждой комбинации. От вас требуется жать Esc (эскейп) и смотреть на результат. Если вдруг появится и звук и видео, нужно будет проверить комбинацию. Номера тюнера и карты выводятся в терминале.

Для этого нужно создать файл saa7134.conf в /etc/modprobe.d/ и записать в него это (заменив «Номер карты» и «Номер тюнера» на номер карты и номер тюнера из терминала):

alias char-major-81 videodev
alias char-major-81-0 saa7134
options i2c-algo-bit bit_test=1
options saa7134 card="Номер карты" tuner="Номер тюнера" i2c_scan=1 radio_nr=1
options tuner secam=d
alias char-major-81-1 off
alias char-major-81-2 off
alias char-major-81-3 off

Переходим в modprobe.d: $ cd /etc/modprobe.d/

Создаём файл: $ sudo nano saa7134.conf

сохраняем файл (Ctrl+X, Y, Enter)

Открываем для редактирования:

$ sudo gedit saa7134.conf

и вписываем туда содержимое, приведённое выше.

Перезагружаем систему.

Опять открываем терминал.

$ tvtime

Правой кнопкой вызываем меню и пробуем сканировать каналы. Если всё получается и каналы есть, но изображение неправильное или не все каналы, то в настройках поставьте видеостандарт SECAM, а аудио PAL-BG и пересканируйте. Теперь всё должно работать.

Если канал всего один, значит комбинация фэйковая. Открываем файл скрипта.

Переходим в директорию. $ cd ./scripts/

Открываем для редактирования. $ gedit script.sh

Меняем во 2-ой строке единицу на последний проверенный номер карты, а в 4-ой - на номер тюнера. Сохраняем. Это делается для того, чтобы не перебирать всё сначала. В теории значени карты нужно ставить в единицу, а тюнера - в последнее проверенное +1, но на практике я этого не проверял.

При нахождении новой комбинации выполняем те же действия, что и в прошлый раз.

И так до нахождения нужной комбинации.

За запятые и прочие синтаксические ошибки и очепятки просьба не пинать :)

NaViKotE
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.