Git Product home page Git Product logo

zoriya / kyoo Goto Github PK

View Code? Open in Web Editor NEW
1.1K 9.0 21.0 93.78 MB

A portable and vast media library solution.

Home Page: https://kyoo.zoriya.dev

License: GNU General Public License v3.0

C# 51.32% Shell 0.08% Dockerfile 0.33% TypeScript 38.15% RobotFramework 0.20% JavaScript 0.53% Nix 0.05% Python 4.64% Go 4.71%
dotnet mediabrowser ffmpeg next python react-native docker self-hosted golang jellyfin

kyoo's People

Contributors

arthi-chaud avatar dependabot[bot] avatar zoriya 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  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  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  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  avatar  avatar

Forkers

jtone123 gitbluub

kyoo's Issues

[BUG] Navigating to the webapp's player from a link does not work.

Describe the bug
When the user start the webapp with a direct link to the watch page, an empty page is returned with errors in the console.

To Reproduce
Steps to reproduce the behavior:

  1. Get a /watch link from the web app
  2. Open a new tab and use the link
  3. Look at the empty page and errors in the console.

Environment:

  • Platform: Any
  • Version: 0221cb7 (master)

[FEATURE] Sort by added time

Is your feature request related to a problem? If yes, please describe.
When a show was just added to Kyoo, we might want to access it quickly to watch it

Describe the feature you'd like
From the Home Page, on the sort dropdown, add the option to sort the show by the add time (most recent first)

Describe alternatives you've considered
Having to scroll down to the said show, which is redondant when we have a massive library

[BUG] When a video is not compatible with the player, a message should be displayed

Describe the bug
When a video takes too long to transmux/transcode, or is not compatible with Kyoo, nothing hapens, and the user might wait.

To Reproduce
Play a heavy file, for example

Expected Behavior
When a video takes too long to transmux/transcode, or is not compatible with Kyoo, a message should warn the user.
Environment:

  • Platform macOs X
  • Prebuilt version from commit 'b8022a6'

[FEATURE] Clear Cache

Is your feature request related to a problem? If yes, please describe.
The cache is not cleared periodically

Describe the feature you'd like
An automation from Kyoo that clears the cache on a regular basis'.
Describe alternatives you've considered
rm -rf cache

[BUG] Scrolling down to the bottom

Describe the bug
When we scroll down to the bottom of the page before the rest of the movie list is loaded (very quickly, like when we know what show we want), the loading is interrupted, until we scroll up a little bit.

To Reproduce
Scroll down to Kyoo's main page very quickly, before the end of the list is loaded.

Expected Behavior
We'd expect the list to load progressively, like it does when we scroll normally.

Environment:

  • Platform: macOS
  • Prebuilt version from commit 'b8022a6'

[FEATURE] Create Custom Collections

Is your feature request related to a problem? If yes, please describe.
I want to create a collection that does not exist on a provider, for example for concert movies.

the problem is, if the collection is not known, it doesn't create a metadata folder, and the 'Image' field in the 'Collection' table in the db is set to null. As long as it'll stay null, the metadata will not be taken into account

Describe the feature you'd like
I would like to be able to create a collection myself, by move related films to a collection folder, and give an illustration to it.

Describe alternatives you've considered
To create 'my' collection, I had to create a metadata folder, put illustrations (poster/thumbnail.jpe) and set the 'Image' field in the 'Collection' table in the db to dummy values.

Create a good CI

  • Building on windows should compile the transcoder.
  • Build the app and allow builds to be downloaded for linux.
  • Build the app and allow builds to be downloaded for windows.
  • Create a good dotnet-publish function which should replae the install.sh/Makefile.
  • The dotnet-publish should create a systemd file for linux.
  • The dotnet-publish should create a windows service for windows (I think).
  • New versions of the common should be published to nuget automatically.

[FEATURE] List View

