48Представляем приборы

предыдущая статья | оглавление | в архив | следующая статья



Модификация программного обеспечения терминала Dreambox DM 7000-S


Г. Алешин Теле-Спутник - 6(92) Июнь 2003 г.


Совершенствование технологий цифрового вещания и передачи данных, элементная база устройств цифровой обработки сигналов и средств коммуникации позволяют выйти на новый уровень разработки и создания современного спутникового ресивера. Спутниковый терминал, обладающий разнообразными функциями, которые расширяют спектр возможностей устройства, предназначенного только для просмотра телевизионных программ, становится мультимедийным домашним центром. Ресивер Dreambox DM 7000-S, краткое описание которого было опубликовано в "Теле-Спутнике" № 5, 2003 г., не имеет аналогов среди представленного на рынке высокотехнологичного цифрового оборудования спутникового приема. "Это не просто очередной ресивер — это маленькая революция в спутниковом приеме...", — так написано об этом "чуде инженерной мысли" в обзоре, размещенном на сайте http://www2.sat.net.ua/dream_multimedia.html.

Главная особенность этого аппарата заключается в открытости кода программного обеспечения с ядром операционной системы Linux. Это означает, что любой желающий может изменить внутренний софт ресивера. Это является мощным стимулом для постоянного совершенствования п/о и расширения возможностей терминала. Заметим, что большинство разработчиков спутниковых терминалов придерживается диаметрально противоположной стратегии:

  • Варианты модификации программного обеспечения ограничены. Пользователь может загружать в ресивер, подключенный к компьютеру, списки каналов/установок и редактировать их в PC.
  • Пользователю предоставляется возможность устанавливать п/о только производителя терминала. Используется в том числе и канал обновления п/о через спутник.
  • Применяются различные способы защиты от загрузки нелицензионного (неофициального) программного обеспечения, осуществляемой с помощью подключенного к терминалу компьютера. Диапазон способов защиты широкий: от программного способа защиты (использование дополнительного шифрования данных) до аппаратного (предотвращение возможности демонтажа микросхем флэш-памяти и подключения к технологическим разъемам платы терминала).

Несмотря на использование производителем различных мер по защите кода официального программного обеспечения цифровых спутниковых терминалов, некоторые возможности модификации софта открываются благодаря усилиям различных групп программистов. Такая ситуация существует, например, вокруг программного обеспечения популярных спутниковых терминалов Humax. Публикации на эту тему можно найти в "Теле-Спутнике" №№ 2, 3, 2002 г.

Редактирование IMG-файла

Программное обеспечение ресивера Dreambox DM 7000-S имеет иерархическую файловую структуру, что позволяет создавать модифицированные "прошивки", добавляя в них дополнительные данные или оперируя готовыми программными блоками. Основными инструментами для этой деятельности являются утилиты TuxBoxFlashTool и NewTuxFlashTool. Дополнительно может понадобиться универсальный текстовый редактор, позволяющий работать в Linux-совместимой кодировке.

Файл п/о ресивера (IMG-файл) распаковывается указанными утилитами. После распаковки файла доступны все операции, присущие обычному редактору/файловому навигатору. Отредактированный IMG-файл может быть загружен в ресивер либо с использованием сетевого подключения (загрузчик DreamUPLine v.1.20), либо через порт связи RS 232 (загрузчик п/о Dream UP ver.2.14).

Модификация элементов экранного графического интерфейса

Стиль оформления экранного графического интерфейса является своего рода "визитной карточкой" разработчика программного обеспечения. Индивидуальность стиля и его узнаваемость достигается за счет:

  • выбора логической структуры меню и режимов отображения элементов меню на экране телевизора,
  • вывода на экран сервисной информации о канале,
  • цветового и геометрического решения блоков графики,
  • базы шрифтов, определяющей в том числе и мультиязычность экранного интерфейса.

Пользователь ресивера Dreambox DM 7000-S может гибко настраивать графический интерфейс, используя открытую структуру программного обеспечения и дополнительные утилиты-редакторы. Объектами для модификации могут являться графические элементы трех типов:

  • Внешний вид OSD — Skin
  • Загружаемый программный модуль, использующий специфическую графику — Plugin
  • Экран, отображаемый при старте (загрузке) программного обеспечения ресивера, — Bootlogo.

Выбор метода, с помощью которого конструируется новый графический элемент, зависит от расположения файлов, задающих его конфигурацию, в структуре п/о ресивера, а также от порядка загрузки его при старте операционной системы. Есть два способа модификации:

  1. Копирование дополнительных данных через FTP-соединение между ресивером и компьютером. Рестарт программного обеспечения с восстановлением первоначальных установок аннулирует сделанные этим способом изменения.
  2. Внедрение новых графических элементов в файл загружаемой в ресивер операционной системы. Изменения, произведенные таким способом, сохраняют свою силу вплоть до полной смены версии программного обеспечения ресивера.

