English | Russian

xupnpd2 - Цифровое ТВ на PlayStation 4, Xbox One и других устройствах без дополнительного оборудования.




Коротко о себе и проекте

Я являюсь автором и разработчиком следующих open source проектов: tsdemuxer, ps3muxer, pshare и luasp.

С 2011 года разрабатываю расширяемый DLNA медиа-сервер для домашних маршрутизаторов с поддержкой multicast IPTV. Программа распространяется по лицензии GPL2 в исходных текстах и входит официальный репозиторий OpenWRT.

GitHub: https://github.com/clark15b/xupnpd2

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

Xupnpd2 является полноценным кросс платформенным медиа-сервером с возможностью трансляции в локальную сеть IPTV и OTT, а так же: видео, фото и музыки из домашнего архива на любое DLNA-совместимое устройство.

Основные возможности:

1. Воспроизведения online ТВ и видео на игровых консолях PlayStation 3, PlayStation 4, Xbox One, SmartTV и других устройствах.

2. Поддержка множества платформ: Microsoft Windows 7/8/10, Mac OS X 10.5.8 и выше, различные дистрибутивы GNU Linux, FreeBSD, NetBSD, OpenBSD, встраиваемые системы на базе OpenWRT и DD-WRT.

3. Низкие системные требования. Теперь код ядра программы полностью написан на С++, а зависимостей от сторонних библиотек почти нет. Это позволило добиться рекордно малого размера программы при высокой функциональности, производительности и переносимости.

4. Интуитивно-понятный пользовательский интерфейс. На этот раз не придется искать ответы в Интернете т.к. новая версия будет обладать интуитивно-понятным, дружественным интерфейсом, а подготовка к работе займет всего нескольких минут. От пользователя не потребуется особых навыков обращения с компьютером, все что нужно — расслабиться и наслаждаться просмотром любимых телевизионных передач в качестве оригинала.


Что уже есть

На текущем этапе уже существует рабочая версия для Microsoft Windows, GNU Linux, FreeBSD и OpenWRT c возможностью online стриминга и имеющая функциональность полноценного медиа-сервера, поддерживающая Lua скрипты, расширения и HLS.

xupnpd2-x86_64-gcc_5_4_0-static.tar.gz (2017-08-26)
xupnpd2-embed.tar.gz (2018-07-20)

Тестирование Windows, Linux и OpenWRT версий проводилось мной на: телевизоре LG, PlayStation 3, PlayStation 4, Xbox One, медиа-плеере Iconbit, Windows Media Player и VLC.

Идет процесс портирования под Mac OS X.

На данный момент сборка для GNU Linux занимает всего 270K, для Microsoft Windows - 1.5M, а для OpenWRT — 300K (со всеми ресурсами занимает всего 444k на устройстве).


Следующим этапом планируется внедрение поддержки OMDB для загрузки обложек и названий видео из домашней коллекции, SoundCloud и тому подобного. Появится возможность FTP доступа к коллекции и удобный Web-интерфейс с минимальным набором настроек для управления устройством, просмотр видео в браузере средствами HTML5 на совместимых устройствах, в том числе Nintendo Wii U. Появятся Android и iOS приложения для управления просмотром, а так же версия медиа-сервера для Mac OS X. В перспективе очень хочется добиться совместимости с Chromecast и Apple TV. И это не предел, архитектура программы позволяет легко расширять ее функциональность и добавлять новые источники медиа-контента, а идей у меня много.

Люди во всем мире, особенно не в самых благополучных регионах, хотят иметь доступ к информации.

Цель проекта — дать людям возможность смотреть кино и телевидение по Сети в высоком качестве и без дополнительных затрат, используя то оборудование, которое у них уже есть. Благодаря xupnpd2 они не обязаны покупать спутниковые тарелки и ТВ-приставки (Set-Top Box), они вольны выбирать какому поставщику платить деньги за получаемый контент или не платить их вовсе, ограничиваясь свободными трансляциями в сети.

Пожертвования: www.paypal.me/clark15b

Подробнее о себе и моих планах

Увлекаюсь программированием с раннего детства. Начинал с изучения архитектуры ZX Spectrum и программирования для него на Basic. Владею языками программирования: C/C++, Lua, Assembler, Pascal и Java. Опыт программирования на C++ с 1996 года. Профессионально занимаюсь разработкой программного обеспечения с 2001. Примерно с 2003-го занимаюсь сетевыми технологиями и участвую в разработке ПО для высоко нагруженных распределенных систем под управлением GNU Linux и FreeBSD.

Первый open source проект начался в 2009г как программа для личного использования, но мне стало жалко прятать от мира результаты трудов и я решил ими безвозмездно поделиться.

