Autor Tópico: Firmware do LG DV397H  (Lida 302012 vezes)

0 Membros e 5 Visitantes estão vendo este tópico.

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #190 Online: Abril 05, 2009, 01:13:59 am »
Nossa! Parece o LG DV256K  :o

1- Tem o bug da primeira linha deslocada a esquerda.
2- A quebra de linha não respeita os espaços entre as palavras.
3- O lado bom é que não tem o bug das legendas cortadas devido ao espaço entre as linhas, que aqui não é fixo.
« Última modificação: Abril 05, 2009, 02:27:16 am por zeurt »

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #191 Online: Abril 05, 2009, 01:24:47 am »
Nossa! Parece o LG DV256K  :o

1- Tem o bug da primeira linha deslocada a esquerda.
2- A quebra de linha não respeita o espaço entre as palavras.
3- O lado bom é que não tem o bug das legendas cortadas devido ao espaço entre as linhas, que aqui não é fixo.

E também não suprime as tags de itálico.
No outro modelo, até agora não consegui achar a rotina do ARM responsável por ignorar as tags. Estranhamente nada na rotina que processa a legenda parece fazer isso. E eu preferia que não ignorasse também, pois daria para fazer coisas mais interessantes, como colocar aspas no lugar da tag.

Obrigado, pelas fotos allanzin. A próxima modificação vai demorar um pouco mais, pois resolvi adicionar mais coisas de uma vez, e tenho que tomar cuidado com os menus.
« Última modificação: Abril 05, 2009, 04:17:22 am por rictad »

FORUM.RYAN.COM.BR

Re: Firmware do LG DV397H
« Responder #191 Online: Abril 05, 2009, 01:24:47 am »

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #192 Online: Abril 05, 2009, 02:39:44 pm »
E também não suprime as tags de itálico.
No outro modelo, até agora não consegui achar a rotina do ARM responsável por ignorar as tags. Estranhamente nada na rotina que processa a legenda parece fazer isso. E eu preferia que não ignorasse também, pois daria para fazer coisas mais interessantes, como colocar aspas no lugar da tag.

Normalmente, há um filtro que elimina tudo o que está entre < >.
Rictad, aproveitando a deixa: até agora eu não cheguei a fazer nehum PEDIDO explícito a você, a respeito de novas implementações (apenas dei sugestões, tentei ajudar com alguma coisinha que pude, etc.). Se eu pudesse escolher apenas um pedido, seria esse que vou fazer agora:
Implementação de Suporte a <i> tags, possibilitando a exibição correta de legendas em itálico.
Essa implementação não existe em nehum DVD/DivX player no planeta (incluindo todos o firmwares alternativos existentes até o momento).
Vale a pena ver isso que o Ryan escreveu a respeito da importância das legendas em itálico.
Caso você conseguisse, as legendas externas baseadas em texto não ficariam devendo em praticamente nada importante quando comparadas as legendas baseadas em gráficos (XSUB, idx/.sub, etc.).
Já se discutiu esse tema algumas vezes aqui no forum e as conclusões foram:
1- Deve se colocar um filtro para <i> e para </i> nessa rotina do ARM, no meio do loop, perto dos locais onde se faz a verificação dos caracteres (carcteres válidos, etc.).
2- Ao se detectar <i> há duas opções:
a- Trocar de fonte (da fonte normal para fonte em itálico correspondente). Nesse caso deveria se criar 2 grupos de fontes (ex: 1, 2, e 3 normais e 4, 5 e 6 correspondentes em itálico).
b- A outra alternativa seria criar fontes que contenham os caracteres normais e em seguidas os correspondentes em itálico (nas mesmas fontes). Então, ao se detectar <i>, se somaria determinado valor fixo ao código do caractere, e isso faria a transformação.
3- Ao se detectar </i> ocorreria o inverso do descrito acima.
4- No início de cada novo parágrafo poderia haver uma verificação: se a fonte estivesse em itálico, deveria voltar para a normal correspondente (pois as vezes se esqueçe de colocar </i> no final do parágrafo).

