LibVLCSharp issueshttps://code.videolan.org/videolan/LibVLCSharp/-/issues2019-01-21T03:36:21Zhttps://code.videolan.org/videolan/LibVLCSharp/-/issues/92GTK# macOS support2019-01-21T03:36:21ZMartin FinkelGTK# macOS supporthttps://github.com/mono/gtk-sharp/issues/257https://github.com/mono/gtk-sharp/issues/257https://code.videolan.org/videolan/LibVLCSharp/-/issues/396Samples: netcore on macOS should create a window2020-09-09T08:02:07ZMartin FinkelSamples: netcore on macOS should create a window### Problem to solve
Currently the netcore sample app on macOS is headless. This is fine, but would be better to have some video.
libvlc cannot create a window by itself on mac, like it does on Windows.
And a netcore app requires a bit ...### Problem to solve
Currently the netcore sample app on macOS is headless. This is fine, but would be better to have some video.
libvlc cannot create a window by itself on mac, like it does on Windows.
And a netcore app requires a bit more setup than a mono app to have a cocoa window https://docs.microsoft.com/en-us/xamarin/mac/app-fundamentals/console
### Intended users
Devs for testing
netcore app users on mac.
### Proposal
improve the current sample.
### Documentationhttps://code.videolan.org/videolan/LibVLCSharp/-/issues/365LibVLC loading refactoring for macOS2020-09-08T15:40:42ZMartin FinkelLibVLC loading refactoring for macOS### Problem to solve
To be able to use libvlc builds from official releases, we need to be able to load and P/Invoke dynamic libvlc macOS builds.
Currently, it's all statically linked together in a `libvlc.dylib` binary. The libvlc bui...### Problem to solve
To be able to use libvlc builds from official releases, we need to be able to load and P/Invoke dynamic libvlc macOS builds.
Currently, it's all statically linked together in a `libvlc.dylib` binary. The libvlc builds from vlc.dmg are organized similarly to the libvlc windows ones (plugins folder, lib folder, share folder).
### Intended users
macOS users.
### Proposal
There are a few challenges...
- We need to perform this refactoring while not breaking existing platforms (netcore and mono).
- We need to perform this refactoring while keeping the current platform versions number supported (i.e. any netcore version).
mono/cocoa support is fine, issue is with netcore.
Problems are two fold:
- To be able to re-use the current P/Invoke code, we need to keep the dllimport statements as they are currently. In theory, one could load manually the dylib, and all further dllimport calls would look at the currently loaded dynamic librairies before trying a new dlopen to perform the dlsym. That's the theory anyway https://github.com/libgit2/libgit2sharp/blob/7fc4be5193dbdd08538b4b150332b5a73770e0f6/LibGit2Sharp/Core/NativeMethods.cs#L40
However, that's not what I observe. And for the netstandard/netcore build, that means the dlopen call argument is different on mac and windows (`@rpath/libvlc`/`libvlc`) and it should not.
- Even when using the non standard `@rpath/libvlc` dlopen argument and setting the correct `VLC_PLUGIN_PATH`, `libvlc_new` returns null.
https://github.com/mfkl/libvlcsharp/commits/mac-libvlc-loading
https://github.com/mfkl/libvlc-nuget/blob/mac-loading-rework/build/VideoLAN.LibVLC.Mac.targets
### Documentation
Just the cherrypicking enabling whenever this works.https://code.videolan.org/videolan/LibVLCSharp/-/issues/352PowerManager implementation for MacOS is missing2020-06-22T08:09:57ZOABsoftwarePowerManager implementation for MacOS is missingIn LibVLCSharp.Forms/Platforms/Apple/PowerManager.cs the MacOS implementation is missing.
Therefor a Forms app that is built for MacOS crashes on a NullReferenceException in LibVLCSharp.Forms.Shared.DisplayRequest.RequestActive since it ...In LibVLCSharp.Forms/Platforms/Apple/PowerManager.cs the MacOS implementation is missing.
Therefor a Forms app that is built for MacOS crashes on a NullReferenceException in LibVLCSharp.Forms.Shared.DisplayRequest.RequestActive since it can't find the IPowerManager implementation for MacOS...https://code.videolan.org/videolan/LibVLCSharp/-/issues/182MediaPlayerElement for macOS Cocoa2021-01-11T08:50:33ZMartin FinkelMediaPlayerElement for macOS CocoaInspiration can be drawn from the vlc macOS app for the layout, the code likely cannot be re-used though https://code.videolan.org/videolan/vlc/-/tree/master/modules/gui/macosx
The existing mediaplayer element and playback controls shou...Inspiration can be drawn from the vlc macOS app for the layout, the code likely cannot be re-used though https://code.videolan.org/videolan/vlc/-/tree/master/modules/gui/macosx
The existing mediaplayer element and playback controls should give a good idea of what is needed https://code.videolan.org/videolan/LibVLCSharp/-/tree/3.x/src/LibVLCSharp.Forms/SharedXamarin.Forms MediaElement control