Search packages, repositories and app categories

Package detailsv0.1.3

dlna_dart

simple dlna client in pure dart,works fine in flutter,do all the job less than 500 lines

AndroidiOSmacOSWindowsLinux
30-day downloads
15.8K
Likes
29
Pub points
140

Install package

flutter pub add dlna_dart

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

A lightweight, pure Dart DLNA client designed for Flutter applications. It enables seamless discovery and control of DLNA-compatible devices such as smart TVs, media players, and audio systems. With under 500 lines of code, it offers a simple API to stream media, manage playback, and interact with UPnP services across multiple platforms. Ideal for developers seeking minimal overhead and cross-platform compatibility in multimedia apps.

Use cases

  • Streaming media to smart TVs
  • Controlling media playback on DLNA devices
  • Building media casting features in Flutter apps
  • Integrating UPnP device discovery
  • Creating home entertainment control interfaces

Key features

  • Pure Dart implementation
  • Cross-platform support (Android, iOS, macOS, Windows, Linux)
  • Under 500 lines of code
  • Simple API for device discovery and media control
  • Lightweight and fast integration

Suitable for

  • Flutter developers building media apps
  • Projects requiring minimal DLNA functionality
  • Apps targeting multiple operating systems
  • Developers wanting a small, maintainable codebase

Considerations

  • Limited to basic DLNA/UPnP features
  • No advanced media transcoding
  • Depends on external device compatibility
  • May require network configuration adjustments

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

dlna_dart

simple dlna client

Getting Started

import 'dart:async';
import 'package:dlna_dart/dlna.dart';

main(List<String> args) async {
  final searcher = DLNAManager();
  final m = await searcher.start();
  m.devices.stream.listen((deviceList) {
    deviceList.forEach((key, value) async {
      print(key);
      if (value.info.friendlyName.contains('Wireless')) return;
      print(value.info.friendlyName);
      print(value.activeTime);
      print('\r\n');
      // final text = await value.position();
      // final r = await value.seekByCurrent(text, 10);
      // print(r);
    });
  });

  // close the server,the closed server can be start by call searcher.start()
  Timer(Duration(seconds: 30), () {
    searcher.stop();
    print('server closed');
  });

  // if you new DLNAManager() many times , you must use start(reusePort:true)
}


python version

https://github.com/suconghou/dlna-python

app example

https://github.com/suconghou/u2flutter

Categories

Dependencies

Dependency list 1 items

  • xml>=6.5.0 <8.0.0

Source repository

Projects using this package