Главная

MediaTomb&HaikuOS

На компе с гайкой запущен UPnP сервер MediaTomb, тк задача подцепить к нему поддерживающий UPnP HDплеер (например, Asus O!Play) смотреть на телике расшаренные медиафайлы с бфс винтов.
Запускается так:

Welcome to the Haiku shell.

~> route add /dev/net/rtl8139/0 239.0.0.0 netmask 255.0.0.0
~> ifconfig /dev/net/rtl8139/0 allmulti
~> /boot/home/Desktop/mediatomb -l /boot/logfile.txt

имеем в логе
MediaTomb UPnP Server version 0.12.0 — http://mediatomb.cc/

===============================================================================
Copyright 2005–2008 Gena Batsyan, Sergey Bostandzhyan, Leonhard Wimmer.
MediaTomb is free software, covered by the GNU General Public License version 2

2010–10–03 02:15:05 INFO: Loading configuration from: /boot/home/config/settings/mediatomb/config.xml
2010–10–03 02:15:05 INFO: Checking configuration…
2010–10–03 02:15:05 INFO: Setting filesystem import charset to UTF–8
2010–10–03 02:15:05 INFO: Setting metadata import charset to UTF–8
2010–10–03 02:15:05 INFO: Setting playlist charset to US–ASCII
2010–10–03 02:15:05 WARNING: You enabled the YouTube feature, which allows you
to watch YouTube videos on your UPnP device!
Please check http://www.youtube.com/t/terms
By using this feature you may be violating YouTube
service terms and conditions!

2010–10–03 02:15:05 INFO: Configuration check succeeded.
2010–10–03 02:15:06 WARNING: Sqlite3 database seems to be corrupt or doesn't exist yet.
2010–10–03 02:15:06 INFO: no sqlite3 backup is available or backup is corrupt. automatically creating database…
2010–10–03 02:15:06 INFO: database created successfully.
2010–10–03 02:15:06 INFO: Initialized port: 49152
2010–10–03 02:15:06 INFO: Server bound to: 192.168.1.3
2010–10–03 02:15:07 INFO: MediaTomb Web UI can be reached by following this link:
2010–10–03 02:15:07 INFO: http://192.168.1.3:49152/

Сервер работает частично, набираем в броузере http://192.168.1.3:49152/, получаем доступ к веб интерфейсу. Причем доступ на веб обеспечивается не только с компа HaikuOS локально (также доступ есть по адресу 127.0.0.1:49152 и 0.0.0.0:49152), но и с компьютера виндовс, подключенного через модем–роутер.
В веб фейсе видны расшариваемые каталоги HaikuOS разделов, в том числе и скрытые, от корня раздела.

НО, как проверить подключение UPnP — не знаю, тк с наскока это дело не получилось, пробовал подключить плеер напрямую к компу и через модем–роутер, сервер и клиент «договориться» не могут. Кто виноват? сервер, HaikuOS или плеер Asus O!Play?
Сервер (netstat сообщает) слушает tcp порт *:49152, открывает udp порт *:1900 и udp localhost:64337
см. ниже
Proto Recv–Q Send–Q Local Address Foreign Address State Program

ip 0 0 — - 2211/BeZillaBrowser
tcp 0 0 *:49152 *:* listen 2478/mediatomb
udp 0 0 localhost:64337 — 2478/mediatomb
udp 0 0 *:1900 — 2478/mediatomb

Продолжая тему,

Продолжая тему, справочно:
Простой протокол обнаружения сервисов (англ. Simple Service Discovery Protocol, SSDP) — Истекший черновик интернет стандарта (Internet draft) IETF написанный компаниями Microsoft и Hewlett–Packard. Данный протокол является основой протокола обнаружения Universal plug-and–play.
SSDP описывает механизм, согласно которому сетевые клиенты могут обнаружить различные сетевые сервисы. Клиенты используют SSDP без предварительной конфигурации. SSDP поддерживает обнаружение при помощи мультикаста, уведомления от серверов, и маршрутизацию. Данная служба включает обнаружение UPnP–устройств в домашней сети. Однако, необходимость данного сервиса в домашних условиях вызывает большое сомнение.
SSDP использует XML UDP (порт 1900) пакеты как в одноадресной так и в многоадресной рассылке для объявлений о сервисах. Используется мультикаст адрес 239.255.255.250.

