5 заметок с тегом

телевизор

Включаем Samsung Smart TV

Периодически, когда нечем заняться, продолжаю эксперименты с телевизором. В этот раз оказалось, что я был не прав насчет того, что он не отзывается на пакет Wake-On-Lan. Телевизор нормально включается, но с небольшой задержкой — около 10 секунд. Что интересно, в этот период он явно обменивается какой-то информацией с пультом управления. Насколько мне позволяет моя фантазия, этот обмен связан с тем, что пульт в период времени, когда телевизор не работает, тоже уходит в «спящий» режим, экономя энергию батареек. В «обычном» режиме ТВ включается с пульта, но тут идет пробуждение по сети, о чем телевизор и сообщает пульту. Вроде как в рекламе: «А мужики-то не знают!»

12 февраля   wake-on-lan   wol   включение   пакет   пробуждение   телевизор

Доступ к Samsung Smart TV

Проба пера

Когда мне становится скучно, в голову приходят самые разные мысли...
В этот раз в голове мелькнула мысль просканировать телевизор на открытые порты. Результат был положительным:

Starting Nmap 5.51 ( http://nmap.org ) at 2018-01-21 20:41 +07
Nmap scan report for 192.168.1.7
Host is up (0.0026s latency).
Not shown: 991 closed ports
PORT      STATE SERVICE
7676/tcp  open  imqbrokerd
8001/tcp  open  vcom-tunnel
8002/tcp  open  teradataordbms
8080/tcp  open  http-proxy
9999/tcp  open  abyss
32768/tcp open  filenet-tms
32769/tcp open  filenet-rpc
32770/tcp open  sometimes-rpc3
32771/tcp open  sometimes-rpc5

Nmap done: 1 IP address (1 host up) scanned in 0.25 seconds

Номера портов, по большей части не знакомы, но 8001, 8002, 8080 и 9999 наводят на определенные мысли. Пробуем получить информацию по ним...

$ curl -v http://192.168.1.7:7676
* Rebuilt URL to: http://192.168.1.7:7676/
*   Trying 192.168.1.7...
* TCP_NODELAY set
* Connected to 192.168.1.7 (192.168.1.7) port 7676 (#0)
> GET / HTTP/1.1
> Host: 192.168.1.7:7676
> User-Agent: curl/7.57.0-DEV
> Accept: */*
> 
* HTTP 1.0, assume close after body
< HTTP/1.0 400 Bad Request 
< CONTENT-TYPE: text/xml; charset="utf-8" 
< SERVER: UPnP/1.1 Samsung AllShare Server/1.0 
< CONTENT-LENGTH: 417 
< 
* Closing connection 0
<?xml version="1.0"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><s:Fault><faultcode>s:Client</faultcode><faultstring>UPnPError</faultstring><detail><UPnPError xmlns="urn:schemas-upnp-org:control-1-0"><errorCode>402</errorCode><errorDescription>Invalid Args</errorDescription></UPnPError></detail></s:Fault></s:Body></s:Envelope>

Пустые ответы приводить не буду, только те, по которым получен какой-либо результат. Проверяем порт 8001:

$ curl -v http://192.168.1.7:8001
* Rebuilt URL to: http://192.168.1.7:8001/
*   Trying 192.168.1.7...
* TCP_NODELAY set
* Connected to 192.168.1.7 (192.168.1.7) port 8001 (#0)
> GET / HTTP/1.1
> Host: 192.168.1.7:8001
> User-Agent: curl/7.57.0-DEV
> Accept: */*
> 
* HTTP 1.0, assume close after body
< HTTP/1.0 401 Unauthorized
< access-control-allow-origin: *
< content-length: 29
< 
* Closing connection 0
<html><body>401</body></html>

На очереди 8002:

$ curl -v https://192.168.1.7:8002
* Rebuilt URL to: https://192.168.1.7:8002/
*   Trying 192.168.1.7...
* TCP_NODELAY set
* Connected to 192.168.1.7 (192.168.1.7) port 8002 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /usr/share/ca-certificates/ca-bundle.crt
  CApath: none
* TLSv1.2 (OUT), TLS header, Certificate Status (22):
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS alert, Server hello (2):
* SSL certificate problem: self signed certificate in certificate chain
* stopped the pause stream!
* Closing connection 0
curl: (60) SSL certificate problem: self signed certificate in certificate chain
More details here: https://curl.haxx.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

Теперь очередь порта 8080:

$ curl -v http://192.168.1.7:8080
* Rebuilt URL to: http://192.168.1.7:8080/
*   Trying 192.168.1.7...
* TCP_NODELAY set
* Connected to 192.168.1.7 (192.168.1.7) port 8080 (#0)
> GET / HTTP/1.1
> Host: 192.168.1.7:8080
> User-Agent: curl/7.57.0-DEV
> Accept: */*
> 
< HTTP/1.1 404 Not Found
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Headers: Content-Type
< Content-Type: text/html
< Content-Length: 345
< Date: Sun, 21 Jan 2018 04:14:36 GMT
< Server: WebServer
< 
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
  <title>404 - Not Found</title>
 </head>
 <body>
  <h1>404 - Not Found</h1>
 </body>
</html>
* Connection #0 to host 192.168.1.7 left intact

Если использовать SSL, то ответ тоже не заставит себя ждать:

$ curl -v https://192.168.1.7:8080
* Rebuilt URL to: https://192.168.1.7:8080/
*   Trying 192.168.1.7...
* TCP_NODELAY set
* Connected to 192.168.1.7 (192.168.1.7) port 8080 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /usr/share/ca-certificates/ca-bundle.crt
  CApath: none
* TLSv1.2 (OUT), TLS header, Certificate Status (22):
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to 192.168.1.7:8080 
* stopped the pause stream!
* Closing connection 0
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to 192.168.1.7:8080

И, наконец, 9999:

$ curl -v https://192.168.1.7:9999
* Rebuilt URL to: https://192.168.1.7:9999/
*   Trying 192.168.1.7...
* TCP_NODELAY set
* Connected to 192.168.1.7 (192.168.1.7) port 9999 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /usr/share/ca-certificates/ca-bundle.crt
  CApath: none
* TLSv1.2 (OUT), TLS header, Certificate Status (22):
* TLSv1.2 (OUT), TLS handshake, Client hello (1):

* OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to 192.168.1.7:9999 
* stopped the pause stream!
* Closing connection 0
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to 192.168.1.7:9999

Судя по всему, на порту 7676 «висит» какой-то UPNP. Порты 8002 и 9999 обмениваются данными через SSL, 8080 похож на веб-сервер, а 8001 требует авторизацию.
Если открыть ТВ в браузере на порту 8002, то можно получить визуальные данные о сертификате. В принципе, самое интересное, что можно из него вычленить — срок действия в 20 лет и что сертификат является самоподписанным.
Порывшись в интернете, понял, что на эту тему достаточно мало материала. Впрочем, сначала нужно просмотреть SamsungSmartSDK, упомянутый в сертификате. Возможно, что там найдется какая-то дополнительная информация.
Кстати, теоретически, есть возможность включить ТВ с ипользованием технологии Wake-On-LAN. Стандартный способ, видимо, не проходит — по крайне мере на «magic packet» он не отозвался. Но пример кода, реализующего эту возможность, я встретил.

2018   порт   результат   сканирование   телевизор

Добавляем каналы для ТВ

Смотреть торренты научился. Но человеку же всегда мало того, что он уже имеет. И мне захотелось увеличить список доступных каналов, желательно в HD качестве. И просматривать подключенные камеры видеонаблюдения. Чем и занимаюсь последнее время когда есть желание и время.
С дополнительными каналами оказалось все как-то просто: установил пару пакетов udpxy и xupnpd на роутер. Первый пакет конвертирует udp трафик в http, второй позволяет открывать плейлисты m3u на телевизоре или любом другом устройстве. Например, на смартфоне или компьютере. Но, как обычно, не обошлось без ложки дегтя — достаточно неудобно переключать каналы на телевизоре. Хотелось бы, чтобы работало как с обычными — нажал кнопку «Канал+» и переключился на следующий. Сейчас же приходится нажимать на «Ввод», переходить на кнопку «Далее» и снова нажимать «Ввод». Возможно, что найду в списке доступных приложений какое-нибудь с более удобным переключением.
С видеокамерой не так все просто — на любую попытку подсунуть телевизору поток он отвечает, что не может его воспроизвести. Что я только не делал... Видеорегистратор отдает RTSP-поток через порт 554, причем нестандартного разрешения. При этом еще требуется указать логин и пароль, чтобы подключиться к потоку. На сервере установлена программа motion, которая у меня занимается рассылкой оповещений и фото, сделанных камерой во время обнаружения движения. Но, даже указав данные потока, которые она выдает в сеть, не получилось заставить ТВ отображать его — снова получил ошибку. Возможно, что после приведения разрешения к стандартному FullHD и смены кодека, и получится показать картинку с камеры на телевизоре. Но для этого нужно заставить сервер перекодировать сигнал, то есть создаем дополнительную нагрузку на сервер.

2018   iptv   видеонаблюдение   камера   канал   телевизор

DLNA в локальной сети

Меня не покидала мысль, что телевизор поддерживает DLNA, несмотря на то, что на официальном сайте это не указано. Зато было указано на нескольких других. Попытка не пытка...
Есть у меня переделанный роутер D-Link DIR-825 с установленной OpenWrt. Внутрь встроен жесткий диск, на котором располагается собственно система и множество других программ. В частности, клиент Transmission. Это очень удобно — с любого устройства можно поставить торрент на закачку. Плюс к этому он все равно работает круглые сутки, пусть скачивает :-)
Прочитав днем про настройку DLNA на OpenWrt, подключился к роутеру и  установил пакет luci-i18n-minidlna-en, который потянул за собой собственно сервер DLNA и другие необходимые пакеты. Настройка была минимальной: задал каталоги где искать видео- и аудиофайлы, куда писать логи и каталог с кэшем. Ну и, конечно, запустил его. Поначалу нагрузка на роутер сильно возросла: сервер «сожрал» почти 60% процессорного времени и почти половину оперативной памяти. Из всех других пакетов, которые я ставил, ни один столько не забирал себе. Понадеявшись на то, что это только на время поиска файлов, отключился, чтобы вечером заняться этим вопросом уже дома.
Мои надежды оправдались — после завершения поиска нагрузка стала почти нулевой. Но меня уже больше интересовало как телевизор отреагирует (и отреагирует ли вообще?) на наличие DLNA сервера в локальной сети. Но сомнения оказались напрасны — все оказалось намного проще. Телевизор не только обнаружил сервер в сети, но и сразу отобразил его в списках доступных источников. Немного напрягло только то, что приходится «продираться» через кучу каталогов, чтобы найти нужное видео, но тут уже ничего не поделаешь, видимо.
В конечном результате я достиг того, чего хотел — теперь нет необходимости копировать скачанный торрент на флэшку, подключать её к телевизору и только тогда начинать смотреть фильм. Сейчас можно просто открыть роутер на телевизоре, выбрать нужный фильм и начать просмотр. С учетом того, что я не поленился подключить ТВ кабелем к роутеру, «лагов» пока что не наблюдается, скорость приличная. Но тут еще буду экспериментировать.
Днем ранее, кстати, также удалось вывести содержимое экрана смартфона на телевизор, включив на первом режим беспроводного дисплея. Смартфон тут же просканировал и нашел телевизор. Оставалось только подтвердить сопряжение устройств на самом ТВ.

2018   dlna   openwrt   подключение   роутер   сервер   телевизор

Новый телевизор

Недавно закинул жене идею купить телевизор — образовалась у нее более-менее подходящая сумма на руках. Идея упала на благодатную почву, она тоже давно хотела новый. Через несколько дней идея полностью «проросла» и стала почти навязчивой мыслью :-) Еще несколько дней выбирали на сайтах модель, читали отзывы, смотрели обзоры. В пятницу она мне скидывает три ссылки, смотрю. Понравился второй вариант, который, по сравнению с первым, был немногим лучше. А третий был вообще никудышный. Итак, с моделью определились.
В субботу у тестя отмечали день рождения. Я до этого момента успел съездить в «Техномакс», купил жене чехол-книжку и стекло на телефон. Уже не один пострадал от падений на асфальт. Вернулся домой, поехали в гости. По пути решили заехать в магазин, посмотреть как телевизор показывает картинку. Ну-ну... В общем, сразу его и купили. В подарок достались всякие «плюшки» в виде бесплатной трехмесячной подписки на «Окко» (лень искать и набирать код «о умляут»), дисконтной карты магазина и прочих мелочей. По совету продавца также сразу взяли чехол для пульта. Для меня было неожиданно, что и для пультов есть чехлы. Пришлось вернуться домой, чтобы завезти телевизор — одному мне было было бы просто неудобно его тащить, несмотря на то, что он весит с коробкой килограмм 10 всего.

Вид спереди Вид сбоку

Вернувшись вечером из гостей, естественно, начали распаковывать его. Пока жена убирала с тумбы лишнее, я прилаживал к экрану подставку. Болты оказались длинными, немного посомневавшись, взял в руки шуруповерт. После установки начали смотреть, что он может и не может. Кофе варить, он, конечно, не умеет :-)
С пультом «с разбега» я не смог разобраться, больно уж он был непривычным

Пульт от телевизора

Не считая джойстика, у него всего 9 кнопок. Кнопки громкости и переключения каналов оказались трехпозиционными: можно наклонять их вверх и вниз, а также просто нажимать на них. Обнаружил, можно сказать случайно (мы же умные, зачем нам инструкция по использованию?) Несмотря на свою минималистичность, пульт оказался достаточно удобным при управлении телевизором. Из «минусов» могу указать только неудобство набора текста, но другие пульты тоже «страдают» отсутствием qwerty-клавиатуры :-) В будущем надо будет купить полноценную bluetooth-клавиатуру с мышкой.
После включения телевизор предложил сделать минимальные настройки, используя мастер настроек. Нашел 20 цифровых каналов, 3 радиоканала и 17 аналоговых. Цифровые и аналоговые частично друг друга дублируют, но убирать дубликаты не стал — сработала привычка системного администратора о резервных копиях :-) Интернет тоже был подключен сразу через кабель — раньше на этом месте стоял компьютер, так что не пришлось ничего протягивать заново.
Следующий день прошел в просмотре фильмов из каталога бесплатных подписок. В итоге пришли к выводу, что вчера нам не показалось и фильмы действительно смотрятся совсем по другому. Но в чем отличие так и не смогли сформулировать. Мне самым подходящим сравнением показалось, что как будто смотришь запись с видеокамеры. Жена так и не смогла определиться.
В перерывах всячески гонял телевизор в разных режимах. Еще при просмотре отзывов видел, что левая часть у этой модели ощутимо нагревается. В настройках включил один из режимов энергосбережения, который не влиял на яркость картинки — температура в левой части заметно понизилась. Пусть пока поработает так. Встроенный браузер, как ни странно, почти не тормозит. Небольшая задержка ощущается только при переключении каналов, но это дело привычки. С интернетом все тоже хорошо, ролики на ютубе даже в качестве 4к открываются быстро, при воспроизведении никаких притормаживаний нет. Впрочем, интернет у меня быстрый :-)
В общем и целом, покупкой остались довольны. Пока смотрели фильмы понял, что сильно не хватает объемного звучания и придется покупать еще и соответствующие колонки. Вот тут вылазит еще один «минус» телевизора: звук можно вывести только через оптический канал и, насколько я понял из инструкции, через HDMI-разъем.

2017   full hd   samsung   покупка   телевизор