Simple plugin to cast media to FireStick and FireTv.
Utilises Amazon's Fling SDK.
NOTE: This plugin currently fling/cast from Android Devices. iOS support soon.
flutter_fling: ^2.0.2import 'package:flutter_fling/flutter_fling.dart';FlutterFling.startPlayerDiscovery((status, player) {
if (_flingDevices == null) _flingDevices = List();
if (status == PlayerDiscoveryStatus.FOUND)
_flingDevices.add(player);
else
_flingDevices.remove(player);
});- Note: set
callbackasnullto remove listener. You should clean up callback to prevent from leaking references.
FlutterFling.play((state, condition, position) {
_mediaState = '$state';
_mediaCondition = '$condition';
_mediaPosition = '$position';
},
player: _selectedPlayer,
mediaUri: "media_link_here",
mediaTitle: "Some Video",
)- Note: set
callbackasnullto remove listener. You should clean up callback to prevent from leaking references.
await FlutterFling.pausePlayer();await FlutterFling.playPlayer();await FlutterFling.stopPlayer();await FlutterFling.seekForwardPlayer();await FlutterFling.seekBackPlayer();await FlutterFling.seekToPlayer(position: 30000)await FlutterFling.mutePlayer(bool);Note: This result in loss of control over playing media though playback itself isn't stopped. Required for cleanup.
await FlutterFling.stopDiscoveryController();enum PlayerDiscoveryStatus { Found, Lost }
enum MediaState { NoSource, PreparingMedia, ReadyToPlay, Playing, Paused, Seeking, Finished, Error }
enum MediaCondition { Good, WarningContent, WarningBandwidth, ErrorContent, ErrorChannel, ErrorUnknown }