Giter Club home page Giter Club logo

dart_vlc's Introduction

Flutter audio / video playback, broadcast & recording library for Windows & Linux.


Sponsored with ๐Ÿ’– by
Stream Chat

Rapidly ship in-app messaging with Stream's highly reliable chat infrastructure and feature-rich SDKs, including Flutter!


Installation

pub.dev

dependencies:
  ...
  dart_vlc: ^0.1.9

GitHub

dependencies:
  dart_vlc:
    git:
      url: https://github.com/alexmercerind/dart_vlc.git
      ref: master

dependency_overrides:
  dart_vlc_ffi:
    git:
      url: https://github.com/alexmercerind/dart_vlc.git
      ref: master
      path: ffi

Feel free to open a new issue or discussion, if you found a bug or need assistance.

Documentation

Checkout Setup section to configure plugin on your platform.

Initialize the library.

void main() {
  DartVLC.initialize();
  runApp(MyApp());
}

Create a new player instance.

final player = Player(id: 69420);

For passing VLC CLI arguments, use commandlineArguments argument.

final player = Player(
  id: 69420,
  commandlineArguments: ['--no-video'],
);

Create a media for playback.

final file = Media.file(File('C:/music.mp3'));
final asset = Media.asset('assets/audio/example.mp3');
final network = Media.network('https://www.example.com/music.aac');

// Clip [Media] playback duration.
final media2 = Media.network(
  'https://www.example.com/music.aac',
  startTime: Duration(seconds: 20),
  stopTime: Duration(seconds: 60),
);

Create a list of medias using playlist.

final playlist = Playlist(
  medias: [
    Media.file(File('C:/music.mp3')),
    Media.file(File('C:/audio.mp3')),
    Media.asset('assets/audio/example.mp3'),
    Media.network('https://www.example.com/music.aac'),
  ],
);

Open a media or playlist into a player.

player.open(
  Media.file(File('C:/music0.mp3')),
  autoStart: true, // default
);
player.open(
  Playlist(
    medias: [
      Media.file(File('C:/music0.mp3')),
      Media.file(File('C:/music1.mp3')),
      Media.file(File('C:/music2.mp3')),
    ],
  ),
  autoStart: false,
);

Control playback.

player.play();

player.seek(Duration(seconds: 30));

player.pause();

player.playOrPause();

player.stop();

Controls the playlist.

player.next();

player.previous();

player.jumpToIndex(10);

Manipulate an already playing playlist.

player.add(
  Media.file(File('C:/music0.mp3')),
);

player.remove(4);

player.insert(
  2,
  Media.file(File('C:/music0.mp3')),
);

player.move(0, 4);

Set playback volume & rate.

player.setVolume(0.5);

player.setRate(1.25);

Get & change playback device.

List<Device> devices = Devices.all;

player.setDevice(devices[0]);

Save the video screenshot

player.takeSnapshot(file, 1920, 1080);

Show the video inside widget tree.

Show Video in the Widget tree.

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Video(
        player: player,
        height: 1920.0,
        width: 1080.0,
        scale: 1.0, // default
        showControls: false, // default
      ),
    );
  }
}

By default, Video widget's frame size will adapt to the currently playing video. To override this & define custom video frame size, pass videoDimensions argument while instanciating Player class as follows.

Player player = Player(
  id: 69420,
  videoDimensions: const VideoDimensions(640, 360),
);

Change user agent.

player.setUserAgent(userAgent);

Retrieve metadata of media.

Media media = Media.network(
  'https://www.example.com/media.mp3',
  parse: true,
  timeout: Duration(seconds: 10),
);

Map<String, String> metas = media.metas;

Listen to playback events.

(Same can be retrieved directly from Player instance without having to rely on stream).

Listen to currently loaded media & playlist index changes.

player.currentStream.listen((CurrentState state) {
  state.index;
  state.media;
  state.medias;
  state.isPlaylist;
});

Listen to playback position & media duration.

player.positionStream.listen((PositionState state) {
  state.position;
  state.duration;
});

Listen to playback states.

player.playbackStream.listen((PlaybackState state) {
  state.isPlaying;
  state.isSeekable;
  state.isCompleted;
});

Listen to volume & rate of the Player.

player.generalStream.listen((GeneralState state) {
  state.volume;
  state.rate;
});

Listen to dimensions of currently playing Video.

player.videoDimensionsStream.listen((VideoDimensions video) {
  video.width;
  video.height;
});

Listen to buffering progress of the playing Media.

player.bufferingProgressStream.listen(
  (double event) {
    this.setState(() {
      this.bufferingProgress = event;
    });
  },
);

Set an equalizer.

Create using preset.

Equalizer equalizer = Equalizer.createMode(EqualizerMode.party);
player.setEqualizer(equalizer);

Create custom equalizer.

Equalizer equalizer = Equalizer.createEmpty();
equalizer.setPreAmp(10.0);
equalizer.setBandAmp(31.25, -10.0);
equalizer.setBandAmp(100.0, -10.0);
player.setEqualizer(equalizer);

Get equalizer state.

equalizer.preAmp;
equalizer.bandAmps;

Broadcast a media.

Broadcasting to localhost.

final broadcast = Broadcast.create(
  id: 0,
  media: Media.file(File('C:/video.mp4')),
  configuration: BroadcastConfiguration(
    access: 'http',
    mux: 'mpeg1',
    dst: '127.0.0.1:8080',
    vcodec: 'mp1v',
    vb: 1024,
    acodec: 'mpga',
    ab: 128,
  ),
);
broadcast.start();

Dispose the Broadcast instance to release resources.

broadcast.dispose();

Record a media.

final record = Record.create(
  id: 205,
  media: Media.network('https://www.example.com/streaming-media.MP3'),
  pathFile: '/home/alexmercerind/recording.MP3',
);
record.start();

Setup

Windows

Everything is already set up.

Linux

For using this plugin on Linux, you must have VLC & libVLC installed.

On Ubuntu/Debian:

sudo apt-get install vlc
sudo apt-get install libvlc-dev

On Fedora:

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install vlc
sudo dnf install vlc-devel

Support

Consider sponsoring this project. Maintenance of open-source software & libraries is severely under-paid or not paid at all.

Writing C++ & native code is a very tedious process.

Acknowledgements

  • BIG thanks to @jnschulze for his awesome contributions to this project & to the Flutter engine itself like adding texture support & adding macOS support here. I have learnt a lot about modern C++ & good-practices when writing code from you, thanks a lot for your guidances, reviews, work & donation. I'm really really thankful to you.

  • BIG thanks to @DomingoMG for adding Record and Chromecast classes. Also, thanks a lot for donation to the project & giving me motivation to start building this. I would've never attempted this if you didn't motivate me. And now that it started, dart_vlc has grown a lot.

  • Thanks to @tomassasovsky for adding visual controls to Video widget.

  • Thanks to following members of libVLC community (irrespective of the order) for giving general ideas about libVLC APIs:

  • Finally, thanks to the VideoLAN team for creating libVLC & libVLC++. Really great guys really great at their work.

Contributions

The code in the project is nicely arranged and follows the clean architecture.

Contributions to the project are open, it will be appreciated if you discuss the bug-fix/feature-addition in the issues first.

License

Copyright (C) 2021, Hitesh Kumar Saini [email protected].

This library & work under this repository is licensed under GNU Lesser General Public License v2.1.

Vision

There aren't any media (audio or video) playback libraries for Flutter or Dart on Windows/Linux yet. So, this project is all about that. As one might be already aware, VLC is one of the best media playback tools out there.

So, now you can use it to play audio or video files from Flutter or Dart apps.

As the project has grown, awesome people from community have added support for iOS & macOS aswell.

Example

You can see an example project here.

dart_vlc running on Ubuntu Linux.

Features

Done

  • Media playback from File.
  • Media playback from network.
  • Media playback from assets.
  • play/pause/playOrPause/stop.
  • Multiple Player instances.
  • Playlist.
  • next/back/jump for playlists.
  • setVolume.
  • setRate.
  • seek.
  • Event streams.
  • add/insert/remove/move Media inside Playlist during playback with no interruption.
  • Device enumeration & changing.
  • Retrieving metadata/tags of a Media.
  • Embedding Video inside the Flutter window (using texture or natively).
  • Supporting live streaming links.
  • Broadcast class for broadcasting Media.
  • Record class for recording Media.
  • Chromecast class.
  • Equalizer configuration & presets.
  • Changing user agent.
  • Changing Video's frame size according to video.
  • Saving screenshot of the video.
  • Changing/retrieving audio track.
  • Media clipping.
  • Support for Windows, Linux or macOS.