Describe the feature you'd like
Display the shows like a list, instead of a poster list. It is handy when we want to look for a title instead of a poster.

It could look something like this:
image

[FEATURE] Add a 'Setting-up' Section to Readme

Is your feature request related to a problem? If yes, please describe.
When we want to use Kyoo for the first time, we don't know what to do.

Describe the feature you'd like
Add a 'Set up' section and some requirements in the main README.md

Describe alternatives you've considered
Have AnonymusRaccoon next to you

[FEATURE] Create a quickstart

Describe the feature you'd like
Users should be able to configure Kyoo with a nice UI instead of having to change the settings.json file and doing curls to add libraries.

Describe alternatives you've considered
Edit the settings and follow the SettingUp section.

[BUG] Filtering by multiple staff members 500

Describe the bug

GET /api/show?people=agnes-b results in a 500. The ApiHelper convert this to an expression with DbSet<Show>().Where(x => x.People.Any(y => y.Slug == "agnes-b")) but the Slug property does not exist for PeopleRole on the database.

Environment:

  • Platform: X
  • Action Version: f4ba5c5
  • Database: Postgres (& SqLite i believe)

[FEATURE] Better Highlight for Unsupported Subtitles

Is your feature request related to a problem? If yes, please describe.
When a show contains subtitles tracks, their appear in Kyoo's play screen's subtitle popup.
If the track is not supported (ie is a bitmap subtitle format), the option is greyed.

When none of the track is supported, they are all in grey, and we don't know they are disabled

Describe the feature you'd like
If a subtitle track is not supported, it should be written. Like "Unsupported"

[BUG] Editing a item's metadata using metadata provider's id causes an error

Describe the bug
When we want to change a movie's metadata using a film's ID from a metadata provider, an error message pops up, and the metadata is not changed.

To Reproduce
Steps to reproduce the behavior:

  1. From a movie's page, click 'Edit metadata' in the popup menu
  2. Scroll down to section 'Search on metadata providers'
  3. Set the move's id to the correct one
  4. the error pops up

Expected Behavior
We expect the metadata form to close, and the movie's page to be refreshed, displaying the correct info.

Environment:

  • Platform : macOS X
  • Prebuilt version, from commit 'b8022a6'

[BUG] Split movie and show

The api has the same data type for movies and shows and uses the bool isMovie to distinguish the two, this is kinda awkward,

[BUG] When a title contains a special character, the show is never identified

Describe the bug
When a show has a title with a special character in it (for example 'é', 'à', 'ç', ...), even if it matches the metadata provider, the metadata is not added in Kyoo

To Reproduce
Have a movie titled 'Asterix & Obelix Mission Cléopâtre'

Expected Behavior
We'd expect the metadata to be shown in Kyoo

Environment:

  • Platform: mac Os X
  • Prebuilt version from commit 'b8022a6'

[FEATURE] Housekeeping Flushing Guard

Is your feature request related to a problem? If yes, please describe.
In the case where a library is stored on an external drive, when that drive is unavailable, the housekeeping task considers the files do not exists anymore, therefore, the db is flushed.

Describe the feature you'd like
There should be a guard in the housekeeping task, keeping the task from deleting everything if none of the file in the library is found.

Describe alternatives you've considered
This problem happended to me several times, thank the lord of Kyoo, I work in a macOs with Timemachine enabled and a backup drive plugged in at all time. I could resotre the db to a previous state.

Additional context
The practical case is the following: I have a service that executes Kyoo at startup, but my Drive takes time to be recognised by my machine. Therefore, if Kyoo is initialized before my Drive, the db is flushed, and at the next scan, the whole library will be rescanned

[FEATURE] Support Posters embedded in File

Describe the feature you'd like
On show scan, just like it does with subtitles, export posters embedded in file

Describe alternatives you've considered
Using ffmpeg to export each poster manually

Additional context
With iTunes, the posters are not stored in a seperate jpg file, it embeds the poster within the file

