Giter Club home page Giter Club logo

jellyfin-plugin-streamlink's Introduction

Deprecation

This plugin has been updated to (mostly) work with Jellyfin 10.7, but I noticed some persistent issues with Jellyfin on Roku, which was the original purpose of this project. Since I only use this every 4 months or so, I've decided that I'd rather give in to Amazon and buy a fire stick to use a real Twitch app instead of debugging Jellyfin server and Roku every time I want to use it.

The implementation for this has always been tied to internal libraries for Jellyfin, which means that it's pretty brittle to updates. So rather than learning a lot about the internals of Jellyfin and rewriting this to be more stable, I'll retire it and leave the repo up as an example if anyone finds it useful.

Jellyfin Streamlink Plugin

A plugin for the Jellyfin Project

to work with Streamlink

This plugin is built with .NET Core to use Streamlink as a channel provider for Jellyfin.

Some Notes About This Project

First and foremost, this plugin is not an official plugin adopted by the Jellyfin project. Do not bother the Jellyfin dev team for any issues related to it.

This is a plugin to watch various livestream sites through Jellyfin. Generally I would advise against using this and instead using those sites' apps directly, since they will be more maintained. The initial work was done on this as a weekend project and the motivation was that certain livestreaming platforms don't have first party (or even third party) apps on certain devices (e.g. Amazon pulled all Twitch apps from Roku).

This plugin uses Jellyfin like a proxy to those services, provided that Streamlink supports the streaming platform and Jellyfin has a client on the target device.

At the time of writing, Jellyfin is going through some rather large internal refactoring, which means this plugin may or may not work for very long. Additionally, there are some issues with creating a live streaming plugin; basically the internals of Jellyfin aren't very modular in this area (yet). This means that to build this project, it relies on some concrete implementations in the older Emby codebase (though this is fairly irrelevant to end users). For various reasons, I've chosen not to request this plugin be adopted or featured as "official", at least not until I have more time to maintain it. If anyone wants to maintain this plugin beyond basic functionality, feel free to fork it and even talk with Jellyfin team yourself.

In any case, there are some features that I would like to add before aiming at a "wide release": theres no indication that a stream is offline (loading just hangs), there's not a lot of error reporting through the Web UI, and the configuration for adding a stream could be better. I'd also like to have better testing on Jellyfin's supported platforms, currently I only run this on Linux/Ubuntu 18.04.

Build Process

  1. Clone or download this repository

  2. Ensure you have .NET 5.0+ SDK setup and installed

  3. Copy Emby.Server.Implementations.dll from an existing Jellyfin install into the repo root

  4. Build plugin with following command.

dotnet publish --configuration Release --output bin

Installation Process

  1. Place the dll file in the plugins folder under the program data directory or inside the portable install directory. E.g. .../plugins/Streamlink/Jellyfin.Plugin.Streamlink.dll

  2. Restart jellyfin

  3. Log in through the Web UI and change the plugin settings to point to your installation of Streamlink and add streams.

jellyfin-plugin-streamlink's People

Contributors

musi13 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jellyfin-plugin-streamlink's Issues

Repository

Would be nice to have a Jellyfin repository created for this.

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.