mvimg 1.3.0 copy "mvimg: ^1.3.0" to clipboard
mvimg: ^1.3.0 copied to clipboard

A library to split mvimg(android motion video) file.

mvimg #

A library for handle mvimg.

The file type used in some android device. It like livephoto in iphone.

The file is composed of two files, jpg and mp4.

Usually, the jpg name is MVIMG_XXXXX.jpg. Or, the name is xxxx.MP.jpg.

For information about their differences, please refer here, or view the xap file in assets.

Usage #

Add dependency #

dependencies:
  mvimg: ^1.0.0

Code #

For pure dart

The mvimg package is pure dart, so you can use it in flutter or other dart project.

See the example for more details.

import 'dart:io';

import 'package:buff/buff_io.dart';
import 'package:mvimg/mvimg.dart';

void main() {
  final mvimg = Mvimg(FileBufferInput.fromPath('assets/test.jpg'));
  mvimg.decode();
  try {
    if (!mvimg.isMvimg()) {
      print('not mvimg');
      return;
    }

    final img = mvimg.getImageBytes();
    final video = mvimg.getVideoBytes();

    final videoOutputPath = 'assets/split/output.mp4';
    final imgOutputPath = 'assets/split/output.jpg';

    final videoFile = File(videoOutputPath);
    final imgFile = File(imgOutputPath);

    videoFile.createSync(recursive: true);
    imgFile.createSync(recursive: true);

    videoFile.writeAsBytesSync(video);
    imgFile.writeAsBytesSync(img);
  } finally {
    mvimg.dispose();
  }
}

For flutter

You can see the flutter example to learn how to use it in flutter.

The main.dart of flutter.

License #

Apache License 2.0

1
likes
150
points
169
downloads

Publisher

verified publisherfluttercandies.com

Weekly Downloads

A library to split mvimg(android motion video) file.

Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (license)

Dependencies

buff, collection, xml

More

Packages that depend on mvimg