dlna 0.0.2 dlna: ^0.0.2 copied to clipboard
A simple DLNA DMC library implemented by Dart.
DLNA-Dart #
A simple DLNA DMC library implemented by Dart.
It is tiny and only the most basic network video casting function is supported.
Structure #
Example #
Android Manifest.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
pub
https://pub.dev/packages/dlna
Import
import 'package:simple_dlna/dlna.dart';
Start search
var dlnaManager = DLNAManager();
dlnaManager.setRefresher(DeviceRefresher(onDeviceAdd: (dlnaDevice) {
print('add ' + dlnaDevice.toString());
}, onDeviceRemove: (dlnaDevice) {
print('remove ' + dlnaDevice.toString());
}, onDeviceUpdate: (dlnaDevice) {
print('update ' + dlnaDevice.toString());
}, onSearchError: (error) {
print(error);
}));
dlnaManager.startSearch();
Stop search
dlnaManager.stopSearch();
Send the video url to the device
var didlObject = VideoObject(title, url, VideoObject.VIDEO_MP4);
await widget.dlnaManager.actSetVideoUrl(_didlObject);
Release server
dlnaManager.release();
Search Cache function
For the quick search, when the device is found, it is saved locally.
dlnaManager.enableCache();
var localDevices = dlnaManager.getLocalDevices();