Create a websocket based API

Meta issue that should regroup

  • Playback information (when the user start playing, pausing, pings with the timer...)
  • Tasks information (one started, queued, finished, error...)
  • CUD (of any resource)

[BUG] Sanitize ffmpeg's output

Describe the bug
Currently the output of ffmpeg is considered trustworthy, if the value of language is unknown instead of the standard unk it breaks

To Reproduce
Simply have a track with unknown instead of unk and see the Track's internal slug setter throw on database reads.

[BUG] Hidden files should not be taken into account

Describe the bug
When there is a hidden file in a show's folder (maybe a temporary file, like .DS_STORE, or ._my_movie.ext), it should not be scanned by default.

To Reproduce
Touch a file ._movie.ext in movie/

Expected Behavior
We don't want to see the trace of a hidden file's scan in the log

Environment:

  • Platform: macOs
  • Prebuilt version from commit 'b8022a6'

[BUG] Collection does not always gather all films

Describe the bug
In some cases, movies in a collections may not appear like they belong to it.
hp
pa

The cases were it works or don't are not known

To Reproduce
Steps to reproduce the behavior:

  1. Move all film folders in a collection folder (for example: 'Harry Potter 4' in 'Harry Potter')

Expected Behavior
We expect all the films to be in the said collection

Environment:

  • Platform macOs
  • Prebuilt version from commit 'b8022a6'

[FEATURE] Display Playtime

Describe the feature you'd like
On a show's page, display the video's playtime

Describe alternatives you've considered
Cringe

[FEATURE] The Staff's order should not be alphabetical

Describe the bug
On a show's page, the staff's list displays the members orders by name, in alphabetical order.

To Reproduce
Steps to reproduce the behavior:

  1. On a show's page
  2. Scroll down to the 'Staff' section

Expected Behavior
We'd expect the main actors or the main movie makers to be displayed first, then supporting actors, etc.
for example: in the movie 'sister act', we'd expect Whoopi Goldberg to be seen first. Since her name starts with a 'W', we don't even see her in the list.

Environment:

  • Platform: macOs X
  • Prebuilt version from commit 'b8022a6'

[FEATURE] Display more Collection's info

Describe the feature you'd like
On a collection's page, we would like to see an overview text and it's banner/thumbnail. The overview is stored in the database, but is not used.

[FEATURE] Launch a Scan/housekeeping task using User Interface

Describe the feature you'd like
From User interface, we should be able to execute a scan or housekeeping task

Describe alternatives you've considered
Going to '/api/task/housekeeping' and '/api/task/scan'

Additional context
Handy when a movie was just added, and we want it to be shown in Kyoo

[FEATURE] Choose Metadata Provider Languages

Is your feature request related to a problem? If yes, please describe.
The movie 'The Purge' is titled 'American Nightmare' in Europe.
Therefore, having the movie 'American Nightmare' fetch the metadata from another film with the same title, completely unrelated.

Describe the feature you'd like
Somewhere, maybe in the settings.json, be able to set the language used to fetch data from the metadata provider

Describe alternatives you've considered
Rename the movie in the OG language

[FEATURE] Direction Download Season

Is your feature request related to a problem? If yes, please describe.
When we want to download a whole season, we have to download individually each episode. It becomes repetitive with seasons including 10+ episodes

Describe the feature you'd like
Adding a download button that creates an archive of the episodes and downloads it

Describe alternatives you've considered
Download each episode individually

[FEATURE] Metadata Provider badges on Show pages

Is your feature request related to a problem? If yes, please describe.
Being a Plex user, we use to see a score near the metadata provider logo on a Show's page. In Kyoo, the logo is a button, and we don't it is one until we click it (if we ever click it)

Describe the feature you'd like
Change layout to make the logos appear more like buttons than simple, non interactive images.

Additional context
This is from a Plex user, maybe a non-user sees it a different way?

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.