Текущий проект - xupnpd. Им я занимаюсь один с 2011 г. по настоящее время. Это домашний медиа-сервер с поддержкой multicast IPTV и системой расширений на языке Lua, входящий в официальный репозиторий операционной системы для маршрутизаторов OpenWRT.

Моя программа работает на большинстве маршрутизаторов, NAS-ах, непосредственно на некоторых SmartTV, спутниковых ресиверах DreamBox, компьютерах под управлением GNU Linux и FreeBSD и даже на Raspberry PI.

Она совместима с большим количеством UPnP/DLNA-совместимых устройств, таких как: SmartTV различных производителей, PlayStation 3/4, Xbox One, смартфонами, Microsoft Windows Media Player и VideoLAN.

С помощью xupnpd возможно без включения компьютера просматревать непосредственно на телевизоре или игровой консоли IPTV высокого разрешения своего ISP или иных поставщиков контента в Сети.

При желании возможно просматривать собственное видео из домашнего архива либо за счет применения системы расширений обратиться к online ресурсам: YouTube, Vimeo, GameTrailers, Giant Bomb, IVI и Vkontakte.

Благодаря xupnpd стало возможным отказаться от аренды или покупки ТВ-приставки для просмотра цифрового телевидения дома. Программа написана на C++ и Lua, занимает мало места, способна работать на многих Posix системах.

Учитывая современные тенденции я решил пересмотреть функциональность и избавиться от старого кода, а так же спроектировал xupnpd2 исходя из обязательного требования нативного исполнения на Microsoft Windows 7/8/10 (без Cygwin), Mac OS X 10.5.8 и выше (Intel/PPC), различных дистрибутивах GNU Linux, FreeBSD и возможно NetBSD и OpenBSD. Не останутся без внимания и встраиваемые системы на базе OpenWRT и DD-WRT.

Для повышения производительности почти весь код ядра программы переписан на С++, сохранена возможность написания пользовательских Lua-скриптов, появилась поддержка SQLite и добавлена возможность выстраивания расширений (фильтров) в цепочку для многоступенчатого преобразования online видео. За счет этого в будущем возможно появление опционального транскодинга или другой модификации потока в реальном времени, и, например, организации системы домашнего видео-наблюдения.

Теперь xupnpd2 является полноценным кросс платформенным медиа-сервером с возможностью трансляции в локальную сеть без транскодирования: видео, фото и музыки из домашнего архива на любое DLNA-совместимое устройство.

На этот раз учтены многие особенности плееров и поддерживается: перемотка, пауза, переход к произвольному моменту и возобновление просмотра на SmartTV, игровых консолях PlayStation 3, PlayStation 4 и Xbox One.

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

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

После релиза xupnpd2 сохранит возможность бесплатного использования базовых функций с ограничениями но в отличие от предшественника перестанет быть open source проектом и станет проприетарным ПО.


Предыдущие проекты

luasp (2011) язык Web программирования с поддержкой MySQL, CURL и JSON на основе Lua для встраиваемых систем. Создавалось для собственных нужд с последующей публикацией исходных текстов по лицензии BSD.

GitHub: https://github.com/clark15b/luasp

pshare (2010) первая попытка разработки миниатюрного DLNA совместимого медиа-сервера для личного использования, которая позволила мне просматривать Extreme Sports Channel в высоком качестве на Sony PlayStation 3 без необходимости включения компьютера. Позже опубликовал исходные тексты программы и предоставил сообществу готовые бинарные сборки для нескольких моделей домашних WiFi маршрутизаторов под управлением OpenWRT или DD-WRT. Программа отличалась минимальным потреблением ресурсов устройства и без проблем работала на слабом D-Link DIR-320. Программа стала прототипом при создании более функционального open source продукта xupnpd. Распространяется по лицензии GPL2.

GitHub: https://github.com/clark15b/pshare

PS3muxer (2010 - 2011 gg.) бесплатная программа для MS Windows, Mac OS X и GNU Linux с большим количеством загрузок. Программа очень быстро преобразует MKV видео в пригодный для просмотра на Sony PlayStation 3 формат без потери качества с учетом особенностей оригинала. Так же она весьма полезна если ваш плеер или телевизор не знает про контейнер MKV или DTS звук. Лицензия GPL2.

Website: http://xupnpd.org/ps3muxer

GitHub: https://github.com/clark15b/ps3muxer

tsdemuxer (2009) мой первый open source проект для MS Windows и GNU Linux. Основное назначение утилиты — быстрое преобразование видео с AVCHD видеокамер в MKV без потери качества. Лицензия MIT.

GitHub: https://github.com/clark15b/tsdemuxer


Copyright (C) 2014-2021 Anton Burdinuk
clark15b@gmail.com