English | Russian

xupnpd2 - Digital TV on PlayStation 4 and Xbox One




Please support my crowdfunding campaign at indiegogo.com:
http://www.indiegogo.com/projects/xupnpd2-digital-tv-on-playstation-4-and-xbox-one


Old site here: http://xupnpd.org/xupnpd_en.html

Short Summary

My name is Anton, I'm 35. I have an experience in programming C++ since 1996. I’m an author and developer of the following open source projects: tsdemuxer, ps3muxer, pshare and luasp.

Since 2011, I have been developing an extendable DLNA media server for home routers with multicast IPTV support. The program is distributed by GPL2 license in the original scripts and is included in the official repository of OpenWRT.

Project page: http://xupnpd.org/xupnpd_en.html

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

With a hope to make the world a better place, using the accumulated knowledge and taking into consideration the current needs of my program users, for several months I have been developing a next-generation home media server - xupnpd2.

Xupnpd2 is a complete cross-platform media server with the ability to broadcast multicast IPTV into local network, as well as video, photos and music from the home archive to any a DLNA-compatible device.

Key features:

1. The online TV and video playback on the game consoles PlayStation 3, PlayStation 4, Xbox One, SmartTV and other different devices.

2. Multiple platforms support: Microsoft Windows 7/8/10, Mac OS X 10.5.8 or higher (Intel / PPC), different installation packages of GNU Linux, FreeBSD, NetBSD, OpenBSD, embedded systems based on OpenWRT and DD-WRT.

3. Low system requirements. Software code is written entirely in C++, and there is almost no dependence on the external libraries. This, in turn, led to a record small size of the program with high functionality, performance, and portability.

4. Intuitively understandable user interface. At this time there is no need to search answers on the Internet since the new version will have an intuitively-understandable, user-friendly interface, and the preparation for the work will take only few minutes. The user doesn’t need to have any special computer skills, all the user needs to do is to relax and enjoy watching favorite television programs in the original quality.


What is already available

At this stage, there is already a working version for Microsoft Windows, GNU Linux, FreeBSD and OpenWRT with online streaming, and it has the functionality of a full-rate media server that supports Lua scripts and the extensions.

I carried on the testing of Windows, Linux and OpenWRT versions on: the LG TV, PlayStation 3, PlayStation 4, Xbox One, media player Iconbit, Windows Media Player and VLC.

The process of implementing in Mac OS X is in progress.

At this point the software package for GNU Linux takes only 270K, for Microsoft Windows - 1.5M, and for OpenWRT - 300K.


The next planned stage is the implementation of the support for OMDB for skins downloading and video titles from home collection, multicast support, HLS, possibly BitTorrent, SoundCloud, and so on. There will be a possibility for FTP access to the collection and user-friendly Web-based interface with a minimal set of settings for a device control, the possibility to watch video in browser with a help of HTML5 tools on the compatible devices, including the Nintendo Wii U. There will be Android and iOS apps to control the watching process, and also the media -server version for Mac OS X. In the future prospect, we want to achieve compatibility with the Chromecast and Apple TV. And this is not the limit, the structure of the program allows to extend easily its functionality and to add new sources of media content, and I have a lot more ideas.

People all over the world, especially not in very prosperous regions, want to have access to the information.

The purpose of this project is to give people the ability to watch movies and TV in high quality using network and with no additional cost, using the equipment they already have. Thanks to xupnpd2 they don’t have to buy a satellite dish and set-top boxes (Set-Top Box), they are free to choose any provider the will pay to for the access to the content or not to pay at all, limiting themselves with the free network broadcasts.

Help to make the world better!


A little bit more about myself and my plans

I am fond of programming from the early childhood. I began to study architecture of ZX Spectrum and programming for it on Basic. I know such programming languages as: C / C++, Lua, Assembler, Pascal and Java. I have programming experience in C++ since 1996. Professionally I have been developing software since 2001. From about 2003 I’m working with network technologies and participating in the software development for highly loaded distributed systems controlled by GNU Linux and FreeBSD.