Установка skin’s

Ведущим элементом графической оболочки (а точнее, ее внешнего отображения), является так называемый Skin ("шкурка"). Возможность изменения пользователем skin’ов в терминале Dreambox DM 7000-S заложена в стандартном режиме настройки параметров ресивера. Набор стандартных skin’ов определяется версией базового программного обеспечения (официального или неофициального). Текущий skin может быть выбран пользователем из предложенного списка, открывающегося в подменю настройки "Skin". Могут быть загружены и дополнительные (альтернативные) skin’ы. Последовательность загрузки нового skin’а следующая:

  1. Открывается сеанс связи с использованием FTP-протокола между терминалом Dreambox DM 7000-S, включенным в локальную сеть через Ethernet-порт, и компьютером. Для этой цели может быть использована любая программа, реализующая функцию FTP-клиента, в том числе и специально разработанный для этой цели FTP-клиент "FTPDM ver.1xx".
  2. В папки /var/tuxbox/config/enigma/skins и /var/tuxbox/config/enigma/pictures/ файловой структуры программного обеспечения ресивера копируются файлы и папки дополнительного skin’а.
  3. В подменю настройки "Skin" выбирается название нового (загруженного) skin’а.
  4. Новый skin вступает в силу после рестарта ресивера.

Готовые skin’ы можно найти на сайтах: http://dreambox-skins.de.tf, http://dreambox.ng-software.de/mindex.html.

Разнообразные skin’ы позволяют изменить и вид OSD ресивера и стиль отображения информации, выводимой на LCD-дисплей (DB_LCDSkin). Использование skin’ов ru.po.v1.02 и world_blue_ru_epg позволяет добиться полной русификации ресивера Dreambox DM 7000-S, включая русификацию разделов меню, корректного отображения информации EPG, содержащей символы кириллицы. Особенность использования различных skin’ов состоит в их совместимости с различными версиями базового п/о. Другой важный момент: из-за ограниченного объема флэш-памяти не рекомендуется загружать более одного-двух дополнительных skin’ов. Если предполагается использовать большое число skin’ов, можно разместить необходимые для этого данные на жестком диске. Эту процедуру можно выполнить, например, так:

  1. Устанавливается Telnet -связь с Dreambox.
  2. В папке /hdd создаются директории для новых skin’ов (/plugins) и картинок (/pictures). Для этого выполняются команды
    cd /hdd
    mkdir plugins
    mkdir pictures
  3. Из папки /var/tuxbox/config/enigma удаляются старые директории с дополнительными skin’ами и картинками
    cd /vsr/tuxbox/config/enigma
    rm -r skins
    rm -r pictures
  4. Добавляются ссылки на новые директории, содержащие skin’ы и картинки
    ln -s /hdd/skins skins
    ln -s /hdd/pictures pictures
  5. После перезагрузки Dreambox новые параметры системы вступают в силу. Новые skin’ы теперь можно записывать в директорию /hdd/plugins, а картинки в директорию /hdd/pictures.

Установка plugin’s

Эти компоненты графической оболочки являются самостоятельными модулями, с помощью которых реализуются дополнительные сервисные возможности ресивера Dreambox DM 7000-S, такие как, например, встроенные игры и программный декодер телетекста. Часть из этих объектов поставляется в составе стандартной программной среды, предоставляемой производителем (Dream-Multimedia GmBx). Plugin’ы хранятся в папке /var/tuxbox/plugins. Каждый из этих объектов определяется информацией, содержащейся в двух файлах: файле конфигурации с расширением "cfg" и файлом данных с расширением "so". Дополнительные plugin’ы копируются в эту же папку и запускаются через меню "Games" ресивера. Неофициальные программные версии п/о ресивера Dreambox DM 7000-S, такие как Emu_beta (от Travaller) и SunRise (от SandBox Team), комплектуются набором интересных простых plugin’ов, превращающих Dreambox DM 7000-S в игровую приставку. Для указанных версий п/о могут быть загружены следующие plugin’ы: lemmings, master, mines, pacman, snake, tank, tetris, yahtzee, libfx2. Графика игр довольно примитивная. Их наличие в п/о ресивера можно, пожалуй, прокомментировать так: "...и это тоже работает".

Загрузка Bootlogo

