All Projects → vime-js → Vime

vime-js / Vime

Licence: mit
Customizable, extensible, accessible and framework agnostic media player. Modern alternative to Video.js and Plyr. Supports HTML5, HLS, Dash, YouTube, Vimeo, Dailymotion...

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects
CSS
56736 projects

Projects that are alternatives of or similar to Vime

React Player
A React component for playing a variety of URLs, including file paths, YouTube, Facebook, Twitch, SoundCloud, Streamable, Vimeo, Wistia and DailyMotion
Stars: ✭ 5,931 (+207.62%)
Mutual labels:  vimeo, audio, player, media, dash, hls, youtube, dailymotion
Openplayerjs
Lightweight HTML5 video/audio player with smooth controls and ability to play VAST/VPAID/VMAP ads
Stars: ✭ 255 (-86.77%)
Mutual labels:  audio, player, dash, hls, html5
Magicalexoplayer
The Easiest Way To Play/Stream Video And Audio Using Google ExoPlayer In Your Android Application
Stars: ✭ 171 (-91.13%)
Mutual labels:  audio, player, dash, hls
Video.js
Video.js - open source HTML5 & Flash video player
Stars: ✭ 32,478 (+1584.54%)
Mutual labels:  player, dash, hls, html5
Html5 Dash Hls Rtmp
🌻 HTML5播放器、M3U8直播/点播、RTMP直播、低延迟、推流/播流地址鉴权
Stars: ✭ 1,805 (-6.38%)
Mutual labels:  player, dash, hls, html5
php-video-url-parser
A Simple and efficient PHP Video URL Parser that provides you thumbnails and embed codes for various video streaming websites
Stars: ✭ 57 (-97.04%)
Mutual labels:  youtube, vimeo, embed, dailymotion
Plyr React
A simple, accessible and customisable react media player for Video, Audio, YouTube and Vimeo
Stars: ✭ 89 (-95.38%)
Mutual labels:  vimeo, player, media, youtube
Min Vid
Popout video player in Firefox
Stars: ✭ 180 (-90.66%)
Mutual labels:  vimeo, audio, player, youtube
Awesome Video
A curated list of awesome streaming video tools, frameworks, libraries, and learning resources.
Stars: ✭ 397 (-79.41%)
Mutual labels:  audio, player, dash, hls
Sjmediacacheserver
A HTTP Media Caching Framework. It can cache FILE or HLS media. 音视频边播边缓存框架, 支持 HLS(m3u8) 和 FILE(mp4, mp3等).
Stars: ✭ 87 (-95.49%)
Mutual labels:  audio, player, media, hls
React Cassette Player
Simple ReactJS HTML5 audio player component built with SVG icons from The Noun Project.
Stars: ✭ 93 (-95.18%)
Mutual labels:  audio, player, html5
Mediaelement Files
Sample media files (MP4, WebM, Ogv, MP3, etc.) for the MediaElement.js library
Stars: ✭ 92 (-95.23%)
Mutual labels:  audio, dash, hls
Plyr
Plyr Mediaplayer (Video und Audio) im Front- und Backend
Stars: ✭ 30 (-98.44%)
Mutual labels:  vimeo, player, youtube
Hls.js
HLS.js is a JavaScript library that plays HLS in browsers with support for MSE.
Stars: ✭ 10,791 (+459.7%)
Mutual labels:  player, hls, html5
P2p Media Loader
An open-source engine for P2P streaming of live and on demand video directly in a web browser HTML page
Stars: ✭ 822 (-57.37%)
Mutual labels:  player, dash, hls
Mediaelement
HTML5 <audio> or <video> player with support for MP4, WebM, and MP3 as well as HLS, Dash, YouTube, Facebook, SoundCloud and others with a common HTML5 MediaElement API, enabling a consistent UI in all browsers.
Stars: ✭ 7,767 (+302.85%)
Mutual labels:  dash, hls, html5
Freemp
Free Media Player (FreeMp)
Stars: ✭ 97 (-94.97%)
Mutual labels:  audio, player, media
Hlsjs P2p Engine
Let your viewers become your unlimitedly scalable CDN.
Stars: ✭ 759 (-60.63%)
Mutual labels:  player, hls, html5
Youtube Html Js Audio Player
An audio player created with HTML Audio and Javascript 🚀
Stars: ✭ 39 (-97.98%)
Mutual labels:  player, youtube, html5
Menutube
Catch YouTube into your macOS menu bar! 🦄
Stars: ✭ 102 (-94.71%)
Mutual labels:  audio, media, youtube
Vime Logo

