Modified version of video_editor (1.2.2)

Overview

video_editor


My other APIs


Features

  • Super flexible UI Design.
  • Support actions:
    • Crop
    • Trim
    • Scale
    • Rotate
    • Cover selection



Installation (More info on Flutter FFMPEG)

Android

Add on android/build.gradle file and define package name in ext.flutterFFmpegPackage variable.

ext.flutterFFmpegPackage = "min-gpl-lts"

iOS

(Flutter >= 2.x)

  • Edit ios/Podfile, add the following block before target 'Runner do and specify the package name in min-gpl-lts section:

    File.join(relative_symlink_dir, 'plugins', plugin_name, platform) else pod plugin_name, :path => File.join(relative_symlink_dir, 'plugins', plugin_name, platform) end end end end">
      # "fork" of method flutter_install_plugin_pods (in fluttertools podhelpers.rb) to get lts version of ffmpeg
      def flutter_install_plugin_pods(application_path = nil, relative_symlink_dir, platform)
        # defined_in_file is set by CocoaPods and is a Pathname to the Podfile.
        application_path ||= File.dirname(defined_in_file.realpath) if self.respond_to?(:defined_in_file)
        raise 'Could not find application path' unless application_path
    
        # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
        # referring to absolute paths on developers' machines.
    
        symlink_dir = File.expand_path(relative_symlink_dir, application_path)
        system('rm', '-rf', symlink_dir) # Avoid the complication of dependencies like FileUtils.
    
        symlink_plugins_dir = File.expand_path('plugins', symlink_dir)
        system('mkdir', '-p', symlink_plugins_dir)
    
        plugins_file = File.join(application_path, '..', '.flutter-plugins-dependencies')
        plugin_pods = flutter_parse_plugins_file(plugins_file, platform)
        plugin_pods.each do |plugin_hash|
          plugin_name = plugin_hash['name']
          plugin_path = plugin_hash['path']
          if (plugin_name && plugin_path)
            symlink = File.join(symlink_plugins_dir, plugin_name)
            File.symlink(plugin_path, symlink)
    
            if plugin_name == 'flutter_ffmpeg'
              pod 'flutter_ffmpeg/min-gpl-lts', :path => File.join(relative_symlink_dir, 'plugins', plugin_name, platform)
            else
              pod plugin_name, :path => File.join(relative_symlink_dir, 'plugins', plugin_name, platform)
            end
          end
        end
      end

(Flutter >= 1.20.x) && (Flutter < 2.x)

  • Edit ios/Podfile, add the following block before target 'Runner do and specify the package name in min-gpl-lts section:

    File.join('.symlinks', 'plugins', plugin_name, 'ios') else pod plugin_name, :path => File.join('.symlinks', 'plugins', plugin_name, 'ios') end end end end">
      # "fork" of method flutter_install_ios_plugin_pods (in fluttertools podhelpers.rb) to get lts version of ffmpeg
      def flutter_install_ios_plugin_pods(ios_application_path = nil)
       # defined_in_file is set by CocoaPods and is a Pathname to the Podfile.
        ios_application_path ||= File.dirname(defined_in_file.realpath) if self.respond_to?(:defined_in_file)
        raise 'Could not find iOS application path' unless ios_application_path
    
        # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
        # referring to absolute paths on developers' machines.
    
        symlink_dir = File.expand_path('.symlinks', ios_application_path)
        system('rm', '-rf', symlink_dir) # Avoid the complication of dependencies like FileUtils.
    
        symlink_plugins_dir = File.expand_path('plugins', symlink_dir)
        system('mkdir', '-p', symlink_plugins_dir)
    
        plugins_file = File.join(ios_application_path, '..', '.flutter-plugins-dependencies')
        plugin_pods = flutter_parse_plugins_file(plugins_file)
        plugin_pods.each do |plugin_hash|
          plugin_name = plugin_hash['name']
          plugin_path = plugin_hash['path']
    
          if (plugin_name && plugin_path)
              symlink = File.join(symlink_plugins_dir, plugin_name)
              File.symlink(plugin_path, symlink)
    
              if plugin_name == 'flutter_ffmpeg'
                  pod plugin_name + '/min-gpl-lts', :path => File.join('.symlinks', 'plugins', plugin_name, 'ios')
              else
                  pod plugin_name, :path => File.join('.symlinks', 'plugins', plugin_name, 'ios')
              end
          end
        end
      end
  • Ensure that flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) function is called within target 'Runner' do block. In that case, it is mandatory that the added function is named flutter_install_ios_plugin_pods and that you do not make an explicit call within that block.