Стек UPnP включает в себя несколько технологий: SSDP (Simple Service Discovery Protocol, простой протокол обнаружения сервисов), GENA (Generic Event Notification Architecture, архитектура группового уведомления о событиях), SOAP (Simple Object Access Protocol, простой протокол доступа к объектам) и XML. Управляющий процесс UPnP начинает свою работу с этапа обнаружения: осуществляется групповая рассылка SSDP–пакета на адрес 239.255.255.250:1900. Устройство, прослушивающее этот групповой адрес, в ответ отправит сообщение с описанием своей службы. Механизм управления UPnP прочтет это сообщение и осуществит поиск доступных методов. Каждому методу ставится в соответствие контрольная точка (URL и заголовок), а также параметры метода, если это требуется. Как только информация обо всех методах получена, исполняющий механизм UPnP выбирает тот из них, который наилучшим образом соответствует поставленной задаче, и отправляет SOAP–сообщение на контрольную точку для выполнения этот метода.

Протокол SSDP основан на UDP и использует групповые пакеты, SOAP–сообщения представляют собой POST–запросы со значением contentType, равным application/xml, заголовком SOAPAction и телом запроса, соответствующим формату SOAP–сообщения. Эти три элемента запроса невозможно изменить с помощью JavaScript, если только мы не имеем дело с объектом XMLHttpRequest.

такая

такая маршрутизация в HaikuOS обеспечивает прохождение SSDP запроса от асусплеера (клиент) на UPnP сервер MediaTomb ??

~> route
192.168.1.3 mask /dev/net/rtl8139/0, host local
127.0.0.1 mask loop, host local
192.168.1.0 mask 255.255.255.0 /dev/net/rtl8139/0
127.0.0.0 mask 255.0.0.0 loop
239.0.0.0 mask 255.0.0.0 /dev/net/rtl8139/0
0.0.0.0 mask 0.0.0.0 gateway 192.168.1.1 /dev/net/rtl8139/0, default

проблема

проблема решена добавлением в config.xml медиатомба доп строчки
(alive)180(/alive) !!!!прим. вместо скобок использовать уголки меньше больше

асус плеер и медиатомб стали моментально (30 сек макс) договариваться по UPnP!!!!

теперь остается задача — как–то отделить порт модема (для асусплера) от инета….

Решил

Решил не мучить модем–роутер, поставил вторую сетевую карту RTL8139 (первая встроенная в маме marvell_yukon) запускаю скриптом :

#!/bin/sh
ifconfig /dev/net/rtl8139/0 10.0.0.3 255.255.255.0 up
sleep 1
route add /dev/net/rtl8139/0 default gw 10.0.0.1
sleep 1
route add /dev/net/rtl8139/0 239.0.0.0 netmask 255.0.0.0
sleep 1
ifconfig /dev/net/rtl8139/0 allmulti
sleep 1
/boot/apps/Mediatomb/mediatomb -i 10.0.0.3 &

Настройки сети медиаплеера Асус 10.0.0.1 маска 255.255.255.0 шлюз 10.0.0.3 днс пустой 0.0.0.0

Теперь бум пробовать порт Fuppes медиасервера.:)

Fuppes работает

Fuppes работает при тех же сетевых настройках, единственная правка — поставил в конфиге ip 10.0.0.3 и свой каталог с фильмами
PS — на первый взгляд ничуть не хуже медиатомба….

На мой взгляд

На мой взгляд Fuppes даже лучше. Можно настраивать отдачу под конкретное устройство(var/lib/fuppes/devices).
Странно, что проги нету в репах популярных линух–дистров. Очень хороший движок.

маленькая

маленькая модернизация, убрал
ifconfig /dev/net/rtl8139/0 10.0.0.3 255.255.255.0 up
sleep 1
route add /dev/net/rtl8139/0 default gw 10.0.0.1
sleep 1
route add /dev/net/rtl8139/0 239.0.0.0 netmask 255.0.0.0
sleep 1
ifconfig /dev/net/rtl8139/0 allmulti

в /boot/home/config/boot/UserBootscript — так удобнее.

Спасибо diger за помощь, удалось подцепить к обоим медиасерверам плеер телика Samsung UE32C6620. Впечатления от просмотра HD видео — словами не передать, полнейший восторг!

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Allowed HTML tags: <a> <em> <i> <img> <strong> <b> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Подробнее о форматировании

CAPTCHA
Введите перечисленные символы, чтобы мы убедились, что вы не робот. Не требуется для зарегистрированных пользователей.
T
X
i
x
e
N
Enter the code without spaces and pay attention to upper/lower case.