Alguns problemas a vista:
-Tem que ver se tem espaço suficiente no ARM para essa implementação (áreas de erro). Se não tiver, deve-se usar o ARMResizer (é mais complicado quando o ARM tem mais que 2 ou 3 blocos, como é o caso de DVD players com USB: tem que pesquisar).
-Eu não sei muito bem como faria para o ARM trocar a fonte. Você já descobriu e descreveu como é feita a seleção da fonte pelo 8032. Espero que seja possível o ARM interferir nessa seleção (memória compartilhada?).

Eu estou fazendo esse pedido pois não consigo fazer isso sozinho. Cada nova coisa que aprendo é um pequeno capítulo no meu "Curso Auto-Didata de Assembly para ARM e 8032". Antes de me interessar por DivX players e conhecer o Forum do Ryan, o único conhecimento de programação que eu tinha era de Linguagem Basic, o qual adquiri na década de 80, e desde então estive afastado da Computação, e das Ciências Exatas em geral (minha profissão não tem nada a ver com isso).
Desde já, obrigado!  :)
« Última modificação: Abril 05, 2009, 02:44:35 pm por zeurt »

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #193 Online: Abril 05, 2009, 02:56:26 pm »

Normalmente, há um filtro que elimina tudo o que está entre < >.
Rictad, aproveitando a deixa: até agora eu não cheguei a fazer nehum PEDIDO explícito a você, a respeito de novas implementações (apenas dei sugestões, tentei ajudar com alguma coisinha que pude, etc.). Se eu pudesse escolher apenas um pedido, seria esse que vou fazer agora:
Implementação de Suporte a <i> tags, possibilitando a exibição correta de legendas em itálico.
Essa implementação não existe em nehum DVD/DivX player no planeta (incluindo todos o firmwares alternativos existentes até o momento).

Já tem 1 semana que me dedico a isso!  :laugh:.

O problema é que já passei e repassei por vários pontos do ARM que processam a legenda e não consigo ver o diabo do filtro das tags. Na rotina que processa os caracteres, as tags já chegam filtradas!! Eu, por exemplo, interceptei a rotina e troquei a exibição do caracter "a" pelo caracter "<" e o mesmo é mostrado normalmente. Assim, isso parece que não está na rotina que mostra a legenda. A legenda já é lida e jogada na memória cortando-se as tags. Então, agora, estou na busca da rotina que lê a legenda. E não consigo achar nada que filtre alguma coisa entre #3C "<" e #3E ">". Já cheguei a suspeitar que isso não seria feito pelo ARM... Se eu tivesse o player com o MT1389M já estaria progredindo nisso. No mínimo eu teria colocado uma opção para substituir as tags por aspas, o que já seria algo mais interessante do que suprimi-las. As outras opções, já li todas. A mais interessante que eu achei seria aumentar os caracteres da fonte, para incluir os itálicos. Depois, seria dar um offset quando encotrar as tags. Resta saber se o código ARM está preparado para processar a fonte com mais de 255 caracteres. Se o itálico vai ficar feio ou não, devido ao serrilhado, seria outro detalhe.
« Última modificação: Abril 05, 2009, 06:24:52 pm por rictad »

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #194 Online: Abril 05, 2009, 03:24:06 pm »
Se o itálico vai ficar feio ou não, devido ao serrilhado, seria outro detalhe.

Legal que você já esteja investigando tudo isso! Pode ficar feio e com serrilhado à vontade: com certeza será MUITO melhor do que sem nada!  ;D

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #195 Online: Abril 05, 2009, 06:06:07 pm »
allanzin,

Se você puder, confirme quantos codepages para legendas seu modelo possui. Segure a tecla subtitile por 3 segundos durante a exibição de um filme e anote os códigos cp's que aparecem. Depois, desligue e ligue o player e veja se ele sempre volta para algum padrão (cp1252 ou cp1250). E depois, digite o código da tela de serviço para zerar o player e veja em qual cp ficou. Estranhamente a rotina que muda a fonte parece ter somente 4 itens.
« Última modificação: Abril 05, 2009, 08:47:06 pm por rictad »

