truvideo_video_sdk 1.0.1 copy "truvideo_video_sdk: ^1.0.1" to clipboard
truvideo_video_sdk: ^1.0.1 copied to clipboard

Provides video editing features like trimming, rotation, concatenation, and merging, allowing users to modify videos within the app

example/lib/main.dart

import 'dart:io';

import 'package:flutter/material.dart';
import 'dart:async';

import 'package:flutter/services.dart';
import 'package:path_provider/path_provider.dart';
import 'package:truvideo_video_sdk/truvideo_video_sdk.dart';
import 'package:truvideo_video_sdk_example/video_list_screen.dart';

final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();

void main() {
  WidgetsFlutterBinding.ensureInitialized(); // Ensure binding is initialized
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({super.key});

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  String _platformVersion = 'Unknown';
  String? outputPath;

  @override
  void initState() {
    super.initState();
    initializeAsync();
  }

  Future<void> initializeAsync() async {
    await initPlatformState();
    final Directory appDir = await getApplicationDocumentsDirectory();
    outputPath = appDir.path;
  }

  Future<void> initPlatformState() async {
    String platformVersion;
    try {
      platformVersion = await TruvideoVideoSdk.getPlatformVersion() ??
          'Unknown platform version';
    } on PlatformException {
      platformVersion = 'Failed to get platform version.';
    }

    if (!mounted) return;

    setState(() {
      _platformVersion = platformVersion;
    });
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      navigatorKey: navigatorKey,
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Truvideo Sample App'),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              Text('Running on: $_platformVersion\n'),
              ElevatedButton(
                onPressed: () async {
                  if (mounted) {
                    navigatorKey.currentState?.push(
                      MaterialPageRoute(
                        builder: (context) =>
                            VideoListScreen(directoryPath: outputPath ?? ''),
                      ),
                    );
                  }
                },
                child: const Text('Video'),
              ),
            ],
          ),
        ),
      ),
    );
  }
}
0
likes
150
points
51
downloads

Publisher

verified publishertruvideo.com

Weekly Downloads

Provides video editing features like trimming, rotation, concatenation, and merging, allowing users to modify videos within the app

Homepage

Documentation

API reference

License

MIT (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on truvideo_video_sdk

Packages that implement truvideo_video_sdk