搜索插件、代码仓与 APP 分类

插件详情v0.1.3

dlna_dart

纯 Dart 编写的简单 DLNA 客户端,在 Flutter 中运行良好,不到 500 行代码即可完成所有任务。

AndroidiOSmacOSWindowsLinux
近 30 天下载
1.6万
喜欢数
29
Pub 分数
140

安装插件

flutter pub add dlna_dart

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个轻量级的纯 Dart DLNA 客户端,专为 Flutter 应用设计。它可实现对智能电视、媒体播放器和音频系统等 DLNA 兼容设备的无缝发现与控制。代码少于 500 行,提供简单 API,可在多个平台上流式传输媒体、管理播放并交互 UPnP 服务。非常适合希望在多媒体应用中实现低开销和跨平台兼容性的开发者。

适合场景

  • 流媒体传输到智能电视
  • 控制DLNA设备上的媒体播放
  • 在Flutter应用中构建媒体投射功能
  • 集成UPnP设备发现
  • 创建家庭娱乐控制界面

主要特点

  • 纯 Dart 实现
  • 跨平台支持(Android、iOS、macOS、Windows、Linux)
  • 500 行代码以内
  • 用于设备发现和媒体控制的简单 API
  • 轻量且快速的集成

适合对象

  • Flutter 开发人员构建媒体应用
  • 需要最少DLNA功能的项目
  • 针对多个操作系统的应用
  • 希望拥有小型、可维护代码库的开发者

使用建议

  • 仅限基本的DLNA/UPnP功能
  • 无高级媒体转码
  • 依赖外部设备的兼容性
  • 可能需要调整网络配置

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

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

所属分类

依赖

依赖清单 1 项

  • xml>=6.5.0 <8.0.0

源码仓库

使用此插件的项目