alexmercerind / dart_vlc

Flutter bindings to libVLC.
GNU Lesser General Public License v2.1
508 stars 136 forks source link

macOS & iOS support #242

Open alexmercerind opened 2 years ago

alexmercerind commented 2 years ago

I cannot afford a mac or iPhone to support macOS & iOS on dart_vlc.

Current macOS & iOS implementation is written entirely by third-party contributors (uses same core as Windows & Linux). It needs updates when some internal API is changed or a new feature is added. Apart from this, we need some improvements to how video frames are transferred (prevent using CPU-based pixel buffers). Since both Flutter for Desktop & dart_vlc are new, a lot of time & effort is needed to make things stable & performant.

Thus, drop a Hi! here if you are interested in maintaining macOS & iOS support. I'll make sure to mention you in the project's page. Skills required:

Thanks!

ollyde commented 2 years ago

@alexmercerind if you cannot provide support, please remove that you support it on pub-dev.

At the moment it doesn't compile for us.

Screenshot 2022-06-10 at 12 52 37
ollyde commented 2 years ago

For anyone else who urgently needs a video player for MacOS. While we try to fix this one, you can use https://pub.dev/packages/video_player_macos

GroovinChip commented 2 years ago

iOS and macOS support has been dropped, per #303.

felipecastrosales commented 1 year ago

It would be awesome to have iOS support. :D

mishkov commented 1 year ago

For anyone else who urgently needs a video player for MacOS. While we try to fix this one, you can use https://pub.dev/packages/video_player_macos

Yes, but this plugin does not support mkv files. At least via network

alexmercerind commented 1 year ago

Just to inform you guys here, I'm no longer investing time in package:dart_vlc, but started off a new project package:media_kit. Primarily because, package:dart_vlc or the package @ollydixon shared above copies every video frame back to CPU RAM from GPU for rendering. This means that your CPU cycles & battery life is wasted for no reason. package:media_kit renders video output directly from GPU (very good performance).

package:media_kit offers a very small bundle size as compared to package:dart_vlc, also it supports all the formats unlike @ollydixon's package.

The idea:

The primary goal of package:media_kit is to become a strong, stable, feature-proof & modular media playback library for Flutter. The idea is to support both audio & video playback.

See the issue: #345 for detailed about how video rendering works & how I've aimed to achieve better performance. The project package:media_kit is really-really ambitious & I need time.

Currently, Windows implementation is really performant, it can play 8K 60FPS videos very-very easily! Expect Linux next week, macOS later this month.

Thanks!

ollyde commented 1 year ago

@alexmercerind thanks for your hard work, this is very needed in the Flutter community. The fact that the flutter team hasn't fixed this is insane.

ABDERRAHMANE-OUALI commented 1 year ago

@alexmercerind thank you for your hard work, really need a video player on macOS