GithubHelp home page GithubHelp logo

nsho77 / vlc.dotnet Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zebobo5/vlc.dotnet

0.0 1.0 0.0 101.29 MB

.NET control that hosts the audio/video capabilities of the VLC libraries

License: MIT License

Batchfile 0.08% C# 99.92%

vlc.dotnet's Introduction

Vlc.DotNet

Join the chat at https://gitter.im/Vlc-DotNet/Lobby

Vlc.DotNet is a .net library that hosts the audio/video capabilities of the VLC libraries. In other words, it's a .net wrapper around libvlc.

It can work on any .net framework version starting from .net 2.0 and .net standard 1.3 (starting from Vlc.DotNet 2.2.1).

On the front-end side, two components are currently available to make it easy to integrate in your apps. One is for WinForms, the other for WPF.

Writing a WPF app / Migrating WPF control from 2.x

Please Read this if you are writing a WPF app! This is super important!

tl;dr : Use Vlc.DotNet.Forms in a WindowsFormsHost, unless you know what you're doing

The WPF control has been rewritten from scratch from 2.x.

The old WPF control was just a wrapper around the WinForms control. This led to some issues (Airspace issue...) and lacked some WPF-ish features.

That's why a new control has been written. To be fair, first versions of Vlc.DotNet were built with that technique, but back then, there were issues in the .net framework causing the memory usage to explode. As of 2018, this issue is resolved.

You have in fact two options:

  • Use the new WPF control. You might notice a performance impact when reading, for example, a 4k @ 60 fps video on a low-end computer. However, you can do whatever you like, just as a normal ImageSource in WPF.
  • Wrap the Vlc.DotNet.WinForms control in a WindowsFormsHost. It offers better performance, but you will experience Airspace issues (see #296) if you need to write over the video.

The right option to use depends on your needs.

See the discussion #249 and pull request : #365

How to use

It all starts with those three steps :

  • Install one of the NuGet Packages below
  • Install libvlc libraries manually or from the NuGet package(recommended)
  • Integrate it into your app

See the Getting started wiki

Continuous Integration

Branch Build Description
master Build status Latest stable version
develop Build status Latest features (may be experimental)

NuGet Packages

Packages are available for Vlc libraries. Releases packages follow SEMVER 2.0.0

Prereleases packages are built each time a push is made on develop

Other links

vlc.dotnet's People

Contributors

agherardi avatar albertxingzhang avatar amaitland avatar ananjev-a-v avatar anupamanadig avatar beast76 avatar ddobrev avatar dilandau2001 avatar gitter-badger avatar gonzru avatar guxialv avatar honfika avatar horaceyork88 avatar jeanmeijer avatar jeremyvignelles avatar logosnickericson avatar marclandis avatar max619 avatar mfkl avatar microchi avatar pureiso avatar qmfrederik avatar rukhlov avatar sep95 avatar spoiledtechie avatar widgetqueen avatar wolf-germany avatar woolersj avatar zandiarash avatar zebobo5 avatar

Watchers

 avatar

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.