dlna-dmr 0.1.2

A dummy DLNA Digital Media Renderer
Documentation

dlna-dmr

GitHub License GitHub Workflow Status GitHub Release GitHub Downloads (all assets, all releases) Crates.io Version Crates.io Total Downloads docs.rs

A dummy DLNA Digital Media Renderer.

📥 Installation

Using binstall

cargo binstall dlna-dmr

Downloading from Releases

Navigate to the Releases page and download respective binary for your platform. Make sure to give it execute permissions.

Compiling from Source

cargo install dlna-dmr

📖 Usage

To run the DMR, simply execute the following command in your terminal:

$ dlna-dmr
[2025-05-30T14:49:48Z INFO  dlna_dmr] DMR started
[2025-05-30T14:49:48Z INFO  dlna_dmr::ssdp] SSDP server running on 172.31.117.144:1900
[2025-05-30T14:49:48Z INFO  dlna_dmr::http] HTTP server listening on 172.31.117.144:8080
[2025-05-30T14:50:11Z INFO  dlna_dmr::http] RenderingControl::SetMute channel: Master, desired_mute: false
[2025-05-30T14:50:38Z INFO  dlna_dmr::http] AVTransport::SetAvTransportUri current_uri: http://example.com/sample.mp4?param1=a&param2=b
^C
[2025-05-30T14:50:46Z INFO  dlna_dmr::http] HTTP server stopped
[2025-05-30T14:50:46Z INFO  dlna_dmr::ssdp] SSDP server stopped
[2025-05-30T14:50:46Z INFO  dlna_dmr] DMR stopped

To configure, simply pass in a path to a configuration file:

dlna-dmr path/to/config.toml

For more information on configuration options, see the DMROptions struct in lib.rs.

✅ TODO

  • Actual XML parsing
  • Config file
  • "Heartbeat" - send periodic alive messages to the network
  • Command line arguments parsing
  • Testing HTTP server via TestRequest

🎉 Credits

TODO