Under progress or planned features (irrespective of order)...

  • Bringing project on Android and iOS.
  • Removing libVLC++ dependency.
  • Subtitle control.

dart_vlc's People

Contributors

abdelaziz-mahdy avatar alexmercerind avatar ashutosh2014 avatar boyan01 avatar dkubrakov avatar domingomg avatar exts avatar gaelthas avatar groovinchip avatar hansihe avatar jnschulze avatar jonafeucht avatar krjw-eyev avatar lukepighetti avatar mfkl avatar paradoxu avatar sitaryo avatar stonega avatar t1ooo avatar tomassasovsky avatar tomassasovskylinari avatar xmarmalade avatar yukunxia avatar zanderso avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dart_vlc's Issues

autoStart: false working in .0.0.6 and not .0.0.7

await desktopPlayer!.open(new Playlist(medias: medias, playlistMode: PlaylistMode.loop), autoStart: false);
false is not honored when testing on windows 10 on .0.0.7, something got changed from .0.0.6

Subtitle Control

It would be really helpful to have a way to control which subtitles to use, adjust it's delay and size.

Question about the implementation principle

I looked at the source code and found that you decoded the video with vlc, then passed data through the platform channel, and finally rendered through RawImage. Am I right? Will there be a performance problem? Is there any better way?

Exception thrown when video is closed with controls using a Navigator.pop

Exception caught by widgets library =======================================================
The following assertion was thrown while finalizing the widget tree:
ControlState#3a02e(ticker active) was disposed with an active Ticker.

ControlState created a Ticker via its SingleTickerProviderStateMixin, but at the time dispose() was called on the mixin, that Ticker was still active. The Ticker must be disposed before calling super.dispose().

Tickers used by AnimationControllers should be disposed by calling dispose() on the AnimationController itself. Otherwise, the ticker will leak.

