All Projects → YePpHa → Crunchyroll Html5

YePpHa / Crunchyroll Html5

Licence: mit
A fully fledged HTML5 player for Crunchyroll.

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Crunchyroll Html5

Scratchaddons
All-in-one browser extension for Scratch.
Stars: ✭ 133 (-24%)
Mutual labels:  chrome, firefox, userscript
Artplayer
🎨 ArtPlayer.js is a modern and full featured HTML5 video player
Stars: ✭ 484 (+176.57%)
Mutual labels:  player, subtitle, html5
Lazy
Kule Lazy4 / CSS Framework
Stars: ✭ 147 (-16%)
Mutual labels:  chrome, firefox, html5
Awesome Meta And Manifest
⚡ Awesome collection of meta tags & manifest properties.
Stars: ✭ 499 (+185.14%)
Mutual labels:  chrome, firefox, html5
Melonjs
a fresh & lightweight javascript game engine
Stars: ✭ 3,721 (+2026.29%)
Mutual labels:  chrome, firefox, html5
Gm
UserScripts for Firefox, Chrome and etc
Stars: ✭ 127 (-27.43%)
Mutual labels:  chrome, firefox, userscript
Surfingkeys Conf
A SurfingKeys configuration which adds 130+ key mappings for 20+ sites & OmniBar search suggestions for 50+ sites
Stars: ✭ 137 (-21.71%)
Mutual labels:  chrome, firefox
Synology Download Manager
An open source browser extension for adding/managing download tasks to your Synology DiskStation.
Stars: ✭ 138 (-21.14%)
Mutual labels:  chrome, firefox
Github Mermaid Extension
A browser extension for Chrome, Opera & Firefox that adds Mermaid language support to Github
Stars: ✭ 170 (-2.86%)
Mutual labels:  chrome, firefox
Timecat
A Magical Web Recorder & Player 🖥
Stars: ✭ 1,955 (+1017.14%)
Mutual labels:  player, chrome
Codenav
Better code navigation in github
Stars: ✭ 133 (-24%)
Mutual labels:  chrome, firefox
Extension
Simple browser extension for managing accounts in a browser and allowing the signing of extrinsics using these accounts. Also provides a simple interface for compliant extensions for dapps.
Stars: ✭ 139 (-20.57%)
Mutual labels:  chrome, firefox
Pronounce
Never doubt how to pronounce a word. Double-click it and your browser will say it out loud for you!
Stars: ✭ 151 (-13.71%)
Mutual labels:  chrome, firefox
Xstyle
A user styles manager for Firefox and Chrome
Stars: ✭ 138 (-21.14%)
Mutual labels:  chrome, firefox
Keepassbrowserimporter
KeePass 2.x plugin which imports credentials from various browsers.
Stars: ✭ 139 (-20.57%)
Mutual labels:  chrome, firefox
Passcards
A 1Password-compatible command-line and web-based password manager
Stars: ✭ 134 (-23.43%)
Mutual labels:  chrome, firefox
Ngx Currency
📦 Currency mask module for Angular
Stars: ✭ 161 (-8%)
Mutual labels:  chrome, firefox
Webfundamentals
Best practices for modern web development
Stars: ✭ 12,335 (+6948.57%)
Mutual labels:  chrome, html5
Firessh
free, cross-platform SSH terminal client for Firefox and Chrome
Stars: ✭ 173 (-1.14%)
Mutual labels:  chrome, firefox
Sponsorblock
Skip YouTube video sponsors (browser extension)
Stars: ✭ 3,627 (+1972.57%)
Mutual labels:  chrome, firefox

HTML5 player for Crunchyroll

Latest release Greenkeeper badge

We really don't like flash and want it killed ASAP. However, there's currently no HTML5 player available for Crunchyroll without having a subscription. So this is the answer.

Features

  • A fully fledged HTML5 player that looks and feels a lot like YouTube's player.
  • Change video quality in the player.
  • Change subtitles in the player (using libass with JavascriptSubtitlesOctopus).
  • Speed controls.
  • Auto-play the next video.
  • Shortcuts (see list of shortcuts)

Download

Chrome extension: https://chrome.google.com/webstore/detail/crunchyroll-html5/ihegfgnkffeibpmnajnoiemkcmlbmhmi

Firefox addon: https://addons.mozilla.org/en-US/firefox/addon/crunchyroll-html5-unofficial/

Screenshots

Preview

Subtitle Engine

The browser is really bad at displaying subtitles so I had to find a library that's able to render SSA/ASS subtitles. I've looked into just using WebVTT, but Chrome was not really able to render them without a big black box around them.

So I've decided on using JavascriptSubtitlesOctopus, which is an emscripten project that makes libass work in the browser with font support. However, I've been required to make some changes to the project to allow for dynamically loading the default.ttf file and the fonts.conf file. I've also implemented a way to change the subtitle track without needing to restart the WebWorker that's running the engine.

All modifcations can be found here.

Build

Building this project will result in a crunchyroll-html5.user.js file in the /dist directory. To make it run on Crunchyroll you need to prepend a userscript header that allows for script execution on http://www.crunchyroll.com/*. I've currently not made it able to build for each browser or userscript.

Before building make sure that you have installed Node.js and Yarn (optional). After that you're required to install the project dependencies through either Yarn.

Building is done by running the script build:

$ yarn build

Packaging

You can package the legacy Firefox addon as firefox.xpi (unsigned as it's not possible to sign it anymore) and the Web Extension as webextension.zip (signable see below).

$ yarn package:firefox
$ yarn package:webextension

Firefox Signing

You're able to sign the Web Extension. However, you need an API key and an API secret to be able to sign the Web Extension (you can get one here). If you leave the ID of the extension empty a new one will be generated. You can use the generated ID in the future to update the extension instead of creating new extensions every update.

$ yarn sign:webextension --key <API KEY> --secret <API SECRET> --id <ID>

TODO

  • Add support for tracking progress
    • Chrunchyroll
      • Tracking episodes watched
      • Use Crunchyrolls resume feature.
    • Kitsu
      • Tracking episodes watched
    • MyAnimeList
      • Tracking episodes watched
    • Local
      • Tracking episodes watched
      • Tracking what you've watched in a video.
      • Resume videoes that you haven't completely watched yet.
    • ...
  • Add option to change subtitles to other languages. Currently, only the default subtitle is displayed (in most cases this will be English).
  • Add more fonts. Currently, only Arial is available. Should be quite easy, but some testing needs to be done for this.
  • Consider moving the quality selection into the player.
  • Look into adding Chromecast support.
  • Add an endscreen to indicate the user has finished the currently episode and perhaps automatically go to the next episode.
  • Add multiple versions of this project for userscripts, Chrome, Firefox and more.
  • Add a way for the player to remember user choices as how high or low the volume is.
  • Look into reducing the size of the code in the userscript.

Main Libraries

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].