Offline allanzin

  • Novato
  • *
  • Mensagens: 33
  • Aprovação: +4/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #196 Online: Abril 05, 2009, 09:27:12 pm »
Fiz...

Os códigos são: CP1250, CP1251, CP1252, CP1253.

Ao desligar e ligar ele manteve o último que estava... que no caso era o 1253.
Quando eu reiniciei ele foi para o CP1252.

 ;D

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #197 Online: Abril 05, 2009, 09:31:57 pm »
Fiz...

Os códigos são: CP1250, CP1251, CP1252, CP1253.

Ao desligar e ligar ele manteve o último que estava... que no caso era o 1253.
Quando eu reiniciei ele foi para o CP1252.

 ;D

Obrigado!

Firmware Rictad versão 2 beta para o DV397H com chip MT1389M. Por favor, testem todas as mudanças:

* Incluídos 6 tipos de fontes para legendas DivX, usando o método do zeurt. Todas são cp1252. Para alterar a fonte, pressione a tecla subtitle por 3 segundos durante a exibição de um filme DivX. Aparentemente, a opção é gravada mesmo após desligar o aparelho.
* Legendas DivX são exibidas durante o zoom.
* Ícone de zoom desaparece em 3 segundos, em vez de 15 segundos.
* Nomes de arquivos no filebrowser, bem como informações das tags ID3, exibidos com acentuação e caracteres especiais.


Nota 1: As 6 opções de fonte precisam ser testadas. Esse modelo só alterna entre 4 codepages. Então eu forcei mais 2 itens, já que possui a mesma quantidade de fontes do outro aparelho e uma rotina de seleção de fontes idêntica.
Nota 2: A versão para o chip MT1389M segue numeração diferente da versão para o chip MT1389S.
Nota 3: String da versão alterada para V3.33-Rictad-2.0, a qual será modificada a cada versão.

Atenção: usuários do DV397H com chip MT1389S não devem atualizar com essa versão!

EDIT: Arquivo alterado para tentar resolver o problema de tela em preto e branco relatada pelo allanzin.
EDIT2: Alterado novamente.
« Última modificação: Abril 06, 2009, 10:02:50 pm por rictad »

Offline allanzin

  • Novato
  • *
  • Mensagens: 33
  • Aprovação: +4/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #198 Online: Abril 06, 2009, 12:07:22 am »
TUDO TESTADO!

As legendas estão perfeitas, entraram as 6, o zoom mantendo a legenda também, os caracteres no filebrowser também estão acentuados, porém, a letra u, acentuada, não aparece...

Só uma coisa ficou fora do comum, ao ligar o player a imagem fica preta e branca, e só volta a ficar colorida depois que eu entro e saio do setup... :blink:

Mais uma vez grato !!

Se precisar de ajuda é só postar !!


Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: Firmware do LG DV397H
« Responder #199 Online: Abril 06, 2009, 12:15:20 am »
TUDO TESTADO!

As legendas estão perfeitas, entraram as 6, o zoom mantendo a legenda também, os caracteres no filebrowser também estão acentuados, porém, a letra u, acentuada, não aparece...

Só uma coisa ficou fora do comum, ao ligar o player a imagem fica preta e branca, e só volta a ficar colorida depois que eu entro e saio do setup... :blink:

Mais uma vez grato !!

Se precisar de ajuda é só postar !!

Acho que já tinha visto alguma coisa dessa letra "u" aí! ;D . Mas o estranho mesmo é esse preto e branco. Eu não mexi no sistema PAL/NTSC e, pelo que você falou, deve ser isso. Vou verificar.

FORUM.RYAN.COM.BR

Re: Firmware do LG DV397H
« Responder #199 Online: Abril 06, 2009, 12:15:20 am »