andrebrait / service.subtitles.legendastv

Other
9 stars 6 forks source link

Erro ao baixar usando a opção "pack" #3

Closed edjalmobf closed 3 years ago

edjalmobf commented 3 years ago

Olá, @andrebrait! Sei q já comentei esse erro no forum do Kodi mas vou posta-lo aqui novamente como forma de ficar mais organizado e não se perder em uma thread lá. Como descrevi anteriormente o add-on funciona perfeitamente para baixar legendas individuais, até mesmo se essas legendas estiverem dentro de um pack. O erro q menciono acontece quando tentamos usar aquela opção de baixar o pack completo. O erro que aparece é sempre esse: ERROR: OnDownloadComplete - Saving of subtitle /Users/edivagnerbf/Library/Application Support/Kodi/userdata/addon_data/service.subtitles.legendastv/temp/Extracted/b2d86084f4774eb195be4251972fff6b. to special://temp/The Twilight Zone [1x39] The Elevator.pb. failed Verificando a pasta temp é possível ver que o add-on baixa todas as legendas do pack lá, o problema parece acontecer quando ele vai inserir o .pb O log completo pode ser verificado aqui: https://pastebin.com/A8TZDt4f Se o @henricos e o @RobertoHigor puderem dá uma ajuda tbm seria ótimo! De qualquer forma já fico agradecido por vc está usando seu tempo para nos ajudar, @andrebrait! :)

andrebrait commented 3 years ago

@edjalmobf você poderia testar com o código presente aqui no repositório agora? O único problema é que agora o add-on é compatível somente com Kodi 19 em diante, então não sei o quão fácil é pra você testar ele.

edjalmobf commented 3 years ago

@andrebrait fiquei muito feliz ao ver a notificação da sua resposta no meu e-mail :) Obg! Consigo testar sim, inclusive já testei. Meu setup principal ainda usa o Kodi 18, mas instalei o 19 numa outra maquina aqui só para testar. Infelizmente o erro ainda persiste: ERROR <general>: OnDownloadComplete - Saving of subtitle /Users/edivagnerbf/Library/Application Support/Kodi/userdata/addon_data/service.subtitles.legendastv/temp/Extracted/a463a541cdc844fab7d289b20dc306c1. to special://temp/Succession S01E01.pb. failed Ele baixa, extrai a legenda numa pasta temporária mas aí quando vai mover para o local definitivo (creio eu) o erro aparece. Na verdade fiquei ate mais curioso agora pq aparentemente vc não usa nenhum outro add-on para extrair os arquivos, apesar dessa mensagem aqui sempre aparecer: Captura de Tela 2021-07-29 às 22 01 01 Para deixar claro testei com esse add-on da imagem instalado e com o Arquive Support tbm, ambos sem sucesso. Aqui o log completo: https://pastebin.com/bgwcrx8R

Por curiosidade copiei as 3 linhas q vc adicionou nesse commit aqui no mesmo arquivo na versão em python 2 do add-on para ver se funcionava mas tbm não (espero que possa corrigir esse erro na versão python 2 tbm depois).

[Testado na versão 19.1 do Kodi]

andrebrait commented 3 years ago

O suporte a RAR foi removido do vfs.libarchive na versão 19 do Kodi, então eu tive que usar o vfs.rar. A mensagem está te dizendo que você não tem ele ativado, então não deve conseguir extrair arquivos RAR.

Mas a extração funcionou aí. Pelo visto isso devebser um ZIP mesmo.

O commit que você linkou não tem a ver com a cópia de arquivos. É pra outras coisas. :smile:

Você pode ligar o log de debug no Kodi, tentar baixar a legenda e, depois do erro, anexar o log do Kodi (arquivo kodi.log, tem que ver onde ele fica no macOS) aqui?

edjalmobf commented 3 years ago

