Analyzes the audio of television episodes to detect and skip over intros.
[![CodeQL](https://github.com/jumoog/intro-skipper/actions/workflows/codeql.yml/badge.svg)](https://github.com/jumoog/intro-skipper/actions/workflows/codeql.yml)πππ Jellyfin 10.8 Instructions
ffmpeg
must be installed, version 6.0.1-5
or newer
jellyfin/jellyfin
10.9.z container: preinstalledlinuxserver/jellyfin
10.9.z container: preinstalledjellyfin-ffmpeg6
packageShow introductions will be detected if they are:
Ending credits will be detected if they are shorter than 4 minutes.
These parameters can be configured by opening the plugin settings
https://raw.githubusercontent.com/jumoog/intro-skipper/master/manifest.json
--enable-chromaprint
)Fix any permission mismatches between the web folder and Jellyfin server
Official Jellyfin Docker: The container is being run as a non-root user while having been built as a root user, causing the web files to be owned by root. To solve this, you can remove any lines like User: 1000:1000
, etc. from the Jellyfin Docker Compose file.
LinuxServer Docker Container: Set an environment variable DOCKER_MODS=ghcr.io/jumoog/intro-skipper
to ensure the permissions are set correctly for the skip button:
services:
jellyfin:
image: lscr.io/linuxserver/jellyfin:latest
container_name: jellyfin
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- DOCKER_MODS=ghcr.io/jumoog/intro-skipper
Install from distro repositories - the jellyfin-server will execute as jellyfin
user while the web files will be owned by root
, www-data
, etc. This can likely be fixed by adding the jellyfin
user (or whichever user executes the jellyfin server) to the same group that owns the jellyfin-web folders. You should only do this if they are owned by a group other than root.
brew uninstall --force --ignore-dependencies ffmpeg
brew install chromaprint amiaopensource/amiaos/decklinksdk
brew tap homebrew-ffmpeg/ffmpeg
brew install homebrew-ffmpeg/ffmpeg/ffmpeg --with-chromaprint
brew link --overwrite ffmpeg
whereis ffmpeg
<EncoderAppPath>[FFMPEG_PATH]</EncoderAppPath>
<EncoderAppPathDisplay>[FFMPEG_PATH]</EncoderAppPathDisplay>
Documentation about how the API works can be found in api.md.