(Flutter < 1.20.x)

  • Edit ios/Podfile file and modify the default # Plugin Pods block as follows. Do not forget to specify the package name in min-gpl-lts section.

      # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
      # referring to absolute paths on developers' machines.
      system('rm -rf .symlinks')
      system('mkdir -p .symlinks/plugins')
      plugin_pods = parse_KV_file('../.flutter-plugins')
      plugin_pods.each do |name, path|
          symlink = File.join('.symlinks', 'plugins', name)
          File.symlink(path, symlink)
          if name == 'flutter_ffmpeg'
              pod name+'/min-gpl-lts', :path => File.join(symlink, 'ios')
          else
              pod name, :path => File.join(symlink, 'ios')
          end
      end



Example (The UI Design is fully customizable on the example)


Crop Video Rotate Video

Trim Video Export Video
Trimmer if maxDuration < videoDuration Trim timeline
Video cover (selection, viewer) Export cover



Main Contributors


Le Goff Maël

You might also like...

'Efficacy' is a an Android app that keeps users updated on all events and happenings in and around the NITS campus. Note that the one in this repo is a slightly altered version of the original.

'Efficacy' is a an Android app that keeps users updated on all events and happenings in and around the NITS campus. Note that the one in this repo is a slightly altered version of the original.

Efficacy : The proposed Android app for all clubs, events and happenings at NIT Silchar Get the release APK Some interesting features of this app incl

Aug 29, 2021

Draw the Year - Mobile version

drawtheyear_mobile A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you start

May 28, 2022

Google IO Mobile Version (Fake)

Google IO Mobile Version (Fake)

fake_google_io Fake Google IO made with flutter (Not official!) Inspiration This application was made to enliven the Google I/O 2021 event which was h

May 20, 2021

A flutter app for a wordpress websites with clean and elegant design. This app is available in free and pro version. You can choose to use the one you need.

A flutter app for a wordpress websites with clean and elegant design. This app is available in free and pro version. You can choose to use the one you need.

📌 Get Flutter for Wordpress Flutter for wordpress is currently available in free and pro version: Flutter for Wordpress Flutter for Wordpress Pro Bea

Dec 13, 2022

Flutter E-commerce Bloc Arch Public Version

Flutter E-commerce Bloc Arch Public Version