Acho q a maior parte das legendas no legendas.tv são em .zip, mas já vi algumas em .rar tbm kodi.log Anexei o arquivo completo do log dessa vez (pensei ter selecionado a parte completa só do add-on no log q linkei anteriormente)

andrebrait commented 3 years ago

Você consegue reproduzir com alguma outra legenda além dessa?

Me parece que o arquivo tem um nome meio bizarro, por isso a pergunta.

Andre Brait

On Fri, Jul 30, 2021, 11:35 Edjalmo Bf @.***> wrote:

Acho q a maior parte das legendas no legendas.tv são em .zip, mas já vi algumas em .rar tbm kodi.log https://github.com/andrebrait/service.subtitles.legendastv/files/6906559/kodi.log Anexei o arquivo completo do log dessa vez (pensei ter selecionado a parte completa só do add-on no log q linkei anteriormente)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/andrebrait/service.subtitles.legendastv/issues/3#issuecomment-889769777, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABLX5ORDOMLQ6VFMNP7QZXTT2JW7RANCNFSM4YXHGPSQ .

andrebrait commented 3 years ago

Me desculpe a ignorância, mas como você está habilitando essa opção pack?

andrebrait commented 3 years ago

Consegui reproduzir. Vou dar uma checada depois.

edjalmobf commented 3 years ago

Pack são as legendas de uma temporada de uma série copiladas dentro do mesmo arquivo zip. Quando a legenda é pack aparece o nome (pack) na parte de cima do titulo da legenda no add-on, ai vc clica para baixar e ele abre uma nova janela mostrando todas as legendas, o q seria a ultima legenda fica o nome "pack", vc clica nela e o add-on deveria baixar e renomeava todas as legendas de acordo com o nome do arquivo de video, facilitando muito o trabalho.

Testei com uma outra serie aqui mas o mesmo erro persistiu. Teste com essa aqui agora: http://legendas.tv/download/5edbe9e38266d/Watchmen/Watchmen_S01_1080p_BluRay_x264_SHORTBREHD

andrebrait commented 3 years ago

Sim, eu consegui reproduzir aqui.

O código que faz a cópia na opção pack é separado da cópia normal. Provavelmente ficou pra trás nas atualizações

edjalmobf commented 3 years ago

Entendi @andrebrait. O add-on esta funcionando normalmente para baixar legendas individuais, ate mesmo se elas estiverem dentro de um pack. Só a opção pack mesmo q não funciona.

Ps. uma outra detalhe q deve ter ficado para trás tbm foi o logo do site nesse lugar aqui (onde aparece o do opensubtitles), antes aparecia. Captura de Tela 2021-07-30 às 13 16 54

andrebrait commented 3 years ago

Depois de ver tantos packs que não são identificados como packs, estou na dúvida se vale mesmo a pena manter essa funcionalidade.

O código dessa parte é uma bagunça e não parece haver um jeito fácil de fazer ele funcionar sempre.

O plugin por padrão depende dos dados que o Kodi manda pra ele (que o Kodi recebe dos scrapers) pra saber qual série de TV, temporada e episódio é. Daí, renomear o arquivo é trivial. O próprio Kodi automatiza isso.

Embora eu entenda que é legal ter essa opção no plugin, tem uma pancada de lógica especial pra isso. Estou pensando mesmo em remover isso, ou ao menos desativar por ora.

Não achei até agora uma maneira de fazer ele funciona de forma confiável.

A exemplo: ele só funcionaria pra arquivos mkv, mp4, avi, etc. Se você tiver um formato novo, mesmo que suportado pelo Kodi, não funcionaria. O código é bem frágil (tenta detectar qual arquivo seria pra qual vídeo, etc.). Isso pode dar um pouco de confusão com legendas que são pra especiais, por exemplo (que são agrupados como S00 no TVDB).

andrebrait commented 3 years ago

Entendi @andrebrait. O add-on esta funcionando normalmente para baixar legendas individuais, ate mesmo se elas estiverem dentro de um pack. Só a opção pack mesmo q não funciona.

