- PVSM.RU - https://www.pvsm.ru -

Телевизор в сети

Дано: современный телевизор, модель не играет большой роли, главное чтобы был сетевой плеер.
Требуется: подцепить его к домашней сети чтобы он проигрывал хранящиеся на серваке фильмы.

Телевизор в сети

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

  • не умеет работать с сетью (проходим мимо таких — каменный век)
  • только Ethrenet
  • опциональный (внешний) WI-FI
  • встроенный WI-FI

Если заявлен WI-FI как опция будьте готовы выложить еще с сотню баксов за его родной адаптер, не смотря на убеждения продавцов что мол надо докупить любой USB адаптер и все будет работать, сам столкнулся с таким в М-Видео (благо на приемке заглянул в мануал и быстро вернул деньги).

Телевизор в сети
Это не просто USB, а еще и слот для родного Wi-Fi адаптера

Родные же WI-FI адептеры даже в крупных сетевых магазинах оказались редкостью. А заложить в стену в спальне, где висит телек UTP во время ремонта не у всех хватает сообразительности. Так что вроде есть две опции, а работать с ними с наскоку не получается.

Благо подключить телевизор используя порт Ethernet и внешнюю точку доступа в режиме клиента совсем не проблема. Этот вариант имеет еще и некоторые преимущества:

  • цена простой точки доступа существенно ниже родного адаптера
  • уровень сигнала точки с внешней антенной значительно превосходит уровень сигнала USB свистка
  • при некотором везении точку доступа можно настроить в режиме моста с WDS+AP и тогда она еще будет «усиливать сигнал» перераздавая сеть для слабых устройств типа мобильников (при использовании SIP уровень сигнала довольно критичный момент)

Итак, купив телевизор с портом RJ-45 надо найти (древние однопортовые точки доступа не раритет и у многих пылятся в столах) или купить дешевую точку с поддержкой режима Client. Настраиваем по мануалу режим Client для точки доступа, после этого она начнет на первом порту бриджевать сеть, а MAC самой точки, видимый с AP сменится на мак подключенного телека.

Телевизор в сети
Точка доступа притаилась в засаде

Что бы работал WDS [1] — распределенная структура сети, чипсеты точек должны быть одного производителя (по слухам можно заточить Atheros и Broadcom но это исключение, и не будет WPA). Для настройки WDS я использовал прошивку dd-wrt [2] для обоих роутеров — иначе не получалось заставить раздавать сеть на порты Ethernet, так что имеет смысл проверить модель перед покупкой.

Получив рабочий Ютуб и обновив прошивку телека из сети, обрадованные вы скорее всего захотите запустить сетевой медиаплеер. Но не смотря на наличие разнообразных файловых серверов в вашей сети, начиная от TFTP, FTP, SCP и заканчивая Самбой (aka Сеть Windows) вы скорее всего обломитесь, а почитав мануал уясните что ваше чудо техники «работает с файлами, которые хранятся на сервере DLNA CERTIFIEDTM»

Телевизор в сети

На то что такое DLNA, намекает википедия [3], так что этот пункт опустим, все умеют читать. Самое важное что это некий сетевой протокол, а поэтому его можно вкрячить на домашний сервак. Я выбрал minidlna [4] — подкупило свлово мини в названии.

Предположим что у всех домашние серваки подняты на gentoo, а если нет то качаем из своего репозитория или соурсфорджа [5] и собираем из исходников. Если вам не повезло и есть только Windows то читайте здесь [6], возможно найдется сервер и для него.

emerge net-misc/minidlna

К слову сказать документация на него тоже, мини. На сайте пусто, мана нет. Но да оно и не нужно. После установки появляются следующие файлы:

/etc/minidlna.conf - основной конфигурационный файл
/etc/conf.d - конфиг демона
/etc/init.d/minidlna - ранскрипт демона

Из опций которые правим в конфиге:

# интерфейсы, на которых работает сервер - домашняя сеть
network_interface=eth2, eth3
# где искать контент
# сюда качаются торренты rtorrent-ом
media_dir=/var/download/ftp
# сюда пишет камеры motion с bt848
# лирическое отступление, обратите внимание, если внутри нет подпапки, например /home/motion/camera1
# то все файлы будут отображены вместе с содержимым  /var/download/ftp вперемежку с файлами и папками
# в /var/download/ftp, так что есть папка с кучей файлов делайте подпапки - будет удобнее
media_dir=V,/home/motion
# увековечиваем свое имя
friendly_name=ma5ter DLNA server
# рабочие данные хранить здесь
db_dir=/var/cache/minidlna
# а логи здесь
log_dir=/var/log

В конфиге демона говорим от чьего имени работать:

M_USER="mdlna"
M_GROUP="mdlna"

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

useradd -d /var/cache/minidlna -s /sbin/nologin -U mdlna
touch /var/log/minidlna.log
chown mdlna /var/log/minidlna.log

Для начала этого достаточно. Cтартуем сервер DLNA

/etc/init.d/minidlna start

В логе не должно быть ошибок, нормальный запуск выглядит как-то так (последние строчки появляются в по прошествии некоторого времени в процессе работы сканера):

[2012/11/15 12:12:43] minidlna.c:888: warn: Starting MiniDLNA version 1.0.24 [SQLite 3.7.13].
[2012/11/15 12:12:43] minidlna.c:911: warn: Creating new database...
[2012/11/15 12:12:43] minidlna.c:988: warn: HTTP listening on port 8200
[2012/11/15 12:12:43] scanner.c:727: warn: Scanning /var/download/ftp
[2012/11/15 12:13:26] scanner.c:798: warn: Scanning /home/motion finished (1482 files)!
[2012/11/15 12:13:26] playlist.c:125: warn: Parsing playlists...

Телевизор в сети
Сервер найден — нажмите ОК для просмотра файлов и папок...

В общем-то все начинает работать, однако если вас не устроит стандартная иерархия папок то можно чуточку заточить под себя редактированием конфига:

# сразу открывать папку со всем содержимым
root_container=B

Автор: ma5ter

Источник [7]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/mediatsentr/20180

Ссылки в тексте:

[1] WDS: http://ru.wikipedia.org/wiki/WDS

[2] dd-wrt: http://www.dd-wrt.com/site/support/router-database

[3] википедия: http://ru.wikipedia.org/wiki/DLNA

[4] minidlna: http://minidlna.sourceforge.net/

[5] соурсфорджа: http://sourceforge.net/projects/minidlna/

[6] здесь: http://en.wikipedia.org/wiki/List_of_UPnP_AV_media_servers_and_clients

[7] Источник: http://habrahabr.ru/post/158717/