Sobre o projeto

O Jellyfin MPV Shim é um cliente desktop multiplataforma para Jellyfin que usa o MPV como mecanismo de reprodução. Ele pode ser executado em segundo plano como alvo de cast ou atuar como cliente desktop completo com suporte a sincronização offline. Recursos principais descritos no README: - Reprodução direta da maioria das mídias através do MPV, evitando transcodificação para arquivos de mídia avançados. - Modo cast-target ("shim"): os aplicativos móvel e web do Jellyfin podem controlar o cliente remotamente. - Suporte a SyncPlay para assistir vídeos com amigos, com ressalvas documentadas sobre entrar em grupos durante o cast e sobre parar a reprodução. - TV ao vivo: guia de canais, canais, gravações, agendamento e regras de gravação de séries, com gravação disponível diretamente nas listagens. - Troca rápida de usuário: vários usuários locais, cada um com seus próprios logins de servidor e identidade de dispositivo, além de proteção opcional por PIN descrita como conveniência de controle parental, e não como limite de segurança. - Livros e audiolivros: audiolivros reproduzem e retomam como áudio, com controles de capítulo para .m4b de arquivo único; ebooks são baixados e abertos porque o Jellyfin não serve conteúdo de livro página por página. O progresso de leitura é manual (Pull/Push) para PDFs e quadrinhos. - Pacotes de shaders com FSRCNNX e Anime4K pré-configurados, além de integração com SVP para interpolação de quadros. - Espelhamento de tela, ativado por padrão, mostrando um item de cast antes da reprodução. - Modo headless que restringe a máquina ao uso como cast-target, explicitamente não sendo um recurso de segurança. - Atalhos de teclado do MPV, menu baseado em texto, gatilhos de comandos shell, Discord Rich Presence e ampla configuração via arquivos de configuração e uma opção externa do MPV. Caminhos de instalação mencionados: binário para Windows nas releases, Flathub ou pip no Linux, e uma seção separada para macOS. Recomenda-se MPV 0.41 ou mais recente. Limitações conhecidas incluem ausência de reprodução de música sem intervalos planejada, fragilidade do SyncPlay e pacotes de shaders sensíveis ao hardware gráfico (com uma flag de recuperação --reset-shaders).