HowTo Смотрим Спутниковое ТВ в Ubuntu
Недавно столкнулся с проблемой настройки dvb-карты под Linux (ST-4200, клон SkyStar4). Все бы хорошо, но в интернете было достаточно мало информации по их установке, тем более для последних моделей этого девайса. И чтобы хоть как-то помочь популяризации мой любимой ОС, я написал вот этот небольшой how-to, где подробно описан порядок настройки. Старался изложить все максимально просто, для всех.
Итак, приступим. Прежде чем читать дальше, у вас уже должен быть установален дистрибутив Ubuntu, желательно последней версии (9.04 на данный момент), настроен интернет, ну и, конечно, dvb-карта, подключенная к настроенной спутниковой антенне. Как это все сделать, можно найти на сайтах ubuntologia.ru и forum.alyno.ru
1. Включаем проприетарный драйвер видеокарты. Идем в Система->Администрирование->Драйверы устройств. В появившемся окошке выбираем нужный драйвер, щелкаем по кнопке Активировать. Все, аппаратная поддержка включена!
2. Проверям, опозналась ли dvb-карта системой. Запускаем терминал Приложения->Стандартные->Терминал. Вводим команду
dmesg | grep dvb
Теперь внимательно смотрим на вывод. Если вы там нашли название вашей dvb-карточки, то значит система автоматически определила ее и установила свой драйвер, и можно сразу переходить к пункту 5.
3. Если ваша система не смогла определить карту, то не беда! Нашим соотечественником Игорем Липляниным был создан репозиторий, в котором есть драйвера практически к любой dvb-карте. Чтобы их установить, надо иметь уже настроенное подключение к интернету. Все дальнейшие действия надо будет выполнять в терминале с правами суперпользователя (root’a). Для этого в терминале вводим команду
sudo -i
После чего у вас запросят пароль. Замечу, что при вводе пароль не отображается, поэтому будьте внимательными и не ошибитесь при вводе. Если вы ввели все верно, то в строке приглашения символ $ поменяется на #, и сама строка примет приблизительно такой вид root@Ubuntu:
#.
Переходим в каталог, где мы будем собирать драйвер
cd /usr/src
Скачиваем и устанавливаем необходимые библиотеки из интернета
10мб. На все вопросы соглашаемся, нажимая клавишу y в английской раскладке
apt-get install build-essential linux-headers-generic
apt-get install mercurial libncurses-dev
Копируем исходники из репозитория (точно не помню, но где-то 20-150мб)
hg clone h_t_t_p://mercurial.intuxication.org/hg/s2-liplianin/ (естественно прежде убрав все символы подчеркивания _)
Переходим в нужный каталог
cd s2-liplianin/
Собираем
make KERNELRELEASE=$(uname -r)
И устанавливаем
make KERNELRELEASE=$(uname -r) install
Внимание! В зависимости от производительности процессора, драйвер может собираться от нескольких десятков минут, до нескольких часов!
Дальше надо найти firmware для чипа вашей dvb-карты. Его можно взять либо с сайта linuxtv.org, либо искать в гугле что-то наподобии такого: st-4200 firmware (вместо st-4200 пишем название своей карты). Скачиваем и сохраняем в удобном месте.
Копируем его в нужный каталог
cp SOURCE /lib/firmware
где SOURCE это полный путь к файлу firmware
Например, я сохранил свой firmware dvb-fe-cx24116.fw в своей домашней папке, то тогда полный путь к файлу будет таким /home/my_login/dvb-fe-cx24116.fw, а команда выглядеть так cp /home/my_login/dvb-fe-cx24116.fw /lib/firmware.
Замечу, что в каталоге /lib/firmware, возможно, уже есть нужный вам firmware, но я все равно советую поискать в интернете самую последнюю версию, ибо у меня со старым не заработало.
Обязательно перезагружаемся
reboot
4. Опять смотрим вывод
dmesg | grep dvb
Если все нормально, проверяем каталог /dev/dvb/adapter0
ls /dev/dvb/adapter0
там должны лежать файлы demux0, dvr0, frontend0, net0.
5. Даем текущему пользователю права на запуск софта для работы с dvb. Система->Администрирование->Пользователи и группы. Нажимаем кнопку Разблокировать, выбираем свою учетную запись щелкаем по Свойства, переходим на вкладку Привилегия пользователя и ставим галочки (если они не стоят) напротив Администрировать систему, Использовать аудио-устройства, Сохранять видео с ТВ… Жмем OK и закрываем.
6. Ставим софт. Софта под Linux для работы с dvb устройствами довольно много, но, как мне показалось, наиболее дружелюбным оказался kde’шный Kaffeine. Его настройка происходит намного проще, чем, допустим, того же DVB Dream’a в windows. К тому же у него есть EPG, timeshift и еще много разных фишек, например, возможность кардшаринга (бесплатный или почти бесплатный просмотр закрытых каналов).
Для инсталяции Kaffeine в терминале пишем
sudo apt-get install kaffeine
Будет предложено скачать
100 мб. Соглашаемся. Во время установки кафеин попросит ввести конфигурацию дайсеков (diseq). Здесь все элементарно (тем, кто уже настраивал в windows), описывать нет смысла. Если по каким-то причинам не удалось настроить дайсек, то это всегда можно сделать позже в меню программы DVB->Настройка DVB.
Теперь приступаем к поиску каналов. Запускаем кафеин, открываем DVB->Каналы, выбираем спутник и жмем Начать поиск. Все найденные каналы будут в правой части окна. Их можно добавить в список каналов, который находится слева, либо вручную, либо с помощью фильтра. После того, как вы составите список каналов, жмем Готово. Вуаля! Настройка DVB TV под Linux закончена!
7. Всего скорей окажется, что не все каналы будут просканированы. Это происходит из-за того, что с программой идут устаревшие списки трансподеров. Чтобы их исправить или добавить новые, с помощью файлового менеджера (например nautilus) переходим в каталог /home/логин_пользователя/.kde/share/apps/kaffeine/dvb-s В этой папке лежат файлы конфигов на все спутники.
Вот пример файла для спутника ABS-1 (северный луч, ku-диапазон)
# ABS-1 @ 75E
# freq pol sr fec
S 12518000 V 22000000 7/8
S 12548000 V 22000000 7/8
S 12579000 V 22000000 7/8
S 12610000 V 22000000 7/8
S 12640000 V 22000000 3/4
S 12670000 V 22000000 7/8
S 12694000 V 10750000 3/4
S 12732000 V 22000000 7/8
Как видно, строка состоит из символа S, частоты трансподера (в кГц), поляризации (V или H), символьной скорости, FEC (дробь вида x/y или AUTO). Все это разделено пробелами. Все цифры можно взять с сайта lyngsat.com
_________________
Если вам непонятно, что делает какая-нибудь команда, то это всегда можно узнать во встроенной справке, набрав в терминале
man имя_команды
Все вышесказаное делалось в графической среде GNOME.
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Спутниковое тв через vlc
Доброго времени суток. Сам давно мучался со связкой VDR+XBMC, так как не мог найти ничего более простого чтобы смотреть спутниковые каналы (в том числе закрытые) на Ubuntu. И вот добрый человек Ан9рей с гомельского форума подсказал простейшее решение (большая часть инструкции взята отсюда: http://gomel-sat.net/forums/index.php?showtopic=2533&page=1)
1. Прописываем репы VDR и OSCAM (это для ш*ринга):
2. Ставим VDR с нужными плагинами и Oscam:
3. Останавливаем Oscam:
И прописываем настройки своего ш*ринга в /etc/oscam/oscam.server. Если у Вас есть ещё пакеты, то создаёте ещё разделы [reader] и прописываете настройки.
VDR в этом репе уже настроен на 36 градус, даже трогать ничего не надо. Но если всё же нужно что-то настроить:
Настраивается VDR правкой конфигурационных файлов:
/etc/vdr/channels.conf # Список и параметры настройки отсканированных каналов. Если у Вас нет дисека и Вы хотите смотреть передачи только нашего любимейшего спутника Eutelsat W4W7 36-ой градус, то они прописаны по умолчанию. Если Вам нужны другие спутники, у Вас DiSEqC, тогда нужно отсканировать channels.conf самостоятельно.
Инструкция по сканированию для VDR.
Устанавливаем деб-пакет scan-s2 (находится внизу в Приложении (app.zip)).
Утилита scan-s2 предназначена для сканирования каналов, графического интерфейса не имеет, управляется через командную строку.
Пакет пропатчен и в отличии от оригинала корректно прописывает русские названия каналов. Справку по утилите можно получить, введя в терминале команду scan-s2 без параметров.
Далее в описании будет прослеживаться откровенный плагиат, я прошу у Alexa прощения, но денежной компенсации не обещаю
Создаём в Домашней папке папку scan. В ней создаём текстовый файл со списком транспондеров нужного Вам спутника. Имя файла может быть любым. К примеру для спутника Eutelsat W4W7 36E назовём его 36.ini Формат файла должен быть такой:
Поляризация всегда прописывается H или V даже если круговая.
Это его полный текст для спутника Eutelsat W4W7 36E:
Параметры транспондеров для других спутников Вы можете найти на сайте http://www.lyngsat.com/
Открываем терминал. # Заходим в папку scan
# Пример команды для сканирования транспондеров с круговой поляризацией (Eutelsat W4W7 36E)
# Пример команды для сканирования транспондеров с линейной поляризацией
-a 0 – указывает номер DVB адаптера
-s 0 – номер порта DiSEqC ( отсчет с нуля)
-O ‘S36E’ – название спутника как он определен в /etc/vdr/sources.conf«
-o vdr – выводить в формате VDR
-l … – LNB-тип low[,high[,switch]] в Mhz (для круговой поляризации 10750,10750,10750, что является конечно же абсурдом, но программа понимает только так), по умолчанию линейная поляризация.
Справку по утилите можно получить, введя в терминале команду scan-s2 без параметров.
После сканирования в папке scan будут лежать файлы с отсканированными каналами.
С помощью простого текстового редактора gedit их нужно скопировать в один файл channels.conf.
Можно по своему усмотрению отредактировать последовательность каналов, просто переставляя полные строки.
Можно отсорировать по разделам (Спорт, Избранное и т.п.)
После чего файл channels.conf нужно скопировать в /var/lib/vdr/ (конечно же под суперпользователем).
Разработка утилиты scan-s2 давно заброшена автором и она страдает многими проблемами. Она не всегда корректно работает с некоторыми картами. Об этом есть сообщения в интернете. Prof 7500 ведёт себя непредсказуемо при сканировании DVB-S2 транспондеров , а с Tevii S460 и дешёвенькой X3M SPC1400HD работает хорошо. Поэтому я хотел бы пояснить некоторые значения строки настроек канала.
Название канала;провайдер:частота: — тут всё понятно.
v-вертикальная поляризация ®, h-горизонтальная (L). Даже если круговая всё равно v или h.
C34 — fec 3/4.
M5 = 8PSK, M2 = QPSK
O35 — RollOff 35
S1 = DVB-S2, S0 = DVB-S — этот параметр на Prof 7500 не всегда правильно определяется на DVB-S2 каналах иногда написано S0. Канал работать не будет. Нужно исправить ручками, или взять готовый channels.conf. Можно здесь http://channelpedia.yavdr.com/
/etc/vdr/diseqc.conf # Конфигурация diseqc. Его нужно прописывать, даже если у Вас нет diseqc. VDR из него узнаёт параметры конвертора. Для Eutelsat W4W7 36-ой градус ничего делать не нужно, он отредактирован по умолчанию.
Правка файла diseqc.conf
Это текст файла diseqc.conf для случая если у Вас один Eutelsat W4W7 (круговая поляризация)
Если у Вас один конвертер с линейной поляризацией:
S9E — это Eurobird 9A. Если у Вас другой спутник то нужно изменить параметр в соответствии с тем, как прописано в файле /etc/vdr/sources.conf
Это текст моего файла diseqc.conf для 4-х конверторов:
/etc/vdr/setup.conf # В нем для спутникового приёма нужно исправить только одну строку, вместо DiSEqC = 0 прописать DiSEqC = 1, даже если у Вас нет diseqc. (Прописано по умолчанию)
Если Вы будете передавать сигнал из VDR в сеть и смотреть на другом компьютере, то нужно отредактировать файл /etc/vdr/plugins/xvdr/allowed_hosts.conf
Редактируем
По умолчанию он имеет такой вид:
Смысл конфига такой. Здесь прописываются адреса с которыми разрешено соединятся VDR.
127.0.0.1 # Локальный компьютер
192.168.0.0/24 # Локальная сеть с адресами 192.168.0.1 — 192.168.0.255.
У меня локальная сеть с адресами 192.168.1.1 — 192.168.1.255, поэтому у меня в конфиге прописано 192.168.1.0/24 .
204.152.189.113 # это пример любого конкретного адреса, с которого можно подключиться к VDR.
0.0.0.0/0 # любой адрес на любой сети (Используйте с осторожностью…)
Файлам, которые вы заменили, обязательно нужно дать права на «чтение+запись» командой chmod.
4. Запускаем Oscam (если настраивали VDR, его тоже нужно запустить):