Skip to content

A minimal UPnP/DLNA media streamer

License

Notifications You must be signed in to change notification settings

mitnk/nano-dlna

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nano-dlna

A minimal UPnP/DLNA media streamer.

nano-dlna is a command line tool that allows you to play a local video file in your TV (or any other DLNA compatible device).

Usage

nanodlna play That.Movie.1989.1080p.BluRay.x264.HuE.mkv

Features

  • Searching available DLNA devices in the local network
  • Streaming audio
  • Streaming video, with subtitle support

Installation

nano-dlna can be installed as a regular python module by running:

$ [sudo] pip install nanodlna

Technical Details

nano-dlna is basically a one-file DLNA MediaServer and a self DLNA MediaController.

How does list work?

  1. Issue an SSDP M-Search broadcast message in the network
  2. Capture the responses and register the devices
  3. Filter only devices that provide UPnP's AVTransport service

How does play work?

  1. Setup an HTTP server to provide the media files to be streamed (including subtitles)
  2. Send a SetAVTransportURI message to the device, specifying the HTTP URLs of the media files
  3. Send a Play message to the device

TODO

  • Documentation
  • CLI interface to send controller actions (play, pause, stop, etc) to the MediaRenderer
  • CLI progress bar visualization
  • Playlist

About

A minimal UPnP/DLNA media streamer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 90.8%
  • JavaScript 7.6%
  • Shell 1.1%
  • Dockerfile 0.5%