Ps. uma outra detalhe q deve ter ficado para trás tbm foi o logo do site nesse lugar aqui (onde aparece o do opensubtitles), antes aparecia. Captura de Tela 2021-07-30 às 13 16 54

Ah, valeu. O Kodi mudou umas coisas na API na versão 19. Eu supostamente tinha feito o que era pra adicionar a arte aí, mas pelo visto não funcionou.

edjalmobf commented 3 years ago

Depois de ver tantos packs que não são identificados como packs, estou na dúvida se vale mesmo a pena manter essa funcionalidade.

O código dessa parte é uma bagunça e não parece haver um jeito fácil de fazer ele funcionar sempre.

O plugin por padrão depende dos dados que o Kodi manda pra ele (que o Kodi recebe dos scrapers) pra saber qual série de TV, temporada e episódio é. Daí, renomear o arquivo é trivial. O próprio Kodi automatiza isso.

Embora eu entenda que é legal ter essa opção no plugin, tem uma pancada de lógica especial pra isso. Estou pensando mesmo em remover isso, ou ao menos desativar por ora.

Não achei até agora uma maneira de fazer ele funciona de forma confiável.

A exemplo: ele só funcionaria pra arquivos mkv, mp4, avi, etc. Se você tiver um formato novo, mesmo que suportado pelo Kodi, não funcionaria. O código é bem frágil (tenta detectar qual arquivo seria pra qual vídeo, etc.). Isso pode dar um pouco de confusão com legendas que são pra especiais, por exemplo (que são agrupados como S00 no TVDB).

Entendo essa trabalheira @andrebrait. Pelo q notei ele sempre identificou o q é pack de forma correta comigo. Alias isso me fez prestar mais atenção diretamente no site do legendas.tv se existe alguma forma lá q eles indicam se aquela legenda é pack ou não além do nome do arquivo e acabei encontrando. Observe a foto: Captura de Tela 2021-07-30 às 19 06 12 Todos as legendas pack estão na cor lilás (existem 2 excessões na imagem, mas isso pode ter sido erro do usuário q fez upload, pois na hora de mandar as legendas tem a opção para marcar se é pack ou não). Imagino q tenha algo no código para identificar isso, ou caso não exista deve dá para criar. Sobre o lance de ter q indicar quais são as extensões do arquivo de vídeo, acabam não existindo tantas populares assim. A maioria usada atualmente é o .mkv e .mp4 mesmo. Entendo totalmente q deve dar bastante trabalho fazer isso, q vc já pegou um projeto de outra pessoa, gostaria de poder ajudar com códigos, mas infelizmente não tenho a habilidade. Entre as duas opções q vc falou sou mais a favor de deixar desativado por hora, e não definitivo ˆˆ Abraço!

andrebrait commented 3 years ago

Então, a API do Legendas.tv de fato tem um campo que indica se o negócio é um pack, mas muitos packs não têm esse campo marcado, apesar de serem claramente packs.

Eu incluí alguma lógica pra detectar alguns deles e ao menos tentar organizar de alguma forma.

Eu também mudei algumas coisas que impediam antes que todos os packs fossem incluídos.

Um exemplo: tem gente que faz packs de metade da temporada. Antes esses caras seriam excluídos completamente, dependendo do episódio. Agora não mais. Mas deixo eles mais pra baixo na lista de legendas detectadas.

A ordem agora é:

  1. Packs de verdade (que o Legendas.tv considera packs)
  2. Legendas pro episódio em si
  3. Packs que eu detecto mas não necessariamente são packs pelo Legendas.tv
  4. Packs que eu detecto mas de forma menos confiável
  5. Todas as outras legendas, na ordem que aparecerem no site

Eu sofria um bocado com legendas não aparecerem pra mim no plugin mas aparecerem no site. Isso resolve esse problema.

