(Mythbuntu) Após a atualização para o XBMC 11, o Mythbox agora diz “não é possível importar o nome decodeLongLong”?

3

As estatísticas vitais:
Mythbuntu 10.10 (maverick)
XBMC 11 - de team-xbmc maverick ppa
Mythtv 0.23.1 + correção (a versão padrão para o mythbuntu 10.10)
Mythbox versão 1.1.0

OK, então, eu estava feliz em ir executando o XBMC 10.1 na minha configuração HTPC, e vi que todos estavam animados com o XBMC 11, e estava disponível no PPA.

Agora, quando entro no mythbox e seleciono uma gravação, ele mostra a seguinte caixa de mensagem de erro:

Error: oninit

cannot import name decodeLongLong

Isso só parece afetar sua capacidade de exibir uma imagem em miniatura para a gravação. Quando começo a gravar, tudo corre bem.

O que essa mensagem de erro significa? Existe alguma maneira que eu possa consertar isso? Existe uma biblioteca que estou faltando ou algo assim?

Editar: publiquei mais alguns detalhes nos comentários aqui.

    
por Josh 25.03.2012 / 03:40

3 respostas

2

O Mythbox foi escrito em Python, cannot import name é uma exceção típica do Python .

Isso não tem nada a ver com o fuso horário, já que outros tendem a acreditar, mas sim porque o Python está tentando importar algo que não existe ou que, pelo menos, é inacessível.

decodeLongLong é uma função que podemos encontrar na API MythTV ; note que esta função é escrita em C ++ e, portanto, não é acessível a partir do Python, portanto, deve ser feito algo para que esta função esteja disponível em Python. Exatamente, os blocos de tradução em C ++ podem ser compilados e usados pelo código Python .

Exatamente, o wrapper do Python para chamar as funções do C ++ não parece conter uma função decodeLongLong no momento. Você terá que aguardar a resposta para a edição 203 ; embora você possa tentar instalar o MythTV de atualização, porque essa pode ser uma função relativamente nova. a API menciona 0.25-pre na primeira página. Portanto, se você estiver confortável executando o código de ponta, poderá tentar fazer upgrade de 0.23.1 para 0.25-pre ; se não, vá para a versão 0.24 mais recente e veja se isso funciona.

Isso atualizaria o wrapper do Python que Mythbox está usando e, esperamos, colocará a função lá. Você pode precisar reinstalar o Mythbox se isso acontecer dinamicamente, o código-fonte não mostra nenhum vestígio disso, mas pode ser que algo seja feito através do gerenciador de pacotes. É melhor prevenir do que remediar.

Você não precisa atualizar mais nada ...

    
por 28.03.2012 / 13:50
0

(Um não-usuário do XBMC tentando ajudar.)

Você relatou esse bug como Problema 203 no fórum do mythbox.

Por incrível que pareça, encontro traços de um bug semelhante nos fóruns mitos que remontam a:

Problema 6: a conversão do fuso horário falha com o tronco atual (se tornará 0,24) < br> Problema 7: Patch para / trunk / mythcal para corrigir "não pode importar o nome MythTV" error
Problema 8: Precisa do pacote libmyth-python para o Fedora

Esse problema parece estar relacionado ao fuso horário e pode ter sido ativado até mesmo por algo tão banal quanto a alteração do horário de verão.

Como este problema está marcado como resolvido nos fóruns míticos (que podem ou não ter uma influência sobre o mythbox), pode valer a pena atualizar todas as versões de todos os softwares para as últimas indo até a versão do tronco, se necessário.

Se o bug ainda existir, mesmo na versão trunk, os fóruns do mythbox são onde você provavelmente irá consertá-lo (a menos que um desenvolvedor do mictbox responda aqui).

    
por 28.03.2012 / 10:30
0

Estou usando o XBMC 11.0 no Windows, com o MythBox 1.1.0. Eu só precisava modificar uma única linha em addons\script.mythbox\resources\src\mythbox\mythtv\protocol.py :

Linha 91 alterada de

return decodeLongLong(int(program.getField('fs_low')), int(program.getField('fs_high'))) / 1024.0

para

return self.decodeLongLong(int(program.getField('fs_low')), int(program.getField('fs_high'))) / 1024.0

como o decodeLongLong é reimplementado nesta classe de qualquer maneira.

    
por 05.12.2012 / 22:56