Red-Tires-E-commerce-Flutter-app-BloC Red-Tires-E-commerce-Flutter-app-BloC Arch (Demo / Under Development) Red Tires| Flutter (Demo / Under Developme

Dec 20, 2022

Command-line tool to provide null-safety percentage info of a project. Track your migration progress on mixed-version programs that execute with unsound null safety.

null_safety_percentage Command-line tool to provide null-safety percentage info of a project. Track your migration progress on mixed-version programs

Mar 27, 2022

Flutter E-commerce Bloc Arch Public Version

Flutter E-commerce Bloc Arch Public Version

Mauve Flutter E-commerce Mauve E-commerce single vendor | Flutter BloC arch Tech Stack Client: Dart, Flutter Server: Firebase firestore Features, Tech

Jan 4, 2023

MPAndroidChart Flutter version

MPAndroidChart Flutter version

MPFlutterChart flutter charts just like MPAndroidChart The minimum version currently supported is 1.7.3. If you use flutter with lower version, checko

Dec 21, 2022

An online version of the popular game four in a row, written in Flutter + Dart on the client and Rust on the server side.

An online version of the popular game four in a row, written in Flutter + Dart on the client and Rust on the server side.

Four in a Row - App An online version of the popular game four in a row, written in Flutter + Dart on the client and Rust on the server side. Download

Jan 2, 2023

💡 a concept version of popular payment/fund-transfer 💸 app PayPal, built with Dart+Flutter

💡 a concept version of popular payment/fund-transfer 💸 app PayPal, built with Dart+Flutter

PayPal concept PayPal provides an easy and quick ⚡ way to send and request 📨 money 💵 online 🛰️ . You can transfer money 💸 (abroad 🌎 ) to family ?

Dec 24, 2022

A New Version Of Camera_camera Package For Flutter

A New Version Of Camera_camera Package For Flutter

Camera_Camera 2.0 important this is a new version of camera_camera package, I fixed in this version most of the camera bugs such as when the camera cr

Jul 19, 2022

Mini version of a shopping application

shop_app A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

Dec 8, 2021

Create a mini version of MathJax using Grunt

Smaller MathJax for offline use This repo is based on the Gruntfile here and the guidance here. It's a good idea to read those pages before using this

May 22, 2020

Access app version and git informations from auto-generated and configurable widgets

This is a proof of concept and WIP Feedback and ideas welcome !! Access your pubspec and git commit informations like versions and commit status from

Jul 7, 2021

A builder for extracting a package version into code

Include the version of your package in our source code. Add build_version to pubspec.yaml. Also make sure there is a version field. name: my_pkg versi

Dec 7, 2022

A Redux version tailored for Flutter, which is easy to learn, to use, to test, and has no boilerplate

A Redux version tailored for Flutter, which is easy to learn, to use, to test, and has no boilerplate

A Redux version tailored for Flutter, which is easy to learn, to use, to test, and has no boilerplate. Allows for both sync and async reducers.

Dec 13, 2022

A dart-lang version of the SIP UA stack.

dart-sip-ua A dart-lang version of the SIP UA stack, ported from JsSIP. Overview Use pure dart-lang SIP over WebSocket (use real SIP in your flutter m

Dec 26, 2022

Cupertino version of the Material Stepper in Flutter

Cupertino version of the Material Stepper in Flutter

Cupertino Stepper for Flutter Cupertino version of the stock Material Stepper in Flutter. NOTE: This is not the same as the UIStepper control on iOS.

Oct 13, 2022

Extract pubspec details (such as package version, author and description) into Dart code.

build_pubspec This package helps you convert fields from your pubspec.yaml file into Dart code. Based on the fields in your pubspec, this package will

Jul 15, 2021
Owner
null
Modified instagram Ui

myinstagram_clone A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you starte

AKINDOYIN 2 Dec 24, 2021
This is the standard Flutter template application, modified to run on desktop.

Desktop Flutter Example This is the standard Flutter template application, modified to run on desktop. The linux, macos, and windows directories serve

Sheikh Shofiullah 8 Sep 26, 2022
Flutter: Overriding Dependencies | Solving Version Conflicts | Solving Version Conflicts

flutterutils A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if

Pawan Kumar 51 Mar 2, 2022
Flutter Version Management: A simple CLI to manage Flutter SDK versions.

fvm Flutter Version Management: A simple cli to manage Flutter SDK versions. FVM helps with the need for a consistent app builds by allowing to refere

Leo Farias 3.2k Jan 8, 2023
Dart language version of Persian-Tools

Persian tools Persian Tools dart package which you can use in all platforms Features Adding ordinal suffixes Converting Persian words to number Conver

Persian Tools 54 Dec 29, 2022
The mobile version for the food dashboard tutorials

Flutter food_dashboard A serverless mobile application built with AWS and Flutter. Actually, it's just a sample application, show casing the speed at

rosius 13 Oct 18, 2022
This is the new version of my Task app "Tasko" which was done in Java. She is now in Flutter for the HotReload and the native Cross-Platform.

tasko_rem The Tasko App is now compatible on iOS, Android and others distribution, because it's made with Flutter ✨ You can now add task, check them o

Scythe 12 May 2, 2022
Android/multiplatform version of the Clew App.

Android/multiplatform version of the Clew App.

Lani 1 Dec 30, 2021