Mas quanto à função de extrair o pack inteiro, o que eu falei das extensões e tal é o menor dos problemas. Esse esquema todo de baixar legendas no Kodi realmente não foi pensado pra múltiplos arquivos. A extração de packs no plugin realmente é toda manual.

A razão pela qual você recebe aquele erro é porque o Kodi ainda tenta transportar o arquivo rar como a legenda em si, graças a uma falha de lógica no plugin. Até agora o melhor que consegui sem desativar completamente essa função foi outro erro + cópia ser bizarra.

O negócio mesmo é que eu não consigo garantir que eu vou fazer cada arquivo do pack bater com o episódio ao qual ele se refere. É uma lógica meio ruinzinha e se eu usar algo mesmo que um pouco diferente do Kodi eu vou acabar com uma zorra. E como não quero ter que ficar checando qual é a lógica usada por cada scraper, prefiro não ter essa funcionalidade lá.

andrebrait commented 3 years ago

Eu sei que é um pé no saco baixar cada legenda 1 a 1, mas é o melhor que posso fazer por ora. :/

edjalmobf commented 3 years ago

Entendi, @andrebrait. Acho q não tenho mais como contra argumentar kkkkk Isola essa parte mesmo então mas mantem a opção de baixar a legenda individual, mesmo q dentro de um pack, tira só aquela ultima legenda com nome "pack".

Muito obrigado por fazer o port pro python 3! Muita gente vai se beneficiar do seu trabalho!

edjalmobf commented 3 years ago

@andrebrait só mais uma coisinha antes de vc submeter ao repositório do Kodi. Adiciona o RAR archive support aos , para evitar aparecer aquela mensagem de aviso. Ele não vai precisar para a maioria (aparentemente), mas já q vai para os arquivos .rar seria bom já instalar ele, não? Isso e o logo do Legendas.tv e acho q ele ta pronto! Não encontrei nenhum outro problema no add-on :)

andrebrait commented 3 years ago

Não posso adicionar o vfs.rar à lista de exigências do plugin porque nem toda plataforma tem ele e porque ele é um binário específico por plataforma. Não é algo que vem no Kodi e nem algo que é instalável por repositório.

A mensagem é o plugin que manda :-) aquilo não é do Kodi.

Eu verifico se o plugin está ativo. Se não, tento ativar. Se ainda assim estiver inativo, tenho que mostrar a mensagem pro usuário porque arquivos RAR não vão funcionar e a pessoa precisa ativar o add-on.

Você conseguiu instalar ele e se livrar da mensagem?

Sobre o logo, ainda estou vendo.

edjalmobf commented 3 years ago

Esse add-on está no repositório oficial do Kodi, então imaginei q desse para instalar por repositório. Mas tbm tem esse problema q vc falou de ele ser diferente para cada plataforma (Linux, Windows, Android e Mac), o q é esquisito e parece um retrocesso do Kodi, na minha opinião. Consegui instalar ele sim, de boas, sugeri mesmo por conta de outros usuários q possam ter dificuldades.

andrebrait commented 3 years ago

Eu posso colocar um aviso similar caso a legenda em específico seja um RAR. Acho que tenho como saber de antemão.

Andre Brait

On Sat, Jul 31, 2021, 12:09 Edjalmo Bf @.***> wrote:

Esse add-on está no repositório oficial do Kodi, então imaginei q desse para instalar por repositório. Mas tbm tem esse problema q vc falou de ele ser diferente para cada plataforma (Linux, Windows, Android e Mac), o q é esquisito e parece um retrocesso do Kodi, na minha opinião. Consegui instalar ele sim, de boas, sugeri mesmo por conta de outros usuários q possam ter dificuldades.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/andrebrait/service.subtitles.legendastv/issues/3#issuecomment-890324401, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABLX5OUNKVAY7OPWZ7I2CNDT2PDXDANCNFSM4YXHGPSQ .