byteark_player_flutter 1.0.10
byteark_player_flutter: ^1.0.10 copied to clipboard
ByteArkPlayerFlutter is a Flutter plugin for the ByteArk Player, designed to enable seamless video playback and advanced player management within your Flutter applications.
example/lib/main.dart
import 'package:byteark_player_flutter/data/byteark_player_license_key.dart';
import 'package:byteark_player_flutter/data/byteark_player_subtitle_size.dart';
import 'package:byteark_player_flutter/domain/method_channel/byteark_player_controller.dart';
import 'package:byteark_player_flutter_example/demo/player_subtitle_size_screen.dart';
import 'package:flutter/material.dart';
import 'package:byteark_player_flutter/data/byteark_player_config.dart';
import 'package:byteark_player_flutter/data/byteark_player_item.dart';
import 'package:byteark_player_flutter/presentation/byteark_player.dart';
void main() {
runApp(PlayerSubtitleSizeScreen());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
late ByteArkPlayerController _controller;
@override
void initState() {
// Initialize the ByteArkPlayerController.
_controller = ByteArkPlayerController();
super.initState();
}
@override
void dispose() {
// Dispose of the ByteArkPlayerController to free resources.
_controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
// Step 1: Set ByteArkPlayerItem.
var playerItem = ByteArkPlayerItem(
url:
"https://byteark-playertzxedwv.stream-playlist.byteark.com/streams/TZyZheqEJUwC/playlist.m3u8");
// Step 2: Set ByteArkPlayerConfig.
var playerConfig = ByteArkPlayerConfig(
licenseKey:
ByteArkPlayerLicenseKey(android: "ANDROID_KEY", iOS: "iOS_KEY"),
playerItem: playerItem,
secureSurface: true,
subtitleSize: ByteArkPlayerSubtitleSize.medium,
subtitleBackgroundEnabled: true,
);
return MaterialApp(
title: 'ByteArk Player Demo',
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
useMaterial3: true,
),
home: Scaffold(
appBar: AppBar(
title: const Text('ByteArk Player Demo'),
centerTitle: true,
),
body: Column(
children: [
// Step 3: Embed ByteArk Player widget.
AspectRatio(
aspectRatio: 16 / 9,
child: ByteArkPlayer(
playerConfig: playerConfig,
height: 300,
),
),
],
),
),
);
}
}