Bootlogo — экранная заставка, выводимая на экран телевизора при старте п/о ресивера, является отправным пунктом для создания дружественного интерфейса пользователя. Каждый из типов версий п/о ресивера Dreambox DM 7000-S (официальная и неофициальные) имеет собственные bootlogo. Любой пользователь может установить собственный bootlogo, взяв его в готовом виде из Интернета или создав самостоятельно. Готовые bootlogo можно взять на сайте http://dreambox.ng-software.de. Там же можно найти инструкцию по созданию собственного bootlogo и необходимые для этого утилиты. Bootlogo хранится в файле bild, находящемся в папке /root/platform/kernel/ программного обеспечения ресивера. Для изменения стартовой заставки нужно заменить старый файл bild на его новую версию. Для этого можно воспользоваться утилитой TuxBoxFlashTool, которую можно найти, например, на сайте http://www.sat.net.ua.

Для создания собственного bootlogo потребуется программа TMPGenc, которая служит для преобразования изображений в JPG-формате в файл формата MPEG-1 с разрешением 720х576 точек и частотой кадров 25 Гц.

Особенности подключения внешнего HDD

Программное обеспечение терминала ресивера Dreambox DM 7000-S позволяет подключать различное оборудование через порты скоростного обмена: USB и Ethernet. В первом случае требуется установить дополнительные драйверы этих устройств, интегрировав их в Linux-систему программного обеспечения ресивера. Имеются сообщения о таких попытках. В частности, подключение через порт USB накопителей на жестком диске, устройств чтения CD- дисков и флэш-карты дополнительной памяти.

Другой метод использования дополнительного устройства внешней памяти, имеющего файловую структуру организации, состоит в организации канала взаимодействия с этим устройством, определяющим порядок доступа к нему. Таким способом к ресиверу Dreambox DM 7000-S может быть подключен внешний накопитель на жестком диске, находящийся на компьютере, подключенном к терминалу через Ethernet порт. Компьютер может находиться, например, в той же локальной сети. Такое подключение реализуется с использованием программной поддержки NFS-сервера, компоненты которого имеются в Linux-системе программного обеспечения ресивера Dreambox DM 7000-S и, в том числе, устанавливаются на компьютер. На компьютере может быть установлена ОС Microsoft Windows 95/98/2000/XP или NT. При тестировании мы использовали ОС Microsoft Windows XP и TrueGrid NFS-сервер ver.1.1 (XYZ Scientific Applications, Inc.). Для настройки программной среды выполняются следующие действия:

  1. В системной директории \WINDOWS компьютера создается папка \ETC, в которую распаковываются служебные файлы TrueGrid NFS-сервера.
  2. На HDD компьютера создается папка, которая будет использоваться как общий ресурс и в которой будут храниться файлы записей, созданных с применением функций записи на HDD п/о ресивера Dreambox DM 7000-S, например, C:\DREAMBOX\HDD.
  3. В служебный файл EXPORTS, находящийся среди файлов TrueGrid NFS-сервера, добавляется командная строка, указывающая путь к папке, являющийся общим для компьютера и ресивера ресурсом
    /DREAMBOX -PATH=C:\DREAMBOX\HDD
    Опыт показал, что в нашей конфигурации целесообразно в файле EXPORTS оставить и строку /C -PATH=C:\. В противном случае NFS-сервер не запускался.
  4. Запускается NFS-сервер на компьютере последовательным выполнением команд в DOS-сессии из каталога \WINDOWS\ETC
    PORTMAP ADD
    NFS ADD
    NFS START
  5. Открывается сеанс связи между компьютером и ресивером с использованием протокола TELNET
    TELNET XXX.XXX.XXX.XXX
    USER: root
    PASSWORD: dreambox
    Где XXX.XXX.XXX.XXX — IP-адрес ресивера, который он имеет в данной сети.
  6. В сеансе TELNET создается (монтируется) общий ресурс (папка), на которую будет отображаться созданный на компьютере ресурс C:\DREAMBOX\HDD следующей командой
    mount -t nfs -o wsize=4096,rsize=4096, nolock XXX.XXX.XXX.XXX:/dreambox /hdd,
    где wsize=4096,rsize=4096 — объемы устройства хранения информации (HDD), определенные для записи и чтения соответственно.

Особенности использования созданного ресурса:

  • Совместимость с различными версиями базового п/о. Наиболее удобно пользоваться этой возможностью с версиями п/о ресивера от Travaller.
  • Действие смонтированного в соответствии с п.6 общего ресурса продолжается до рестарта ресивера. После каждого включения настройку (то есть выполнение команды mount) необходимо повторить. Для того, чтобы команда выполнялась при каждой перезагрузке автоматически, необходимо ее добавить в скрипт, содержащийся в файле start_enigma, который располагается в папке /var/tuxbox/. Инструкции, реализующие эту возможность:
    ifconfig eth0 YYY.YYY.YYY.YYY netmask 255.255.255.0 up
    mount -t nfs -o wsize=4096,rsize=4096, nolock XXX.XXX.XXX.XXX:/dreambox /hdd,
    где YYY.YYY.YYY.YYY — IP-адрес компьютера, на котором установлен NFS-сервер.