The first open source project started in 2009 as a program for personal use, but I felt sorry for hiding the results of the work from the world and I decided to share them for free.

The current project is xupnpd. I have been working on it alone since 2011 to the present. It is a home media server with support for multicast IPTV, and the system of extensions in Lua language, that is included into official repository of the operating system for OpenWRT routers.

My program works on most routers, NAS-es, directly on some SmartTV, the DreamBox satellite receivers, computers running under GNU Linux and FreeBSD, and even on the Raspberry PI.

It is compatible with many UPnP / DLNA-compatible devices, such as: SmartTV of different manufacturers, PlayStation 3/4, Xbox One, smartphones, Microsoft Windows Media Player and VideoLAN.

With the help of xupnpd it is possible to playback directly from your TV or high-definition IPTV game console of your ISP without turning on your computer or any other content providers on the nework.

If you wish you could watch your own video from home archive or through the use of system extensions you could turn to online resources such as YouTube, Vimeo, GameTrailers, Giant Bomb, IVI and Vkontakte.

With a help of xupnpd it became possible to discard the lease or purchase of set-top box in order to watch digital TV at home. The program is written in C++ and the Lua, it takes up little space, and it is able to work on many Posix systems.

Taking into consideration the current trends, I have decided to review the functionality and get rid of the old code. I also designed xupnpd2 on the basis of the mandatory requirements of its native version on Microsoft Windows 7/8/10 (without Cygwin), Mac OS X 10.5.8 or higher (Intel / PPC) , different GNU Linux packages, FreeBSD and NetBSD and possibly OpenBSD. The embedded systems won’t be neglected based on OpenWRT and DD-WRT.

In order to improve the performance, almost all of the program core code was written in C++, the ability to write custom Lua-scripts was retained, SQLite support appeared and the possibility to build extensions (filters) in the chain for multistep conversion of online video was added. Due to these facts the optional transcoding or another stream modification in real time can appear in future, and for example, the organization of the home surveillance video system can appear as well.

Now xupnpd2 is a complete cross-platform media server with the ability to broadcast to the local network without transcoding video, photos and music from your home archive to any DLNA-compatible device.

At this time, many players’ features were taken into account and now it supports: rewind, pause, move to any moment and resume watching on SmartTV, gaming consoles, PlayStation 3, PlayStation 4 and Xbox One.

The user manual will appear in different languages, as well as the FAQ on the program website. Advanced users, as before, will be able to create their own extensions to tune the behavior of the program when broadcasting the digital television to the home network.

There is a record small size of the program with its high functionality, portability, absence of the need for the program mandatory installation on the computer's hard drive as well as the absence of a mandatory subscription for investors for the program usage.

After xupnpd2 release it will retain the possibility of basic functions free use with some restrictions but unlike its predecessor it will stop being an open source project and it will become proprietary software.


Previous projects

luasp (2011) is Web programming language with support of MySQL, CURL and JSON on Lua-based for embedded systems. It was created for personal needs, with the following publication of original scripts under the BSD license.

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

pshare (2010) is the first attempt to develop a miniature DLNA compatible media server for personal use, which allowed me to watch the Extreme Sports Channel in high quality on the Sony PlayStation 3 without having to turn on the computer. Later I published the original program codes and provided the community with ready binaries for several models of home WiFi router running under OpenWRT or DD-WRT. The program was notable for minimal consumption of resources and worked without any problems on weak D-Link DIR-320.

The program became a prototype for more functional open source xupnpd product creation. Distributed by GPL2 license.

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

PS3muxer (2010 - 2011 gg.) is a free program for MS Windows, Mac OS X and GNU Linux with a lot of downloads. The program quickly convert MKV video to fit the Sony PlayStation 3 watching format without loss of quality, taking into account the original features. Also it is very useful if your player or TV set does not know about the MKV container or DTS sound. License GPL2.

Website: http://ps3muxer.org

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

tsdemuxer (2009) is my first open source project for MS Windows and GNU Linux. The main purpose of this tool is a quick video conversion from AVCHD camcorders to MKV without losing quality. MIT License.

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


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