0

I'm planning to create a cross platform (Windows, Linux, macOS, Android, iOS, Wasm) audio player using latest AvaloniaUI along with LibVLCSharp. Unfortunately only support for Windows, Linux and macOS is listed for Avalonia.

I think that this might be a lack of documentation only, since Avalonia pretty recently introduced Android and iOS support officially.

So how is the state of this? Would it be possible to create a REAL cross platform player for all the listed platforms with LibVLCSharp? And if not, is there an alternative, that could be used with AvaloniaUI?

I found these libs for C#, that are (partially) capable of playing audio:

  • LibVLCSharp (unmanaged/wrapper, cross platform including Android + iOS)
  • SharpAudio (mostly managed, cross platform, but poor codec support atm)
  • cscore (unmanaged/wrapper, well designed, development stalled)
  • libsoundio-sharp (unmanaged, pretty raw)
  • ManagedBass (unmanaged/wrapper for BASS, awesome but only free for open source)
  • NAudio (awesome managed library, but windows only atm, although efforts to evolve to cross platform)
sandreas
  • 101
  • 1
  • 7
  • 1
    if you only need audio, libvlcsharp will curently work for all your target platforms except WASM. – mfkl Feb 20 '23 at 03:34
  • Great thank you... so just a lack of documentation. Would it be possible to somehow add WASM support via vlc.js? (https://code.videolan.org/jbk/vlc.js) – sandreas Feb 21 '23 at 03:17
  • 1
    it would be possible yes. Open to contributors and funding. – mfkl Feb 21 '23 at 03:37
  • Ok, so I would do it. If you could help me with that (I don't even know where to start), I would love open a feature request, where we can discuss the next steps for a truly cross platform media player. – sandreas Feb 21 '23 at 10:11
  • 1
    you can start by trying to build vlc for the WASM target. See how the CI does it for guidance – mfkl Feb 22 '23 at 07:01
  • 1
    https://code.videolan.org/videolan/LibVLCSharp/-/issues/211 – mfkl Feb 22 '23 at 07:03

1 Answers1

0

So to have a real cross platform app, you indeed CAN use LibVLCSharp for the following platforms via nuget package:

Also see https://github.com/videolan/libvlcsharp#installation

sandreas
  • 101
  • 1
  • 7