All Projects → gabrielmagno → nano-dlna

gabrielmagno / nano-dlna

Licence: MIT license
A minimal UPnP/DLNA media streamer

Programming Languages

python
139335 projects - #7 most used programming language
javascript
184084 projects - #8 most used programming language
shell
77523 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to nano-dlna

AirConnect-Synology
Updated AirConnect packages for Synology NAS and Synology Router
Stars: ✭ 200 (+36.99%)
Mutual labels:  upnp, dlna
Jupii
Play audio, video and images on UPnP/DLNA devices
Stars: ✭ 27 (-81.51%)
Mutual labels:  upnp, dlna
go2tv
Cast media files to UPnP/DLNA Media Renderers and Smart TVs.
Stars: ✭ 99 (-32.19%)
Mutual labels:  upnp, dlna
dslrbrowser-ios
DSLR Browser iOS app to discover and connect to your Wi-Fi and DLNA enabled (Canon) camera
Stars: ✭ 17 (-88.36%)
Mutual labels:  upnp, dlna
Macast
Macast is a cross-platform application which using mpv as DLNA Media Renderer.
Stars: ✭ 3,786 (+2493.15%)
Mutual labels:  upnp, dlna
slingr
A simple CLI for UPnP media file streaming
Stars: ✭ 32 (-78.08%)
Mutual labels:  upnp, dlna
Airconnect
Use AirPlay to stream to UPnP/Sonos & Chromecast devices
Stars: ✭ 2,349 (+1508.9%)
Mutual labels:  upnp, dlna
Screen Recorder Ffmpeg Cpp
*Multimedia project* A screen recording application to capture your desktop and store in a video format. Click here to watch the demo
Stars: ✭ 98 (-32.88%)
Mutual labels:  multimedia
Xbmc
Kodi is an award-winning free and open source home theater/media center software and entertainment hub for digital media. With its beautiful interface and powerful skinning engine, it's available for Android, BSD, Linux, macOS, iOS and Windows.
Stars: ✭ 13,175 (+8923.97%)
Mutual labels:  multimedia
Rifi
This is the official repo for Wireless Multimedia controller App/Program.
Stars: ✭ 90 (-38.36%)
Mutual labels:  multimedia
Mt
yet another media thumber. Generate Video Contat Sheets easily. http://mutschler.github.io/mt
Stars: ✭ 76 (-47.95%)
Mutual labels:  multimedia
Video To Retail Platform
An intelligent multimodal-learning based system for video, product and ads analysis. Based on the system, people can build a lot of downstream applications such as product recommendation, video retrieval, etc.
Stars: ✭ 108 (-26.03%)
Mutual labels:  multimedia
Video Thumbnail Generator
📷 Generate thumbnail sprites from videos.
Stars: ✭ 190 (+30.14%)
Mutual labels:  multimedia
Thumbnail
Thumbnail for a given video using FFMpeg
Stars: ✭ 96 (-34.25%)
Mutual labels:  multimedia
Movian
An advanced media center
Stars: ✭ 235 (+60.96%)
Mutual labels:  multimedia
Gstreamer Rockchip
The Gstreamer hardware encoder/decoder plugins for Rockchip platform
Stars: ✭ 86 (-41.1%)
Mutual labels:  multimedia
Python Mpv
Python interface to the awesome mpv media player
Stars: ✭ 245 (+67.81%)
Mutual labels:  multimedia
Mpv
🎥 Command line video player
Stars: ✭ 17,018 (+11556.16%)
Mutual labels:  multimedia
Music Dance Video Synthesis
(ACM MM 20 Oral) PyTorch implementation of Self-supervised Dance Video Synthesis Conditioned on Music
Stars: ✭ 150 (+2.74%)
Mutual labels:  multimedia
Ffmpeg Video Player
An FFmpeg and SDL Tutorial.
Stars: ✭ 149 (+2.05%)
Mutual labels:  multimedia

nano-dlna

Build Status PyPI License

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).

🦀 Note: also checkout crab-dlna, a Rust implementation of nano-dlna.

Features

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

Usage

List

Scan compatible devices and list the available ones:

nanodlna list

If your device is not being listed, you might need to increase the search timeout:

nanodlna -t 20 list

Play

Play a video, automatically loading the subtitles if available, selecting a random device:

nanodlna play That.Movie.mkv

Play a video, specifying the device through query (scan devices before playing):

nanodlna play That.Movie.mkv -q "osmc"

Play a video, specifying the device through its exact location (no scan, faster):

nanodlna play That.Movie.mkv -d "http://192.168.1.13:1082/"

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
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].