Vime is a customizable, extensible, accessible and framework agnostic media player.

package-badge license-badge semantic-release-badge Release docs-badge jsdelivr-badge discord-badge

Vime 2 - Video Player Screenshot

Features

  • 🎥  Multi-provider support (HTML5, HLS, YouTube, Vimeo etc.).
  • 👑  One API to rule them all! Don't re-learn anything the next time you need a player.
  • ♾️  Avoid cross-browser differences on media related APIs, such as fullscreen and picture-in-picture.
  • 👐  Accessible to all via ARIA roles/states/properties and keyboard support.
  • 🌎  I18N support.
  • 🖥  Designed with both mobile and desktop in mind.
  • 👌  Touch input friendly.
  • 🎨  Style anything you want with CSS variables. Default light and dark themes are included.
  • 🏎️  Performant with preconnections + lazy loading of components and media out of the box.
  • 🧩  Easily build your own components and extend Vime.
  • 🗑️  Lightweight - ~25kB (gzip) standalone, and ~47kB with the default Vime UI.
  • 🧰  Awesome default custom UI's for audio/video/live media.
  • 🛠  Comprehensive player API with a heap of properties, methods and events.
  • 💪  Built with TypeScript so you can enjoy completely typed components.
  • 🏠  Feel right at home with HTML/CSS/JS thanks to web components.
  • 🏗️  Framework specific bindings for React, Vue, Svelte, Stencil and Angular.

🍭 Examples

The examples below are using web components but there are bindings for React, Vue, Svelte, Stencil and Angular. If you want to see how they look check out our Demo.

<vm-player autoplay muted>
  <vm-video poster="/media/poster.png" cross-origin>
    <!-- Why `data-src`? Lazy loading. You can always use `src` if you don't need it. -->
    <source data-src="/media/video.mp4" type="video/mp4" />
    <track
      default
      kind="subtitles"
      src="/media/subs/en.vtt"
      srclang="en"
      label="English"
    />
  </vm-video>

  <!-- Loads the default Vime UI. -->
  <vm-default-ui />
</vm-player>

Native UI?

<!-- Here we are requesting to use the native controls. -->
<vm-player autoplay muted controls>
  <vm-audio cross-origin>
    <source data-src="/media/audio.mp3" type="audio/mp3" />
  </vm-audio>
</vm-player>

Custom UI?

<!-- Lets add a little splash of color throughout the player. -->
<vm-player autoplay muted style="--vm-player-theme: #1873d3">
  <!-- Loading a YouTube video. -->
  <vm-youtube video-id="DyTCOwB0DVw" />

  <vm-ui>
    <vm-click-to-play />
    <vm-captions />
    <vm-poster />
    <vm-spinner />
    <vm-default-settings />
    <vm-controls pin="bottomLeft" active-duration="2750" full-width>
      <!-- 
        These are all predefined controls that you can easily customize. You could also build 
        your own controls completely from scratch.
      -->
      <vm-playback-control tooltip-direction="right" />
      <vm-volume-control />
      <vm-time-progress />
      <vm-control-spacer />
      <vm-caption-control />
      <vm-pip-control keys="p" />
      <vm-settings-control />
      <vm-fullscreen-control keys="f" tooltip-direction="left" />
    </vm-controls>
  </vm-ui>
</vm-player>

🏗️ Frameworks

There are framework specific bindings for:

Keep in mind, that at its core Vime is still simply web components. Even if your framework is not mentioned in the list above, it most likely still supports Vime natively. You can check here if your framework has complete support for web components.

There are also examples for loading and using Vime with:

🖥️ Browsers

Vime is forward thinking and built for the modern web. All ES6 Compatible browsers are supported, some of which are listed below.

  • Edge 79+
  • Firefox 68+
  • Chrome 61+
  • Safari 11+
  • iOS Safari 11+
  • Opera 48+

🎥 Providers

📖 Documentation

Documentation can be found at https://vimejs.com.

🙋 Support

Feel free to join our Discord channel if you'd like help with anything related to Vime. Please remember to be respectful and patient as this is a community driven project.

🔨 Contributing

If you'd like to contribute and help in building a better media player for the web, then everything you need to get started can be found in the Contributing Guide.

❤️ Sponsors

A huge thanks to our sponsors who support open-source projects like Vime.

mux vercel cypress
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].