Code Break: Video Player Tools for Developers

Featured Image

Video Player Tools for developers working with Nx Meta or Nx Witness.

Developers working on integrating with Powered by Nx products (like Nx Witness VMS) continually ask us if we have any examples or samples of code that can be used to play video from Nx in a 3rd party interface.

So we put together this list of video player frameworks and code libraries that you might find useful when developing with Nx. 

Players

  • bigscreen-player – Simplify video and audio playback on a wide range of ‘bigscreen’ devices (TVs, set-top boxes, games consoles, and streaming devices).
  • chimee – A video player framework aims to bring wonderful experience on browser.
  • clappr – An extensible media player for the web.
  • epic-video-comparator – Javascript library which implements a video comparator component: two overlaped and synchronized video players each one playing an independent source.
  • ExoPlayer – An extensible media player for Android.
  • hls.js – JavaScript HLS client using Media Source Extension (MSE).
  • dash.js – JavaScript DASH client using Media Source Extension (MSE).
  • iina – The modern video player for macOS.
  • ijkplayer – Android/iOS video player based on FFmpeg n3.4, with MediaCodec, VideoToolbox support.
  • indigo-player – Highly extensible, modern, JavaScript video player. Handles MPEG-Dash / HLS / MPEG-4 and is built on top of the HTML5 video element.
  • mobileplayer-ios – A powerful and completely customizable media player for iOS.
  • mpv – Video player based on MPlayer/mplayer2.
  • ngx-videogular – The HTML5 video player for Angular 2 and successor to videogular2.
  • openplayerjs – Lightweight HTML5 video/audio player with smooth controls and ability to play VAST/VPAID/VMAP ads.
  • plyr – A simple HTML5, YouTube and Vimeo player.
  • replay – A React video player facilitating adaptive stream playback with custom UI and a React-friendly API.
  • shaka-player – JavaScript player library / DASH client / MSE-EME player.
  • Video.js – open source HTML5 & Flash video player.
  • vlc – VLC media player.

Language and Platform-Specific Libraries

iOS Swift

  • FFmpeg-iOS-build – Shell scripts to build FFmpeg for iOS and tvOS.
  • PBJVision – iOS Media Capture – features touch-to-record video, slow motion, and photography.

Javascript

  • channel-engine – VOD to Live Engine Library.
  • jMuxer – A simple javascript mp4 muxer for non-standard streaming communications protocol.
  • ffmpeg.js – Javascript FFmpeg bindings, port of FFmpeg with Emscripten.

Python

  • atvk – Audio/Video toolkit for Python.
  • brave – Basic Real-time AV Editor – allowing you to preview, mix, and route live audio and video streams on the cloud.
  • dash-live-source-simulator – DASH live source simulator providing reference live content.
  • django-video-encoding – django-video-encoding helps to convert your videos into different formats and resolutions.
  • ffmpeg-python – Python bindings for FFmpeg – with complex filtering support.
  • ffmpy – Pythonic interface for FFmpeg/FFprobe command line.
  • hls-analyzer – Analyzer for HTTP Live Streams (HLS) content.
  • hls-relay – Script to pull HLS stream from one origin and push to another origin.
  • hls-to-dash – Open source packager and tools to rewrap live HLS to live MPEG DASH.
  • m3u8 – Python m3u8 Parser for HTTP Live Streaming (HLS) Transmissions.
  • moviepy – Video editing with Python.
  • objective_perceptual_analysis – Objective Perceptual Analysis, Compression Karma Predictor.
  • PyAV – Pythonic bindings for FFmpeg’s libraries.
  • pycaption – Python module to read/write popular video caption formats.
  • pychromecast – Library for Python 3 to communicate with the Google Chromecast.
  • PyLivestream – Simple cross-platform FFmpeg-based live streaming to YouTube, Periscope, Twitch, Facebook Live and more.
  • python-video-converter – Python Video Converter (ffmpeg wrapper).
  • vidgear – High-performance cross-platform Video Processing Python framework powerpacked with unique trailblazing features.
  • vod-to-live – A python library to generate Live HLS from VOD.
  • webm.py – Encode WebM videos.

Go

  • gmf – Go bindings for FFmpeg av* libraries.
  • goffmpeg – FFMPEG wrapper written in GO.
  • go-astisub – Manipulate subtitles in GO (.srt, .stl, .ttml, .webvtt, .ssa/.ass, teletext, .smi, etc.).
  • go-astits – Parse and demux MPEG Transport Streams (.ts) natively in GO.
  • goav – Comphrensive Go bindings for FFmpeg.
  • gst – Go bindings for GStreamer.
  • libgosubs – Subtitle format support for go. Supports .srt, .ttml, and .ass.
  • libvlc-go – Go bindings for libVLC 2.X/3.X/4.X and high-level media player interface.
  • v4l – Video capture library for Linux, written in Go.
  • snickers – An open source alternative to the video cloud encoding services.
Share this post!