Search code examples
androidandroid-videoviewrtsprtmplibvlc

Android VLC Embed vs Android VideoView


=== BACKGROUND SUMMARY===

At this moment, we are using Android VideoView to perform video play black. Everything seems to be working great until we encounter Live Streaming.

VideoView tends to have 10-15 seconds delay from the live stream within a local network (LAN).

While attempting to solve this issue, we came across VLC Embed for Android. After searching on the Internet, it seems there isn't any article compare pros and cons of using Android VLC Embed vs. Android VideoView.

=== QUESTION ===

  1. What's the advantage (pros) and disadvantage (cons) of using Android VLC Embed vs. Android VideoView?
  2. Is VLC Embed stable?
  3. Anything I should be careful when switching existing VideoView to VLC?

Thank you all in advanced


Solution

    1. What's the advantage (pros) and disadvantage (cons) of using Android VLC Embed vs. Android VideoView?
    • Advantage:

    More features. VLC supports almost all media formats, hardware decoding. audio tracks, subtitles, chapter are also supported.

    More integrated, simpler logic. You can easily get media information and cache them. The playback engine will proactively notify state changes and events, just register player event listening.

    • Disadvantage:

    APK file size increas. If both arm64-v8a and armeabi-v7a are supported, it will increase more than 30MB.

    Multiple instances are not perfect. For example, playing 2 videos at the same time is a hassle.

    1. Is VLC Embed stable?

    Stable. Starting with VLC 2.0.x (now 3.0.x), I use the VLC library in my Android App. It runs steadily from Android 5.1 to Android 8.0. A small number of 4k h265 video playback is not normal, but can be resolved by displaying "Can not play".

    1. Anything I should be careful when switching existing VideoView to VLC?

    To use LibVLC on Android The Medialibrary(org.videolan.medialibrary) is also required. You also need to note the licenses.