Поскольку кодировка символов в Linux и Microsoft Windows отличаются, для редактирования файла start_enigma нужен специальный текстовый редактор, например, универсальный редактор UltraEdit. Эту программу можно найти на сайте: http://www.ultraedit.com.

Редактор DreamBoxEdit

Насколько нам известно, на настоящий момент существует единственная программа — DreamBoxEdit, предназначенная для редактирования списков каналов и установок ресивера Dreambox DM 7000-S. Текущая версия программы v.1.61. Домашняя страничка редактора в сети Интернет находится по адресу: http://dreamBox.happyllama.com.

Использование этой утилиты упрощает работу по редактированию списков каналов/сервисов, хранящихся в памяти ресивера. Редактор списков каналов/установок позволяет автоматизировать процесс формирования фаворитных списков, если использовать для этого заранее подготовленные файлы. Такие файлы можно найти, например, на сайте http://www.satcity.nl. Особенно удобно использование редактора каналов/установок в том случае, когда используется поворотная антенная система. Наличие встроенной функции трансляции с использованием FTP-протокола позволяет максимально ускорить процесс загрузки файла каналов в ресивер.

Основные функции редактора DreamBoxEdit:

  • Редактирование, копирование и добавление сервисов (каналов)
  • Удаление выделенного канала из всех пакетов (сетей)
  • Удаление и переименование пакетов (сетей)
  • Создание, удаление и переименование фаворитных списков (пакетов) пользователя
  • Дистанционное переключение ресивера на выбранный канал
  • Импорт готовых файлов каналов в формате, используемом известным справочным спутниковым порталом www.satcodx.com
  • Обновление файлов каналов satellite.xml через сеть Интернет
  • Экспорт файлов каналов в текстовый файл с разделителями. Такой файл может быть использован для последующего редактирования, например, программой Microsoft Exel.

Программа DreamBoxEdit использует несколько файлов, в которых сохраняются данные о каналах и установках:

  • services — полный список каналов/сервисов, которые были найдены при сканировании транспондеров различных спутников,
  • bouquets — файл связей каналов и пакетов,
  • userbouquets.tv.epl — файл ссылок на фаворитные списки ТВ-каналов,
  • userbouquets.xxxxx.tv — файл фаворитных списков телевизионных каналов,
  • userbouquets.radio.epl — файл ссылок на фаворитные списки радиоканалов,
  • userbouquets.xxxxx.radio — файл фаворитных списков радиоканалов,
  • satellites.xml — файл, определяющий используемые спутники.

Редактор также позволяет определить параметры каналов и сетей: SID, TSID, NID, VPID, APID, TPID, PPID, 3PID.

К сожалению, списки каналов, относящихся к спутникам, прием которых осуществляется с помощью фиксированной антенной системы, коммутируемой DiSEqC-переключателем, отображаются некорректно. Это ограничение связано с существующим в терминале способом формирования DiSEqC-команд.

Работа с загружаемым в ресивер вновь созданным списком каналов обладает некоторой особенностью: прежде, чем им удастся воспользоваться, необходимо заново пересканировать транспондеры принимаемых спутников. До осуществления этой процедуры ресивер "не видит" новые каналы/транспондеры. Аналогичная картина наблюдалась при использовании редакторов каналов хорошо известной модели цифрового спутникового терминала Nokia Mediamaster 9800 S.

Автор выражает признательность фирме ТВ-Сервис, г. Самара, за предоставленный для тестирования образец терминала Dreambox DM 7000-S.



 
Теле-Спутник Июнь 2003
наверх
 



Уважаемые посетители!
В связи с полной реконструкцией Архива, возможны ситуации, когда текст будет выводиться не полностью или неправильно (отсутсвие статей в некоторых номерах это не ошибка). Если заметите какие-то ошибки, то, пожалуйста, сообщите нам о них. Для связи можете воспользоваться специальной формой:

Номер журнала: *
Страница: *
Дополнительные сведения: *
Желательно четко опишите замеченную проблему - это поможет быстрее ее решить.
Мы не отвечаем на вопросы! Их следует задавать на нашем форуме!
Антиспам: * Нажмите мышкой на синий квадрат:


Поля, помеченные звездочкой (*)
обязательны для заполнения





Новый сайт