The offending ticker was: Ticker(created by ControlState#3a02e(lifecycle state: created))
The stack trace when the Ticker was actually created was:
#0 new Ticker. (package:flutter/src/scheduler/ticker.dart:67:40)
#1 new Ticker (package:flutter/src/scheduler/ticker.dart:69:6)
#2 SingleTickerProviderStateMixin.createTicker (package:flutter/src/widgets/ticker_provider.dart:129:15)
#3 new AnimationController (package:flutter/src/animation/animation_controller.dart:247:21)
#4 ControlState.initState (package:dart_vlc/src/widgets/controls.dart:60:36)
#5 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4711:57)
#6 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4548:5)
... Normal element mounting (81 frames)
#87 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3611:14)
#88 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6221:36)
#89 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6232:32)
... Normal element mounting (28 frames)
#117 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3611:14)
#118 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6221:36)
#119 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6232:32)
... Normal element mounting (238 frames)
#357 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3611:14)
#358 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6221:36)
#359 Element.updateChild (package:flutter/src/widgets/framework.dart:3363:18)
#360 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:5654:32)
#361 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6243:17)
#362 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#363 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4599:16)
#364 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4746:11)
#365 Element.rebuild (package:flutter/src/widgets/framework.dart:4267:5)
#366 StatefulElement.update (package:flutter/src/widgets/framework.dart:4778:5)
#367 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#368 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4599:16)
#369 Element.rebuild (package:flutter/src/widgets/framework.dart:4267:5)
#370 ProxyElement.update (package:flutter/src/widgets/framework.dart:4922:5)
#371 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#372 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4599:16)
#373 Element.rebuild (package:flutter/src/widgets/framework.dart:4267:5)
#374 ProxyElement.update (package:flutter/src/widgets/framework.dart:4922:5)
#375 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:181:11)
#376 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#377 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6090:14)
#378 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#379 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4599:16)
#380 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4746:11)
#381 Element.rebuild (package:flutter/src/widgets/framework.dart:4267:5)
#382 StatefulElement.update (package:flutter/src/widgets/framework.dart:4778:5)
#383 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#384 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6090:14)
#385 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#386 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6090:14)
#387 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#388 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4599:16)
#389 Element.rebuild (package:flutter/src/widgets/framework.dart:4267:5)
#390 ProxyElement.update (package:flutter/src/widgets/framework.dart:4922:5)
#391 Element.updateChild (package:flutter/src/widgets/framework.dart:3350:15)
#392 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4599:16)
#393 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4746:11)
#394 Element.rebuild (package:flutter/src/widgets/framework.dart:4267:5)
#395 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2582:33)
#396 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:875:21)
#397 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:328:5)
#398 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1144:15)
#399 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1082:9)
#400 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:998:5)
#404 _invoke (dart:ui/hooks.dart:163:10)
#405 PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:259:5)
#406 _drawFrame (dart:ui/hooks.dart:126:31)
(elided 3 frames from dart:async)

When the exception was thrown, this was the stack:
#0 SingleTickerProviderStateMixin.dispose. (package:flutter/src/widgets/ticker_provider.dart:142:7)
#1 SingleTickerProviderStateMixin.dispose (package:flutter/src/widgets/ticker_provider.dart:156:6)
#2 StatefulElement.unmount (package:flutter/src/widgets/framework.dart:4800:11)
#3 _InactiveElements._unmount (package:flutter/src/widgets/framework.dart:1847:13)
#4 _InactiveElements._unmount. (package:flutter/src/widgets/framework.dart:1845:7)
...

[ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 4188 pos 12: '_lifecycleState != _ElementLifecycle.defunct': is not true.
#0 _AssertionError._doThrowNew (dart:core-patch/errors_patch.dart:46:39)
#1 _AssertionError._throwNew (dart:core-patch/errors_patch.dart:36:5)
#2 Element.markNeedsBuild (package:flutter/src/widgets/framework.dart:4188:12)
#3 State.setState (package:flutter/src/widgets/framework.dart:1108:15)
#4 ControlState._startHideTimer. (package:dart_vlc/src/widgets/controls.dart:330:7)
#5 _rootRun (dart:async/zone.dart:1346:47)
#6 _CustomZone.run (dart:async/zone.dart:1258:19)
#7 _CustomZone.runGuarded (dart:async/zone.dart:1162:7)

Version .0.0.6 fails on windows

Fails on 0.0.6, .0.0.5 works fine:

Building Windows application...
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: The command "setlocal [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: cd C:\flutter\musicplayer\windows\flutter\ephemeral.plugin_symlinks\dart_vlc\windows\bin [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: C: [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E tar xzf "C:/flutter/musicplayer/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/vlc-3.0.9.2.7z" [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E tar xzf "C:/flutter/musicplayer/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/libvlcpp.zip" [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/flutter/musicplayer/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/vlc-3.0.9.2/sdk/include/vlc C:/flutter/musicplayer/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/include/vlc [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/flutter/musicplayer/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/libvlcpp-master/vlcpp C:/flutter/musicplayer/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/include/vlcpp [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :cmEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :cmErrorLevel [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: exit /b %1 [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :cmDone [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :VCEnd" exited with code 1. [C:\flutter\musicplayer\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]

Loop media

Hi,

first of thanks for the awesome package!

So, my problem is that I'm trying to loop a playlist.
I've tried playlistMode, but when i add playlistMode: PlaylistMode.loop it gives me Undefined name 'PlaylistMode'.

Would be great if you could look into it or have a solution.

Play playlist at index

How do we change playlist song when a user clicks on a song?
audioassets has:

audioPlayer!.playlistPlayAtIndex(indexofList);
wondering if there is one or not, or we forced to use next and back to try and get to right one?

Linux: Failed to Build (Undefined reference to fcntl64@GLIBC_2.28

Hi I am trying to use this plugin and have struggled to get it to compile using Ubuntu 20.04. I believe I have all the proper dependencies installed for vlc, and after trying may solutions I am still stuck. I am hoping you may be able to find the problems I am having. Below is my full log. Thank you.

:~/Desktop/new_menu$ flutter run -d "Linux" --verbose
[ +57 ms] executing: [/home/daniel/snap/flutter/common/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[ +48 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[ ] 1d9032c7e1d867f071f2277eb1673e8f9b0274e3
[ ] executing: [/home/daniel/snap/flutter/common/flutter/] git tag --points-at 1d9032c7e1d867f071f2277eb1673e8f9b0274e3
[ +15 ms] Exit code 0 from: git tag --points-at 1d9032c7e1d867f071f2277eb1673e8f9b0274e3
[ ] 2.0.6
[ +67 ms] executing: [/home/daniel/snap/flutter/common/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[ +12 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[ ] origin/stable
[ ] executing: [/home/daniel/snap/flutter/common/flutter/] git ls-remote --get-url origin
[ +7 ms] Exit code 0 from: git ls-remote --get-url origin
[ ] https://github.com/flutter/flutter.git
[ +92 ms] executing: [/home/daniel/snap/flutter/common/flutter/] git rev-parse --abbrev-ref HEAD
[ +22 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[ +3 ms] stable
[ +167 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[ +19 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[ +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[ +10 ms] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[ +146 ms] executing: /home/daniel/Android/Sdk/platform-tools/adb devices -l
[ +30 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[ +1 ms] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[ +2 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[ +109 ms] executing: /home/daniel/Android/Sdk/platform-tools/adb devices -l
[ +22 ms] Skipping pub get: version match.
[ +52 ms] Found plugin audioplayers at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/audioplayers-0.18.3/
[ +33 ms] Found plugin dart_vlc at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/dart_vlc-0.0.7/
[ +22 ms] Found plugin path_provider at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.2/
[ +2 ms] Found plugin path_provider_linux at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.0.0/
[ +2 ms] Found plugin path_provider_macos at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.0/
[ +3 ms] Found plugin path_provider_windows at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.1/
[ +193 ms] Found plugin audioplayers at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/audioplayers-0.18.3/
[ +17 ms] Found plugin dart_vlc at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/dart_vlc-0.0.7/
[ +18 ms] Found plugin path_provider at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.2/
[ +4 ms] Found plugin path_provider_linux at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.0.0/
[ +2 ms] Found plugin path_provider_macos at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.0/
[ +8 ms] Found plugin path_provider_windows at /home/daniel/snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.1/
[ +52 ms] Generating /home/daniel/Desktop/new_menu/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[ +257 ms] Initializing file store
[ +32 ms] Skipping target: gen_localizations
[ +5 ms] complete
[ +9 ms] Launching lib/main.dart on Linux in debug mode...
[ +12 ms] /home/daniel/snap/flutter/common/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev
/home/daniel/snap/flutter/common/flutter/bin/cache/artifacts/engine/linux-x64/frontend_server.dart.snapshot --sdk-root
/home/daniel/snap/flutter/common/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --incremental --target=flutter --debugger-module-names --experimental-emit-debug-metadata
--output-dill /tmp/flutter_tools.WCMKHI/flutter_tool.HXQZQZ/app.dill --packages /home/daniel/Desktop/new_menu/.dart_tool/package_config.json -Ddart.vm.profile=false -Ddart.vm.product=false
--enable-asserts --track-widget-creation --filesystem-scheme org-dartlang-root --initialize-from-dill build/cache.dill.track.dill
[ +86 ms] Building Linux application...
[ +94 ms] <- compile package:new_menu/main.dart
[ +27 ms] executing: [build/linux/debug/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug /home/daniel/Desktop/new_menu/linux
[ +59 ms] List of devices attached
[ +14 ms] List of devices attached
[ +391 ms] -- Configuring done
[ +8 ms] -- Generating done
[ ] -- Build files have been written to: /home/daniel/Desktop/new_menu/build/linux/debug
[ +6 ms] executing: ninja -C build/linux/debug install
[ +54 ms] ninja: Entering directory build/linux/debug' [ +688 ms] [1/8] Running utility command for LIBVLC_EXTRACT [+10103 ms] [2/8] Generating /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/libflutter_linux_gtk.so, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_value.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/fl_view.h, /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ [ +11 ms] [ +273 ms] executing: [/home/daniel/snap/flutter/common/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H [ +2 ms] [ +194 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H [ ] [ ] 1d9032c7e1d867f071f2277eb1673e8f9b0274e3 [ +2 ms] [ ] executing: [/home/daniel/snap/flutter/common/flutter/] git tag --points-at 1d9032c7e1d867f071f2277eb1673e8f9b0274e3 [ ] [ +33 ms] Exit code 0 from: git tag --points-at 1d9032c7e1d867f071f2277eb1673e8f9b0274e3 [ ] [ ] 2.0.6 [ ] [ +138 ms] executing: [/home/daniel/snap/flutter/common/flutter/] git rev-parse --abbrev-ref --symbolic @{u} [ ] [ +18 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u} [ ] [ ] origin/stable [ ] [ ] executing: [/home/daniel/snap/flutter/common/flutter/] git ls-remote --get-url origin [ ] [ +15 ms] Exit code 0 from: git ls-remote --get-url origin [ +7 ms] [ ] https://github.com/flutter/flutter.git [ +2 ms] [ +176 ms] executing: [/home/daniel/snap/flutter/common/flutter/] git rev-parse --abbrev-ref HEAD [ +2 ms] [ +19 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD [ ] [ ] stable [ ] [ +265 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. [ ] [ +6 ms] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. [ ] [ +8 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. [ ] [ +1 ms] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. [ +4 ms] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. [ ] [ +212 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. [ ] [ +7 ms] Artifact Instance of 'GradleWrapper' is not required, skipping update. [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. [ +3 ms] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. [ ] [ +6 ms] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. [ ] [ +390 ms] Initializing file store [ ] [ +32 ms] Done initializing file store [ ] [ +77 ms] Skipping target: gen_localizations [ ] [+3294 ms] Skipping target: unpack_linux [ ] [+1168 ms] Skipping target: kernel_snapshot [ +5 ms] [ +653 ms] Skipping target: debug_bundle_linux_assets [ +4 ms] [ +1 ms] Persisting file store [ ] [ +26 ms] Done persisting file store [ ] [ +29 ms] build succeeded. [ ] [ +14 ms] "flutter assemble" took 6,061ms. [ ] [ +243 ms] ensureAnalyticsSent: 233ms [ ] [ +1 ms] Running shutdown hooks [ ] [ ] Shutdown hooks complete [ ] [ ] exiting with code 0 [+1231 ms] [3/6] Building CXX object CMakeFiles/new_menu.dir/flutter/generated_plugin_registrant.cc.o [ +119 ms] [4/6] Building CXX object CMakeFiles/new_menu.dir/my_application.cc.o [ +361 ms] [5/6] Linking CXX executable intermediates_do_not_run/new_menu [ +7 ms] FAILED: intermediates_do_not_run/new_menu [ +12 ms] : && /snap/flutter/current/usr/bin/clang++ -g -L/snap/flutter/current/usr/lib/gcc/x86_64-linux-gnu/8 -L/snap/flutter/current/usr/lib/x86_64-linux-gnu -lblkid -lgcrypt -llzma -lpthread -L/snap/flutter/current/usr/lib/ -L/snap/flutter/current/usr/lib/gcc/x86_64-linux-gnu/8 -L/snap/flutter/current/usr/lib/x86_64-linux-gnu -lblkid -lgcrypt -llzma -lpthread -L/snap/flutter/current/usr/lib/ CMakeFiles/new_menu.dir/main.cc.o CMakeFiles/new_menu.dir/my_application.cc.o CMakeFiles/new_menu.dir/flutter/generated_plugin_registrant.cc.o -o intermediates_do_not_run/new_menu -Wl,-rpath,/home/daniel/Desktop/new_menu/build/linux/debug/plugins/dart_vlc:/home/daniel/Desktop/new_menu/linux/flutter/ephemeral: plugins/dart_vlc/libdart_vlc_plugin.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libgtk-3.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libgdk-3.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libpango-1.0.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libatk-1.0.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libcairo-gobject.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libcairo.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so /home/daniel/Desktop/new_menu/linux/flutter/ephemeral/libflutter_linux_gtk.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libgio-2.0.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libgobject-2.0.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libglib-2.0.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/libblkid.so /snap/flutter/current/usr/lib/x86_64-linux-gnu/liblzma.so && : [ +16 ms] //lib/x86_64-linux-gnu/libvlccore.so.9: undefined reference to fcntl64@GLIBC_2.28'
[ ] clang: error: linker command failed with exit code 1 (use -v to see invocation)
[ +8 ms] ninja: build stopped: subcommand failed.
[ +81 ms] Building Linux application... (completed in 13.3s)
[+4903 ms] Exception: Build process failed
[ +6 ms] "flutter run" took 19,482ms.
[ +3 ms]
#0 throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
#1 RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:644:9)

#2 FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:1157:12)

#3 FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:1009:27)

#4 AppContext.run. (package:flutter_tools/src/base/context.dart:150:19)

#5 AppContext.run (package:flutter_tools/src/base/context.dart:149:12)

#6 CommandRunner.runCommand (package:args/command_runner.dart:197:13)

#7 FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:278:9)

#8 AppContext.run. (package:flutter_tools/src/base/context.dart:150:19)

#9 AppContext.run (package:flutter_tools/src/base/context.dart:149:12)

#10 FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:234:5)

#11 run.. (package:flutter_tools/runner.dart:64:9)

#12 run. (package:flutter_tools/runner.dart:62:12)

#13 AppContext.run. (package:flutter_tools/src/base/context.dart:150:19)

#14 AppContext.run (package:flutter_tools/src/base/context.dart:149:12)

#15 runInContext (package:flutter_tools/src/context_runner.dart:73:10)

#16 main (package:flutter_tools/executable.dart:90:3)

[ +106 ms] ensureAnalyticsSent: 96ms
[ ] Running shutdown hooks
[ ] Shutdown hook priority 4
[ +5 ms] Shutdown hooks complete
[ ] exiting with code 1

nowPlaying meta data on network stream not loaded

I've just started experimenting with this library and I like the interface a lot so far.

One thing that prevents me from integrating dart_vlc in my own project though, is that not all metadata seems to be loaded on certain streams. The content of the field "nowPlaying" is missing on the stream http://stream-uk1.radioparadise.com/aac-128.

Minimal example to reproduce the problem:

var player = new Player(id: 0);
Media radioParadise = await Media.network(
  'http://stream-uk1.radioparadise.com/aac-128',
  parse: true,
  timeout: new Duration(seconds: 10),
);

player.open(new Playlist(medias: [radioParadise]));
print(radioParadise.metas['title']);
print(radioParadise.metas['nowPlaying']);
print(radioParadise.metas);

In this example the field 'title' is filled, 'nowPlaying' is empty though. This specific station does not fill its meta data correctly. Artist and title information is only visible in the field 'nowPlaying', which is why I need access to the contents of this field.

I've played around with the timeout duration, but that does not seem to change the behaviour.

Vlc itself reads the 'nowPlaying' tag correctly, so I'm guessing it's a problem with dart_vlc and not vlc itself. To verify that vlc really is reading the tag, just run cvlc -I rc --aout=pulse http://stream-uk1.radioparadise.com/aac-128 in a terminal and type 'info' in vlc's console after the streams has started playing. The output of vlc looks like this:

cvlc -I rc --aout=pulse http://stream-uk1.radioparadise.com/aac-128

VLC media player 3.0.12 Vetinari (revision 3.0.12-1-0-gd147bb5e7e)
[000055f5c72e3180] [cli] lua interface: Listening on host "*console".
VLC media player 3.0.12 Vetinari
Command Line Interface initialized. Type `help' for help.
> [00007fe11000a900] mpeg4audio demux packetizer: AAC channels: 2 samplerate: 44100
info
+----[ Meta data ]
|
| genre: Eclectic
| filename: aac-128
| title: Radio Paradise (128k aac)
| now_playing: U2 - Sunday Bloody Sunday
|
+----[ Stream 0 ]
|
| Bits per sample: 32
| Codec: MPEG AAC Audio (mp4a)
| Sample rate: 44100 Hz
| Channels: Stereo
| Type: Audio
|
+----[ end of stream info ]

Additional information: I've only tried dart_vlc in Linux.

slider.dart: Failed assertion: line 165 pos 15: 'value >= min && value <= max': is not true

โ•โ•โ•ก EXCEPTION CAUGHT BY WIDGETS LIBRARY โ•žโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
The following assertion was thrown building DartVLC(dirty, state: _DartVLCState#9fd40):
'package:flutter/src/material/slider.dart': Failed assertion: line 165 pos 15: 'value >= min &&
value <= max': is not true.

The relevant error-causing widget was:
  DartVLC file:///C:/tmp/dart_vlc/example/lib/main.dart:7:10

When the exception was thrown, this was the stack:
#2      new Slider (package:flutter/src/material/slider.dart:165:15)
#3      _DartVLCState.build (package:dart_vlc_example/main.dart:294:31)
#4      StatefulElement.build (package:flutter/src/widgets/framework.dart:4713:27)
#5      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4596:15)
#6      StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4769:11)
#7      Element.rebuild (package:flutter/src/widgets/framework.dart:4286:5)
#8      BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2583:33)
#9      WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:878:21)
#10     RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:334:5)
#11     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1147:15)
#12     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1084:9)
#13     SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1000:5)
#17     _invoke (dart:ui/hooks.dart:163:10)
#18     PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:259:5)
#19     _drawFrame (dart:ui/hooks.dart:126:31)
(elided 5 frames from class _AssertionError and dart:async)

'filesystem' file not found

Start the error๏ผš

linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/../dartvlc/internal/../mediasource/media.hpp:13:10: fatal error: 'filesystem' file not found

System info:
Distributor ID: Ubuntu
Description: Ubuntu 16.04.6 LTS
Release: 16.04
Codename: xenial

setState() called after dispose()

Apart from the error on the issue #41 I'm getting this:

[ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: setState() called after dispose(): _ControlState#72d94(lifecycle state: defunct, not mounted)
This error happens if you call setState() on a State object for a widget that no longer appears in the widget tree (e.g., whose parent widget no longer includes the widget in its build). This error can occur when code calls setState() from a timer or an animation callback.
The preferred solution is to cancel the timer or stop listening to the animation in the dispose() callback. Another solution is to check the "mounted" property of this object before calling setState() to ensure the object is still in the tree.
This error might indicate a memory leak if setState() is being called because another object is retaining a reference to this State object after it has been removed from the tree. To avoid memory leaks, consider breaking the reference to this object during dispose().
#0      State.setState.<anonymous closure>
package:flutter/โ€ฆ/widgets/framework.dart:1052
#1      State.setState
package:flutter/โ€ฆ/widgets/framework.dart:1087
#2      _ControlState._startHideTimer.<anonymous closure>
package:dart_vlc/โ€ฆ/widgets/controls.dart:308
#3      _rootRun (dart:async/zone.dart:1420:47)
#4      _CustomZone.run (dart:async/zone.dart:1328:19)
#5      _CustomZone.runGuarded (dart:async/zone.dart:1236:7)
#6      _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1276:23)
#7      _rootRun (dart:async/zone.dart:1428:13)
#8      _CustomZone.run (dart:async/zone.dart:1328:19)
#9      _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:1260:23)
#10     Timer._createTimer.<anonymous closure> (dart:async-patch/timer_patch.dart:18:15)
#11     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:395:19)
#12     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:426:5)
#13     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)

ninja: build stopped: subcommand failed.

After I solved the flutter installed by snap,I got a new problem when run command 'flutter run'.

[ +489 ms] [3/9] Building CXX object CMakeFiles/dart_vlc_example.dir/main.cc.o
[   +2 ms] [4/9] Building CXX object CMakeFiles/dart_vlc_example.dir/flutter/generated_plugin_registrant.cc.o
[  +80 ms] [5/9] Building CXX object CMakeFiles/dart_vlc_example.dir/my_application.cc.o
[+1117 ms] [6/9] Building CXX object plugins/dart_vlc/CMakeFiles/dart_vlc_plugin.dir/dart_vlc_plugin.cc.o
[        ] FAILED: plugins/dart_vlc/CMakeFiles/dart_vlc_plugin.dir/dart_vlc_plugin.cc.o 
[   +7 ms] /usr/bin/clang++ -DAPPLICATION_ID=\"com.example.dart_vlc\" -DFLUTTER_PLUGIN_IMPL -Ddart_vlc_plugin_EXPORTS
-I/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/dart_vlc_plugin
-I/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/INTERFACE
-I/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/include -I/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral -isystem /usr/include/gtk-3.0
-isystem /usr/include/at-spi2-atk/2.0 -isystem /usr/include/at-spi-2.0 -isystem /usr/include/dbus-1.0 -isystem /usr/lib/x86_64-linux-gnu/dbus-1.0/include -isystem /usr/include/gio-unix-2.0
-isystem /usr/include/cairo -isystem /usr/include/pango-1.0 -isystem /usr/include/fribidi -isystem /usr/include/harfbuzz -isystem /usr/include/atk-1.0 -isystem /usr/include/pixman-1 -isystem
/usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -isystem /usr/include/gdk-pixbuf-2.0 -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem
/usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -g -fPIC -fvisibility=hidden -Wall -Werror -pthread -std=gnu++17 -MD -MT
plugins/dart_vlc/CMakeFiles/dart_vlc_plugin.dir/dart_vlc_plugin.cc.o -MF plugins/dart_vlc/CMakeFiles/dart_vlc_plugin.dir/dart_vlc_plugin.cc.o.d -o
plugins/dart_vlc/CMakeFiles/dart_vlc_plugin.dir/dart_vlc_plugin.cc.o -c /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/dart_vlc_plugin.cc
[   +4 ms] /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/dart_vlc_plugin.cc:98:17: error: redefinition of 'player'
[   +2 ms]         Player* player = players->get(id);
[        ]                 ^
[        ] /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/dart_vlc_plugin.cc:95:17: note: previous definition is here
[        ]         Player* player = players->get(id);
[        ]                 ^
[        ] /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/dart_vlc_plugin.cc:187:25: error: cannot initialize a variable of type 'const char *' with
an rvalue of type 'FlValue *' (aka '_FlValue *')
[        ]             const char* playlistMode = fl_value_lookup_string(source, "playlistMode");
[        ]                         ^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[        ] 2 errors generated.
[        ] ninja: build stopped: subcommand failed.
[  +14 ms] Building Linux application... (completed in 18.4s)
[        ] Exception: Build process failed
[   +1 ms] "flutter run" took 18,895ms.
[   +4 ms] 
           #0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
           #1      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:664:9)
           <asynchronous suspension>
           #2      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1059:27)
           <asynchronous suspension>
           #3      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>

Missing file โ€œ../include/vlcpp/vlc.hppโ€: No such file or directory

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: ๅ‘ฝไปคโ€œsetlocal [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: cd C:\Git\dasi-spd\windows\flutter\ephemeral.plugin_symlinks\dart_vlc\windows\bin [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: C: [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E tar xzf "C:/Git/dasi-spd/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/vlc-3.0.9.2.7z" [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E tar xzf "C:/Git/dasi-spd/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/libvlcpp.zip" [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/Git/dasi-spd/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/vlc-3.0.9.2/sdk/include/vlc C:/Git/dasi-spd/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/include/vlc [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/Git/dasi-spd/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/libvlcpp-master/vlcpp C:/Git/dasi-spd/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/include/vlcpp [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: :cmEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: :cmErrorLevel [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: exit /b %1 [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: :cmDone [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(143,5): error MSB3073: :VCEndโ€ๅทฒ้€€ๅ‡บ๏ผŒไปฃ็ ไธบ 1ใ€‚ [C:\Git\dasi-spd\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
Exception: Build process failed.

Exception: Build process failed

I pull the latest version, new problem happen!My OS is Ubuntu 20.04.

[  +53 ms] executing: uname -m
[  +34 ms] Exit code 0 from: uname -m
[        ] x86_64
[  +12 ms] executing: [/home/yxy/Software/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +8 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] 5865c14d67dc300a1206f45dd50d869844e24349
[   +1 ms] executing: [/home/yxy/Software/flutter/] git tag --points-at 5865c14d67dc300a1206f45dd50d869844e24349
[  +13 ms] Exit code 0 from: git tag --points-at 5865c14d67dc300a1206f45dd50d869844e24349
[   +1 ms] executing: [/home/yxy/Software/flutter/] git describe --match *.*.* --long --tags 5865c14d67dc300a1206f45dd50d869844e24349
[  +33 ms] Exit code 0 from: git describe --match *.*.* --long --tags 5865c14d67dc300a1206f45dd50d869844e24349
[        ] 2.2.0-10.0.pre-215-g5865c14d67
[  +12 ms] executing: [/home/yxy/Software/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[   +6 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/master
[        ] executing: [/home/yxy/Software/flutter/] git ls-remote --get-url origin
[   +7 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://hub.fastgit.org/flutter/flutter.git
[  +82 ms] executing: [/home/yxy/Software/flutter/] git rev-parse --abbrev-ref HEAD
[   +4 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] master
[  +54 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +36 ms] executing: /home/yxy/Android/Sdk/platform-tools/adb devices -l
[  +48 ms] List of devices attached
[   +4 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +58 ms] Skipping pub get: version match.
[  +30 ms] Found plugin path_provider at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.1/
[   +4 ms] Found plugin path_provider_linux at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.0.0/
[   +1 ms] Found plugin path_provider_macos at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.0/
[   +2 ms] Found plugin path_provider_windows at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.0/
[  +14 ms] Found plugin dart_vlc at /home/yxy/github/dart_vlc/
[  +34 ms] Found plugin path_provider at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.1/
[   +2 ms] Found plugin path_provider_linux at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.0.0/
[   +1 ms] Found plugin path_provider_macos at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.0/
[   +3 ms] Found plugin path_provider_windows at /home/yxy/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.0/
[  +19 ms] Found plugin dart_vlc at /home/yxy/github/dart_vlc/
[  +97 ms] Initializing file store
[   +8 ms] Skipping target: gen_localizations
[   +4 ms] complete
[   +4 ms] Launching lib/main.dart on Linux in debug mode...
[   +5 ms] /home/yxy/Software/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev /home/yxy/Software/flutter/bin/cache/artifacts/engine/linux-x64/frontend_server.dart.snapshot --sdk-root
/home/yxy/Software/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --incremental --target=flutter --debugger-module-names --experimental-emit-debug-metadata
-DFLUTTER_WEB_AUTO_DETECT=true --output-dill /tmp/flutter_tools.WSJXGF/flutter_tool.QGMDON/app.dill --packages /home/yxy/github/dart_vlc/example/.dart_tool/package_config.json
-Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-scheme org-dartlang-root --initialize-from-dill
build/f245b0b7cc30f460f818fcec6bcf01fb.cache.dill.track.dill --flutter-widget-cache --enable-experiment=alternative-invalidation-strategy
[  +26 ms] Building Linux application...
[   +9 ms] <- compile package:dart_vlc_example/main.dart
[   +5 ms] executing: [build/linux/x64/debug/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DFLUTTER_TARGET_PLATFORM=linux-x64 /home/yxy/github/dart_vlc/example/linux
[+120696 ms] -- Configuring done
[  +12 ms] -- Generating done
[  +10 ms] -- Build files have been written to: /home/yxy/github/dart_vlc/example/build/linux/x64/debug
[   +6 ms] executing: ninja -C build/linux/x64/debug install
[  +12 ms] ninja: Entering directory `build/linux/x64/debug'
[  +11 ms] [1/9] Running utility command for LIBVLC_EXTRACT
[        ] FAILED: plugins/dart_vlc/CMakeFiles/LIBVLC_EXTRACT.util 
[  +20 ms] cd /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin && /snap/cmake/858/bin/cmake -E tar xzf
"/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin/libvlcpp.zip" && /snap/cmake/858/bin/cmake -E copy_directory
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin/libvlcpp-master/vlcpp
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/include/vlcpp
[   +4 ms] Error copying directory from "/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin/libvlcpp-master/vlcpp" to
"/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/include/vlcpp".
[+2588 ms] [2/9] Generating /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/libflutter_linux_gtk.so,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_response.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_value.h, /home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_view.h,
/home/yxy/github/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_
[   +2 ms] [  +51 ms] executing: uname -m
[        ] [  +27 ms] Exit code 0 from: uname -m
[        ] [        ] x86_64
[        ] [   +9 ms] executing: [/home/yxy/Software/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [   +5 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [        ] 5865c14d67dc300a1206f45dd50d869844e24349
[        ] [        ] executing: [/home/yxy/Software/flutter/] git tag --points-at 5865c14d67dc300a1206f45dd50d869844e24349
[        ] [  +17 ms] Exit code 0 from: git tag --points-at 5865c14d67dc300a1206f45dd50d869844e24349
[        ] [   +3 ms] executing: [/home/yxy/Software/flutter/] git describe --match *.*.* --long --tags 5865c14d67dc300a1206f45dd50d869844e24349
[        ] [  +32 ms] Exit code 0 from: git describe --match *.*.* --long --tags 5865c14d67dc300a1206f45dd50d869844e24349
[        ] [        ] 2.2.0-10.0.pre-215-g5865c14d67
[        ] [  +12 ms] executing: [/home/yxy/Software/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[        ] [   +6 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] [        ] origin/master
[        ] [        ] executing: [/home/yxy/Software/flutter/] git ls-remote --get-url origin
[        ] [   +5 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] [        ] https://hub.fastgit.org/flutter/flutter.git
[        ] [  +53 ms] executing: [/home/yxy/Software/flutter/] git rev-parse --abbrev-ref HEAD
[        ] [   +5 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] [        ] master
[        ] [  +45 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [   +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [  +67 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'PubDependencies' is not required, skipping update.
[        ] [  +25 ms] Initializing file store
[        ] [   +4 ms] Done initializing file store
[        ] [  +27 ms] Skipping target: gen_localizations
[        ] [ +991 ms] Skipping target: unpack_linux
[        ] [ +266 ms] Skipping target: kernel_snapshot
[        ] [ +191 ms] Skipping target: debug_bundle_linux-x64_assets
[        ] [        ] Persisting file store
[        ] [   +8 ms] Done persisting file store
[        ] [   +4 ms] build succeeded.
[        ] [   +7 ms] "flutter assemble" took 1,611ms.
[        ] [ +256 ms] ensureAnalyticsSent: 253ms
[        ] [   +1 ms] Running shutdown hooks
[        ] [        ] Shutdown hooks complete
[        ] [        ] exiting with code 0
[        ] ninja: build stopped: subcommand failed.
[  +13 ms] Building Linux application... (completed in 123.4s)
[   +1 ms] Exception: Build process failed
[   +4 ms] "flutter run" took 124,359ms.
[   +4 ms] 
           #0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
           #1      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:664:9)
           <asynchronous suspension>
           #2      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1059:27)
           <asynchronous suspension>
           #3      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #4      CommandRunner.runCommand (package:args/command_runner.dart:196:13)
           <asynchronous suspension>
           #5      FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:284:9)
           <asynchronous suspension>
           #6      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #7      FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:232:5)
           <asynchronous suspension>
           #8      run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
           <asynchronous suspension>
           #9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #10     main (package:flutter_tools/executable.dart:91:3)
           <asynchronous suspension>
           
           
[ +255 ms] ensureAnalyticsSent: 252ms
[   +3 ms] Running shutdown hooks
[        ] Shutdown hooks complete
[   +1 ms] exiting with code 1

Can`t build example app on Linux

Im using Flutter on linux and trying start example app on this OS.

flutter doctor:

Doctor summary (to see all details, run flutter doctor -v):
[โœ“] Flutter (Channel master, 2.3.0-17.0.pre.261, on Debian GNU/Linux 10 (buster) 4.19.0-10-amd64, locale en_US.UTF-8)
[โœ—] Android toolchain - develop for Android devices
    โœ— Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[โœ—] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[โœ“] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[โœ“] Connected device (1 available)

! Doctor found issues in 3 categories.

output from flutter run -v -d linux

[  +54 ms] executing: uname -m
[  +23 ms] Exit code 0 from: uname -m
[        ] x86_64
[   +4 ms] executing: [/home/parallels/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +2 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[        ] executing: [/home/parallels/flutter/] git tag --points-at 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[  +14 ms] Exit code 0 from: git tag --points-at 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[   +1 ms] executing: [/home/parallels/flutter/] git describe --match *.*.* --long --tags 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[  +22 ms] Exit code 0 from: git describe --match *.*.* --long --tags 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[        ] 2.3.0-16.0.pre-261-g9ecba20fbd
[   +6 ms] executing: [/home/parallels/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[   +7 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/master
[        ] executing: [/home/parallels/flutter/] git ls-remote --get-url origin
[   +2 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +75 ms] Unable to locate an Android SDK.
[   +4 ms] executing: [/home/parallels/flutter/] git rev-parse --abbrev-ref HEAD
[   +9 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] master
[  +82 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +3 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +86 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +73 ms] Skipping pub get: version match.
[  +26 ms] Found plugin path_provider at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.1/
[   +4 ms] Found plugin path_provider_linux at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.0.0/
[   +6 ms] Found plugin path_provider_macos at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.0/
[   +3 ms] Found plugin path_provider_windows at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.0/
[   +8 ms] Found plugin dart_vlc at /home/parallels/dart_vlc/
[  +33 ms] Found plugin path_provider at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.1/
[   +1 ms] Found plugin path_provider_linux at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.0.0/
[   +1 ms] Found plugin path_provider_macos at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.0/
[   +1 ms] Found plugin path_provider_windows at /home/parallels/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.0/
[  +16 ms] Found plugin dart_vlc at /home/parallels/dart_vlc/
[ +110 ms] Initializing file store
[  +10 ms] Skipping target: gen_localizations
[   +3 ms] Skipping target: gen_dart_plugin_registrant
[        ] Skipping target: _composite
[   +1 ms] complete
[   +5 ms] Launching lib/main.dart on Linux in debug mode...
[   +4 ms] /home/parallels/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev
/home/parallels/flutter/bin/cache/artifacts/engine/linux-x64/frontend_server.dart.snapshot --sdk-root
/home/parallels/flutter/bin/cache/artifacts/engine/common/flutter_patched_sdk/ --incremental --target=flutter --debugger-module-names
--experimental-emit-debug-metadata -DFLUTTER_WEB_AUTO_DETECT=true --output-dill /tmp/flutter_tools.HBSFLG/flutter_tool.OTGMGU/app.dill --packages
/home/parallels/dart_vlc/example/.dart_tool/package_config.json -Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts
--track-widget-creation --filesystem-scheme org-dartlang-root --initialize-from-dill build/f245b0b7cc30f460f818fcec6bcf01fb.cache.dill.track.dill
--flutter-widget-cache --enable-experiment=alternative-invalidation-strategy
[  +26 ms] Building Linux application...
[  +31 ms] <- compile package:dart_vlc_example/main.dart
[   +2 ms] executing: [build/linux/x64/debug/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DFLUTTER_TARGET_PLATFORM=linux-x64
/home/parallels/dart_vlc/example/linux
[ +192 ms] -- Configuring done
[   +6 ms] -- Generating done
[   +3 ms] -- Build files have been written to: /home/parallels/dart_vlc/example/build/linux/x64/debug
[  +21 ms] executing: ninja -C build/linux/x64/debug install
[   +5 ms] ninja: Entering directory `build/linux/x64/debug'
[  +15 ms] [1/9] Running utility command for LIBVLC_EXTRACT
[        ] FAILED: plugins/dart_vlc/CMakeFiles/LIBVLC_EXTRACT.util 
[  +42 ms] cd /home/parallels/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin && /usr/local/bin/cmake -E tar xzf
"/home/parallels/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin/libvlcpp.zip" && /usr/local/bin/cmake -E
copy_directory /home/parallels/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin/libvlcpp-master/vlcpp
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/include/vlcpp
[   +3 ms] Error copying directory from
"/home/parallels/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/bin/libvlcpp-master/vlcpp" to
"/home/parallels/dart_vlc/example/linux/flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/include/vlcpp".
[+3707 ms] [2/9] Generating /home/parallels/dart_vlc/example/linux/flutter/ephemeral/libflutter_linux_gtk.so,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_engine.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_call.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_method_response.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_value.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/fl_view.h,
/home/parallels/dart_vlc/example/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_
[   +2 ms] [ +125 ms] executing: uname -m
[        ] [  +32 ms] Exit code 0 from: uname -m
[        ] [        ] x86_64
[   +7 ms] [   +6 ms] executing: [/home/parallels/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [   +3 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] [        ] 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[        ] [        ] executing: [/home/parallels/flutter/] git tag --points-at 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[        ] [  +10 ms] Exit code 0 from: git tag --points-at 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[        ] [   +1 ms] executing: [/home/parallels/flutter/] git describe --match *.*.* --long --tags 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[        ] [  +24 ms] Exit code 0 from: git describe --match *.*.* --long --tags 9ecba20fbd351d1987ab9656c7bff51ba77daf2b
[        ] [        ] 2.3.0-16.0.pre-261-g9ecba20fbd
[        ] [   +4 ms] executing: [/home/parallels/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[        ] [   +2 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[   +1 ms] [        ] origin/master
[        ] [        ] executing: [/home/parallels/flutter/] git ls-remote --get-url origin
[        ] [   +2 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] [        ] https://github.com/flutter/flutter.git
[        ] [  +43 ms] Unable to locate an Android SDK.
[        ] [   +5 ms] executing: [/home/parallels/flutter/] git rev-parse --abbrev-ref HEAD
[        ] [   +7 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] [   +1 ms] master
[        ] [  +61 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] [   +5 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [  +96 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'GradleWrapper' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterSdk' is not required, skipping update.
[        ] [        ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[   +2 ms] [        ] Artifact Instance of 'WindowsUwpEngineArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] [  +12 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update.
[        ] [        ] Artifact Instance of 'PubDependencies' is not required, skipping update.
[        ] [  +59 ms] Initializing file store
[        ] [  +13 ms] Done initializing file store
[        ] [  +42 ms] Skipping target: gen_localizations
[        ] [  +14 ms] Skipping target: gen_dart_plugin_registrant
[        ] [ +548 ms] Skipping target: unpack_linux
[        ] [ +511 ms] Skipping target: kernel_snapshot
[        ] [ +283 ms] Skipping target: debug_bundle_linux-x64_assets
[        ] [        ] Persisting file store
[        ] [   +7 ms] Done persisting file store
[        ] [   +3 ms] build succeeded.
[        ] [   +8 ms] "flutter assemble" took 1,635ms.
[        ] [ +120 ms] ensureAnalyticsSent: 117ms
[        ] [        ] Running shutdown hooks
[        ] [        ] Shutdown hooks complete
[        ] [        ] exiting with code 0
[        ] ninja: build stopped: subcommand failed.
[  +16 ms] Building Linux application... (completed in 4.1s)
[+5686 ms] Exception: Build process failed
[   +2 ms] "flutter run" took 10,244ms.
[   +3 ms] 
           #0      throwToolExit (package:flutter_tools/src/base/common.dart:10:3)
           #1      RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:671:9)
           <asynchronous suspension>
           #2      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1126:27)
           <asynchronous suspension>
           #3      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #4      CommandRunner.runCommand (package:args/command_runner.dart:196:13)
           <asynchronous suspension>
           #5      FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:284:9)
           <asynchronous suspension>
           #6      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #7      FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:232:5)
           <asynchronous suspension>
           #8      run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
           <asynchronous suspension>
           #9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
           <asynchronous suspension>
           #10     main (package:flutter_tools/executable.dart:91:3)
           <asynchronous suspension>
           
           
[  +32 ms] ensureAnalyticsSent: 30ms
[   +1 ms] Running shutdown hooks
[        ] Shutdown hooks complete
[        ] exiting with code 1

Both libraries installed and available in Linux - vlc and libvlc-dev with stable versions 3.0.x

What happened?

Playlist or single audio is not inserted into the player when startup is false.

Playlist

I run a playlist with a true start:
player.open(Playlist (media: mediaStart), start: true);

Then I decide to pause the audio and then insert an playlist with false start:
player.open(Playlist (media: mediaEnd), start: false);

When you click play, it should play the new playlist, but it doesn't, it keeps playing the previous playlist...


Audio

I run a audio with a true start:
player.open(mediaStart, start: true);

Then I decide to pause the audio and then insert an audio with false start:
player.open(mediaEnd, start: false);

When you click play, it should play the audio, but it doesn't, it keeps playing the previous audio...

The library is too big

Hey! Thanks for this awesome plugin :)

Unfortunatelly, the library is too big and increases the size of an app at about 100 Mb. Probably because the dartvlc folder is too big.

Is there any way to reduce the app size? I think tree shaking on vlc would be the best option

Dart_VLC version: 0.0.6 failed project execution

When I get the latest version it is giving me this error when running the project.
I am running it on a Windows, @tomassasovsky @alexmercerind

Launching lib\main.dart on Windows in debug mode...
lib\main.dart:1
CUSTOMBUILD : error : Could not resolve the package 'audio_video_progress_bar' in 'package:audio_video_progress_bar/audio_video_progress_bar.dart'. [D:\Trabajos\build\windows\flutter\flutter_assemble.vcxproj]
../dart_vlc/lib/src/widgets/controls.dart(3,8): error GDA81338A: Not found: 'package:audio_video_progress_bar/audio_video_progress_bar.dart' [D:\Trabajos\build\windows\flutter\flutter_assemble.vcxproj]
../dart_vlc/lib/src/widgets/controls.dart(120,40): error G76A9B1F6: The method 'ProgressBar' isn't defined for the class '_ControlState'. [D:\Trabajos\build\windows\flutter\flutter_assemble.vcxproj]
../dart_vlc/lib/src/widgets/controls.dart(134,54): error GD65BB2B6: The getter 'TimeLabelLocation' isn't defined for the class '_ControlState'. [D:\Trabajos\build\windows\flutter\flutter_assemble.vcxproj]
Exception: Build process failed.
Exited (sigterm)

[windows] Consider using the flutter TextureRegistrar API

First of all, Iโ€˜d like to thank you for your efforts.

Still, thereโ€˜s room for improvement here and there ;)

Looking at your Windows implementation, for example, I realized that video pixel buffers are currently being passed through the method channel as opposed to using the texture registrar API.

I assume that using flutter::PixelBufferTexture should improve efficiency. This might require swizzling the pixel format from BGRA to RGBA and requires the stride size to be equal to the width, though.

Feel free to contact me for assistance.

CMake 3.15 or higher is required. You are running version 3.10.2

I cloned this project, and run 'flutter run' in the 'example' folder.then I got this issue:

~/github/dart_vlc/example$ flutter run
Launching lib/main.dart on Linux in debug mode...
CMake Error at flutter/ephemeral/.plugin_symlinks/dart_vlc/linux/CMakeLists.txt:9 (cmake_minimum_required):
  CMake 3.15 or higher is required.  You are running version 3.10.2  

Unable to play MediaType.File on Windows

Example showed that MediaType.File worked on Linux. But I couldn't figure out how to play in windows env. After trying to play I get
_>dvdnav demux error: Could not open ?E:\April 10\Pictures\Untitled(7)\index (9).mp4 with libdvdcss.

dvdnav demux error: Can't open ?E:\April 10\Pictures\Untitled(7)\index (9).mp4 for reading
dvdnav demux error: vm: failed to open/read the DVD
filesystem stream error: cannot open file โ€ชE:\April 10\Pictures\Untitled(7)\index (9).mp4 (Invalid argument)_
Is this a known issue in this early project?

Manjaro: Missing '/usr/lib/x86_64-linux-gnu/libvlc.so'

My libvlc.so is located in /usr/lib directly without the sub direcotory.

image

System info

Operating System: Manjaro Linux
KDE Plasma Version: 5.21.3
KDE Frameworks Version: 5.80.0
Qt Version: 5.15.2
Kernel Version: 5.9.16-1-MANJARO
OS Type: 64-bit
Graphics Platform: X11
Processors: 12 ร— Intelยฎ Coreโ„ข i7-8750H CPU @ 2.20GHz
Memory: 15.5 GiB of RAM
Graphics Processor: GeForce GTX 1070 with Max-Q Design/PCIe/SSE2

[windows] short audio file not works?

when i use the example code to play a regular song file(.mp3) which time is about 2-3 minutes long.
sound is played, every thing works fine, but when i change to a very short audio file, like this word pronounciation i download from google:
https://ssl.gstatic.com/dictionary/static/pronunciation/2019-10-21/audio/br/brandish_en_us_1.mp3

then there just no sound played. what am i missing?

my environments:
[โˆš] Flutter (Channel dev, 2.3.0-16.0.pre, on Microsoft Windows [Version 10.0.19042.1052])
[โˆš] Visual Studio - develop for Windows (Visual Studio Community 2019 16.9.6)
dart_vlc: ^0.0.6

here is my code:
Future<void> playFile(File file) async { final player = Player(id: 123); Media media = await Media.file(file); return player.open(media); }

thanks for the help.

How to play song at index in playlist?

What is function to jump to a certain index in a playlist? I tried jump and that does not work.
Like audio assets has:
await audioPlayer!.playlistPlayAtIndex(index);

what is the dart_vlc one?

Build Linux Github Action fails

I noticed that all Linux Builds started failing about 2 days ago:

E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/s/samba/samba-libs_4.11.6+dfsg-0ubuntu1.6_amd64.deb  404  Not Found [IP: 52.147.219.192 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/s/samba/libsmbclient_4.11.6+dfsg-0ubuntu1.6_amd64.deb  404  Not Found [IP: 52.147.219.192 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Error: Process completed with exit code 100.

Should apt-get update be added to the list of actions?

Null check operator used on a null value

I upgrade to new version and has issue: when resize windows

image

โ•โ•โ•โ•โ•โ•โ•โ• Exception caught by widgets library โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
The following _CastError was thrown building Control(dirty, state: _ControlState#40024):
Null check operator used on a null value

Widget creation tracking is currently disabled. Enabling it enables improved error messages. It can be enabled by passing `--track-widget-creation` to `flutter run` or `flutter test`.
When the exception was thrown, this was the stack
#0      _ControlState.build
package:dart_vlc/โ€ฆ/widgets/controls.dart:110
#1      StatefulElement.build
package:flutter/โ€ฆ/widgets/framework.dart:4612
#2      ComponentElement.performRebuild
package:flutter/โ€ฆ/widgets/framework.dart:4495
#3      StatefulElement.performRebuild
package:flutter/โ€ฆ/widgets/framework.dart:4667
#4      Element.rebuild
package:flutter/โ€ฆ/widgets/fram

Build failed

Hi again,

since upgrading to 0.0.6 I get a similar error to #13.

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: Der Befehl "setlocal [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: cd C:\src\dev\example\windows\flutter\ephemeral\.plugin_symlinks\dart_vlc\windows\bin [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: C: [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E tar xzf "C:/src/dev/example/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/vlc-3.0.9.2.7z" [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E tar xzf "C:/src/dev/example/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/libvlcpp.zip" [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/src/dev/example/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/vlc-3.0.9.2/sdk/include/vlc C:/src/dev/example/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/include/vlc [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E copy_directory C:/src/dev/example/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/bin/libvlcpp-master/vlcpp C:/src/dev/example/windows/flutter/ephemeral/.plugin_symlinks/dart_vlc/windows/include/vlcpp [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :cmEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :cmErrorLevel [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: exit /b %1 [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :cmDone [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(145,5): error MSB3073: :VCEnd" wurde mit dem Code 1 beendet. [C:\src\dev\example\build\windows\plugins\dart_vlc\LIBVLC_EXTRACT.vcxproj]
Building Windows application...
Exception: Build process failed.

I tried downgrading to 0.0.5 again, but that gives me the same message now...

I use macOS primarily, so this Windows setup only follows: https://flutter.dev/desktop. Nothing more, nothing less.

This is my env:
Screenshot

Example App Not Working on MX Linux (Ubuntu based)

I installed libvlc-dev (version 3.0.12-1~mx19+1) and included the library on my pubspec.yaml file.
When I try to run the application i get this error:

Launching lib/main.dart on Linux in debug mode...  
clang: error: linker command failed with exit code 1 (use -v to see invocation)  
Exception: Build process failed  
Exited (sigterm)

Linux: Memory usage increasing steadily

I found memory usage continues to increase, until all memory is used, even making device freez. Did I make a mistake or did I add something missing?
I'm run it on linux

any instructions for getting running on mac ?

Just gave it a try, but not sure what else to try.

pubspec:



flutter:
  plugin:
    platforms:
      windows:
        pluginClass: DartVlcPlugin
      linux:
        pluginClass: DartVlcPlugin
      mac:
        pluginClass: DartVlcPlugin

run:


flutter run -d mac --release
Launching lib/main.dart on macOS in release mode...
2021-03-24 12:06:53.316 xcodebuild[80655:3465381]  DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/DVTiOSFrameworks/DVTiOSFrameworks-17705/DTDeviceKitBase/DTDKRemoteDeviceData.m:371
Details:  (null) deviceType from bdf90dc799709a013a25d0fc2df80e441df026f3 was NULL when -platform called.
Object:   <DTDKMobileDeviceToken: 0x7faec4b2fde0>                       
Method:   -platform                                                     
Thread:   <NSThread: 0x7faec4835500>{number = 3, name = (null)}         
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
2021-03-24 12:06:53.708 xcodebuild[80655:3465502]  DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/DVTiOSFrameworks/DVTiOSFrameworks-17705/DTDeviceKitBase/DTDKRemoteDeviceData.m:371
Details:  (null) deviceType from bdf90dc799709a013a25d0fc2df80e441df026f3 was NULL when -platform called.
Object:   <DTDKMobileDeviceToken: 0x7faec4b2fde0>                       
Method:   -platform                                                     
Thread:   <NSThread: 0x7faec4affbe0>{number = 8, name = (null)}         
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
Building macOS application...                                           

Flutter run key commands.
h Repeat this help message.
c Clear the screen
q Quit (terminate the application on the device).
[ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: MissingPluginException(No implementation found for method Player.create on channel dart_vlc)
#0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:156)
<asynchronous suspension>
#1      Player.create (package:dart_vlc/src/player.dart:63)
<asynchronous suspension>
#2      _DartVLCState.didChangeDependencies (package:dart_vlc_example/main.dart:31)
<asynchronous suspension>

Windows : Video takes approx 1 second to load and playing video cause very high CPU usage.

When I schedule multiple videos to play continuously without any break. I have two issues as shown below

(1) Two videos has gap of approx 1 second which causes blink in running playlist (not happening in video_player dependencies)
(2) When app plays video, system CPU usage goes Very High.

dev_dependencies : dart_vlc: ^0.0.7

flutter doctor -v

[โˆš] Flutter (Channel dev, 2.3.0-1.0.pre, on Microsoft Windows [Version 10.0.18363.1016], locale en-CA)
    โ€ข Flutter version 2.3.0-1.0.pre at C:\Program Files\flutter
    โ€ข Upstream repository https://github.com/flutter/flutter.git
    โ€ข Framework revision d97f41caed (2 weeks ago), 2021-04-30 12:35:21 -0700
    โ€ข Engine revision e7939e091e
    โ€ข Dart version 2.14.0 (build 2.14.0-48.0.dev)

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    โ€ข Android SDK at C:\Users\street\AppData\Local\Android\sdk
    โ€ข Platform android-30, build-tools 30.0.2
    โ€ข Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    โ€ข Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    X Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.

[โˆš] Visual Studio - develop for Windows (Visual Studio Community 2019 16.7.7)
    โ€ข Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    โ€ข Visual Studio Community 2019 version 16.7.30621.155
    โ€ข Windows 10 SDK version 10.0.18362.0

[โˆš] Android Studio (version 4.1.0)
    โ€ข Android Studio at C:\Program Files\Android\Android Studio
    โ€ข Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    โ€ข Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    โ€ข Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[โˆš] VS Code (version 1.53.2)
    โ€ข VS Code at C:\Users\street\AppData\Local\Programs\Microsoft VS Code
    โ€ข Flutter extension version 3.20.0

[โˆš] Connected device (1 available)
    โ€ข Windows (desktop) โ€ข windows โ€ข windows-x64 โ€ข Microsoft Windows [Version 10.0.18363.1016]

! Doctor found issues in 1 category.

Let me know if you need more details on this.

help~~about flutter texture

hello,i user this to play video.i found it play video in the native window.i want to make it play in the flutter ui.
i want to use the texture.but i am not good at c++.
do u decide to play the video in the flutter ui?

Did Media change from .0.0.2?

I had:
List<Media> medias = <Media>[];
then:
medias.add(Media.file(new File(fileSystemEntity.path)));
now its breaking on .3 and .4 versions.

[Question] What about providing a constructor or making `create` synchronous

Hey @alexmercerind , I want to discuss such a question just saied in title.

Currently, Player.create is async, I would like to create a Player instance inside some constructor, then I need to check the instance is created or not before calling any method.

What if remove await for MethodChannel create, and check it before other methods called inside package, for example, use a Completer to ensure instantiation completed. Although it makes code messy somehow, but it would be more friendly to users who use the library.

And then, players are saved in players, how about use a factory constructor to reuse the player instance with the same id. Currently, create a new instance without check.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.